repairManual.js 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. var majorId = 0
  2. var shop_id = -1
  3. $(function() {
  4. var defaultPage = 0;
  5. var defaultSize = 10;
  6. var currentPage = defaultPage;
  7. var currentSize = defaultSize;
  8. var tableFirstLoad = true;
  9. let type = ""
  10. layui.use(["form", "table", "laypage", "layer", "upload"], function() {
  11. var table = layui.table;
  12. var laypage = layui.laypage;
  13. var layer = layui.layer;
  14. var form = layui.form;
  15. var title = $("#realName");
  16. var searchTitleKey = "";
  17. function getMajorName() {
  18. fetchJSON("api/aircraft/listAll", {}, "get", function(bet) {
  19. console.log(bet.data, "121111111")
  20. if (bet.status === 0) {
  21. $("#major").empty();
  22. $("#major").append($("<option>", {
  23. value: -1,
  24. text: "请选择机型"
  25. }));
  26. for (var i = 0; i < bet.data.length; i++) {
  27. if (bet.data[i].id === majorId) {
  28. $("#major").append(
  29. $("<option>", {
  30. // value: bet.data[i].id,
  31. text: bet.data[i].aircraft_type,
  32. selected: true
  33. })
  34. );
  35. } else {
  36. $("#major").append(
  37. $("<option>", {
  38. // value: bet.data[i].id,
  39. text: bet.data[i].aircraft_type
  40. })
  41. );
  42. }
  43. }
  44. form.render('select');
  45. } else {
  46. showMsg(bet.msg, 2);
  47. }
  48. });
  49. };
  50. getMajorName()
  51. function loadAirList(page, size, searchTitle) {
  52. if (page === null || page === undefined) page = defaultPage;
  53. if (size === null || size === undefined) size = defaultSize;
  54. var tableOption = {
  55. elem: "#airList",
  56. height: "full-81",
  57. limit: size,
  58. cols: [
  59. [{
  60. type: "checkbox"
  61. },
  62. {
  63. field: "manual_name",
  64. title: "故障名称",
  65. align: "center"
  66. },
  67. {
  68. field: "fault_part",
  69. title: "故障机件名称",
  70. align: "center"
  71. },
  72. {
  73. field: "aircraft",
  74. title: "机型",
  75. align: "center"
  76. },
  77. {
  78. field: "major",
  79. title: "专业",
  80. align: "center"
  81. },
  82. {
  83. field: "manual_system",
  84. title: "系统",
  85. align: "center"
  86. },
  87. {
  88. field: "subsystem",
  89. title: "分系统",
  90. align: "center"
  91. },
  92. {
  93. field: "fault_reason",
  94. title: "故障原因",
  95. align: "center"
  96. },
  97. {
  98. field: "fault_describe",
  99. title: "故障描述",
  100. align: "center"
  101. },
  102. {
  103. field: "repair_plan",
  104. title: "处置方式",
  105. align: "center"
  106. },
  107. {
  108. field: "manual_number",
  109. title: "故障案例编号",
  110. align: "center"
  111. },
  112. // {
  113. // field: "file_path",
  114. // title: "描述文件路径",
  115. // align: "center"
  116. // },
  117. {
  118. fixed: "right",
  119. title: "操作",
  120. width: 180,
  121. toolbar: "#operationToolbar",
  122. align: "center"
  123. }
  124. ]
  125. ]
  126. };
  127. if (searchTitle === null || searchTitle === undefined || searchTitle === "") {
  128. if (shop_id == -1) {
  129. var url = "api/repairManual/listpage?page=" + (page + 1) + "&size=" + size;
  130. } else {
  131. var url = "api/repairManual/listpageByAircraft?aircraftName=" + shop_id +
  132. "&size=" + size + "&page=" + (page + 1)
  133. }
  134. fetchJSON(url, {}, "get", function(data) {
  135. if (data.status === 0) {
  136. if (tableFirstLoad) {
  137. tableFirstLoad = false;
  138. laypage.render({
  139. curr: page + 1,
  140. elem: "pagination",
  141. count: data.data.total,
  142. layout: ["count", "prev", "page", "next", "limit",
  143. "refresh", "skip"
  144. ],
  145. jump: function(obj, first) {
  146. if (first) return;
  147. currentPage = obj.curr - 1;
  148. currentSize = obj.limit;
  149. loadAirList(currentPage, currentSize,
  150. searchTitleKey);
  151. }
  152. });
  153. }
  154. tableOption.data = data.data.list;
  155. table.render(tableOption);
  156. } else {
  157. showMsg(data.msg, 2, 2000);
  158. }
  159. });
  160. } else {
  161. fetchJSON("api/repairManual/getByName?name=" + searchTitle, {}, "get", function(data) {
  162. if (data.status === 0) {
  163. if (tableFirstLoad) {
  164. tableFirstLoad = false;
  165. laypage.render({
  166. curr: page + 1,
  167. elem: "pagination",
  168. count: data.data.length,
  169. layout: ["count", "prev", "page", "next", "limit",
  170. "refresh", "skip"
  171. ],
  172. jump: function(obj, first) {
  173. if (first) return;
  174. currentPage = obj.curr - 1;
  175. currentSize = obj.limit;
  176. loadAirList(currentPage, currentSize,
  177. searchTitleKey);
  178. }
  179. });
  180. }
  181. tableOption.data = data.data;
  182. table.render(tableOption);
  183. } else {
  184. showMsg(data.msg, 2, 2000);
  185. }
  186. });
  187. }
  188. }
  189. loadAirList();
  190. $("#searchArticle").on("click", function(e) {
  191. e.preventDefault();
  192. tableFirstLoad = true;
  193. searchTitleKey = title.val().trim();
  194. if (searchTitleKey === "")
  195. loadAirList(0, currentSize);
  196. else
  197. loadAirList(0, currentSize, searchTitleKey);
  198. });
  199. $("#keyword").on("keyup", function(e) {
  200. e.preventDefault();
  201. if (e.keyCode === 13) {
  202. $("#searchArticle").click();
  203. }
  204. });
  205. // 监听表内工具条
  206. table.on("tool(airList)", function(obj) {
  207. var data = obj.data;
  208. if(obj.event === "edit"){
  209. var dataflie = data.file_path;
  210. fetchJSON("api/article/browse", {filepath:dataflie}, "get", function(d) {
  211. if(d.status === 0){
  212. sessionStorage.setItem("url",d.msg)
  213. x_admin_show(
  214. "在线查看",
  215. encodeURI(
  216. "../admin/repair.html"
  217. ),
  218. 1300,
  219. 600,
  220. function() {
  221. loadAirList(currentPage, currentSize);
  222. }
  223. );
  224. }
  225. });
  226. }else
  227. if(obj.event === "delete") {
  228. // 删除
  229. var ids = [];
  230. ids.push(data.id);
  231. layer.confirm("确认要删除吗?", function() {
  232. fetchJSON("api/repairManual/delete", {
  233. ids: ids
  234. }, "post", function(data) {
  235. if (data.status === 0) {
  236. showMsg("已删除!", 1, 2000);
  237. tableFirstLoad = true;
  238. loadAirList(currentPage, currentSize);
  239. } else {
  240. showMsg(data.msg, 2, 2000);
  241. }
  242. });
  243. });
  244. }else
  245. if(obj.event === 'download'){
  246. var file_path = data.file_path
  247. var newurl = file_path.substr(1,file_path.length);
  248. file_path = newurl.substr(newurl.indexOf('\\')+1,file_path.length);
  249. newurl = file_path.substr(0,file_path.indexOf('.'))
  250. newurl = urlBase + "source\\" + newurl + ".docx"
  251. console.log(newurl)
  252. window.open(new_data_path)
  253. }else
  254. if(obj.event === 'particulars'){
  255. var fault_describe =data.fault_describe;
  256. var fault_reason = data.fault_reason;
  257. var img_path = data.img_path;
  258. var repair_plan = data.repair_plan;
  259. sessionStorage.setItem("describe",fault_describe)
  260. sessionStorage.setItem("reason",fault_reason)
  261. sessionStorage.setItem("path",img_path)
  262. sessionStorage.setItem("plan",repair_plan)
  263. x_admin_show(
  264. "在线查看",
  265. encodeURI(
  266. "../admin/fault_flow_chart.html"
  267. ),
  268. 1300,
  269. 600,
  270. function() {
  271. loadAirList(currentPage, currentSize);
  272. }
  273. );
  274. }
  275. });
  276. // 批量删除
  277. $("#batchDelete").on("click", function(e) {
  278. e.preventDefault();
  279. var checkedData = table.checkStatus("airList").data;
  280. if (checkedData.length === 0) {
  281. showMsg("未选择需要删除的日志", 2, 2000);
  282. return;
  283. }
  284. layer.confirm("确认要删除吗?", function() {
  285. var ids = [];
  286. for (var i = 0; i < checkedData.length; i++) {
  287. ids.push(checkedData[i].id);
  288. }
  289. fetchJSON("api/repairManual/delete", {
  290. ids: ids
  291. }, "post", function(data) {
  292. if (data.status === 0) {
  293. showMsg("已删除!");
  294. tableFirstLoad = true;
  295. loadAirList(currentPage, currentSize);
  296. } else {
  297. showMsg(data.msg, 2, 2000);
  298. }
  299. });
  300. });
  301. });
  302. // 新建用户
  303. $("#addair").on("click", function(e) {
  304. e.preventDefault();
  305. tableFirstLoad = true;
  306. x_admin_show("手动录入",
  307. "../admin/repairManual-add.html?id=0&manual_name=&fault_part=&aircraft=&manual_system=&subsystem=&manual_number=&fault_describe=&repair_plan=&file_path=&major=&fault_reason=",
  308. 790, 450,
  309. function() {
  310. loadAirList(currentPage, currentSize);
  311. });
  312. });
  313. //下拉框
  314. $('#sure').on("click", function() {
  315. shop_id = $("#major").find("option:selected").val();
  316. // console.log(shop_id)
  317. tableFirstLoad = true;
  318. loadAirList(currentPage, currentSize);
  319. })
  320. });
  321. });