旭捷内部项目管理系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

268 lines
8.8 KiB

10 months ago
  1. var userId = $("#current_id").val();
  2. var userName = $("#current_username").val();
  3. var site = $("#current_site").val();
  4. var toolDetailList = new Array();
  5. var locationDate;
  6. //页面初始化
  7. $(function () {
  8. // 初始化录入时间
  9. InitStorageTime();
  10. // 获取领用人信息
  11. getOperatorList();
  12. // 初始化光标
  13. $("#tool_detail").focus();
  14. });
  15. // 获取领用人信息
  16. function getOperatorList() {
  17. let query = {
  18. active: 'Y',
  19. site: $('#current_site').val()
  20. }
  21. $.ajax({
  22. url: "/productionReport/getProductionLineOperatorRegistration",
  23. contentType: 'application/json',
  24. type: "POST",
  25. data: JSON.stringify(query),
  26. dataType: "JSON",
  27. beforeSend: function (request) {
  28. request.setRequestHeader("token", $.cookie("token"));
  29. },
  30. success: function (data) {
  31. var rows = data.rows;
  32. $("#operatorList").html('');
  33. var str = '<option value= "" style="height:24px;font-size :12px;">' + "请选择领用人" + '</option>';
  34. for (var i = 0; i < rows.length; i++) {
  35. str += '<option value="' + rows[i].operatorID + '" style="height:24px;font-size :12px;">' + rows[i].operatorName + '</option>';
  36. }
  37. $("#operatorList").html(str);
  38. },
  39. error: function (data) {
  40. var responseText = data.responseText;
  41. var json_str = JSON.parse(responseText);
  42. var status = json_str.status;
  43. var message = json_str.message;
  44. //判断是否是session超时
  45. if (403 == status) {
  46. layer.alert(message, function () {
  47. window.location.href = "/login";
  48. });
  49. }
  50. layer.closeAll('loading');
  51. }
  52. })
  53. }
  54. // 初始化入库日期
  55. function InitStorageTime() {
  56. var data = getNowFormatDate();
  57. data = data.substring(0, 10);
  58. $("#storage_time").val(data);
  59. }
  60. //为工具实例条码绑定一个失去焦点事件
  61. $("#tool_detail").bind("keydown", function (event) {
  62. if (event.keyCode == 13) {
  63. var toolInstanceId = $(this).val();
  64. if (toolInstanceId == null || toolInstanceId == "") {
  65. layer.msg("请输入正确的实例编码!");
  66. $(this).val("");
  67. $(this).focus();
  68. } else {
  69. getToolInstanceData(toolInstanceId);
  70. }
  71. }
  72. });
  73. //为工具实例条码绑定一个失去焦点事件
  74. $("#locationId").bind("keydown", function (event) {
  75. if (event.keyCode == 13) {
  76. var locationId = $(this).val();
  77. if (locationId == null || locationId == "") {
  78. layer.msg("请输入正确的库位编码!");
  79. $(this).val("");
  80. $(this).focus();
  81. } else {
  82. getLocation(locationId);
  83. }
  84. }
  85. });
  86. // 获取获取工具实例编码
  87. function getToolInstanceData(toolInstanceId) {
  88. $("#tool_detail").val("");
  89. var jsonData = {
  90. site: site,
  91. toolInstanceId: toolInstanceId,
  92. }
  93. $.ajax({
  94. url: "/toolPda/getToolDetail",
  95. contentType: 'application/json',
  96. type: "POST",
  97. data: JSON.stringify(jsonData),//你的formid
  98. dataType: "JSON",
  99. async: false,
  100. beforeSend: function (request) {
  101. request.setRequestHeader("token", $.cookie("token"));
  102. },
  103. success: function (data) {
  104. var row = data.row;
  105. if (row != null || row == "") {
  106. if (row.status != "已投用" ) {
  107. layer.msg("该工具不可用!");
  108. return false;
  109. }
  110. if ( row.statusRef != "" && row.statusRef != null){
  111. layer.msg("该工具不可领用!");
  112. return false;
  113. }
  114. for (let i = 0; i < toolDetailList.length; i++) {
  115. if (toolDetailList[i].toolInstanceId == row.toolInstanceId) {
  116. layer.msg("已有该工具记录!");
  117. $("#tool_detail").focus();
  118. return;
  119. }
  120. }
  121. toolDetailList.push(row);
  122. var str = '<tr id = ' + row.toolInstanceId + '>' +
  123. '<th class="" style="text-align:center;background-color: #ffff;">' +
  124. '<span>' + row.toolInstanceId + '</span></th>' +
  125. '<th class="" style="text-align:center;background-color: #ffff;">' +
  126. '<span>' + row.toolDescription + '</span></th>' +
  127. '<th class="" style="text-align:center;background-color: #ffff;">' +
  128. '<span>' + row.locationId + '</span></th>' +
  129. '<th class="" style="text-align:center;background-color: #ffff;">' +
  130. '<button data-toggle="modal" onclick="remove(\'' + row.toolInstanceId + '\')" style="padding: 3px 10px;">' +
  131. '删除</button>' +
  132. '</tr>';
  133. $("#dateil_table").append(str);
  134. $("#tool_detail").focus();
  135. } else {
  136. layer.msg("没有该工具记录!");
  137. }
  138. },
  139. error: function (data) {
  140. var responseText = data.responseText;
  141. var json_str = JSON.parse(responseText);
  142. var status = json_str.status;
  143. var message = json_str.message;
  144. //判断是否是session超时
  145. if (403 == status) {
  146. layer.alert(message, function () {
  147. window.location.href = "/login";
  148. });
  149. }
  150. layer.closeAll('loading');
  151. }
  152. })
  153. }
  154. //删除
  155. function remove(toolInstanceId) {
  156. for (var i = 0; i < toolDetailList.length; i++) {
  157. if (toolDetailList[i].toolInstanceId == toolInstanceId) {
  158. toolDatailRemo(toolDetailList[i].toolInstanceId);
  159. toolDetailList.splice(i, 1);
  160. layer.msg("移除成功!");
  161. $("#tool_detail").val("");
  162. $("#tool_detail").focus();
  163. return false;
  164. }
  165. }
  166. layer.msg("没有该工具记录!");
  167. $("#tool_detail").val("");
  168. }
  169. // 移除工具实例编码
  170. function toolDatailRemo(toolInstanceId) {
  171. $table = $("#dateil_table tr");
  172. $("tr[id='" + toolInstanceId + "']").remove();
  173. }
  174. //新增库位信息
  175. function updateToolDetail() {
  176. $("#saveDetail").attr('disabled', true);
  177. let remark = $('#remark').val()
  178. let orderRef2 = $("#orderRef2").val()
  179. if (toolDetailList.length == 0) {
  180. layer.msg("请输入实例编码!");
  181. $("#saveDetail").attr('disabled', false);
  182. return;
  183. }
  184. if (orderRef2.length == 0) {
  185. layer.msg("请选择领用人!");
  186. $("#saveDetail").attr('disabled', false);
  187. return;
  188. }
  189. var alreadyList = new Array;
  190. for (var i = 0; i < toolDetailList.length; i++) {
  191. var jsonData = {
  192. toolId: toolDetailList[i].toolId,
  193. site: toolDetailList[i].site,
  194. toolInstanceId: toolDetailList[i].toolInstanceId,
  195. locationId: toolDetailList[i].locationId.toUpperCase(),
  196. transNoHead: 'TL',
  197. transType: '工具领用',
  198. transTypeDb: 'JL',
  199. direction: "-",
  200. userName: userName,
  201. statusRef: "领用出库",
  202. remark: remark,
  203. orderRef2: orderRef2
  204. };
  205. alreadyList.push(jsonData);
  206. }
  207. $.ajax({
  208. url: "/toolPda/updateToolDetail",
  209. contentType: 'application/json',
  210. type: "POST",
  211. data: JSON.stringify(alreadyList),
  212. dataType: "JSON",
  213. beforeSend: function (request) {
  214. request.setRequestHeader("token", $.cookie("token"));
  215. },
  216. success: function (data) {
  217. if (data.code == 0) {
  218. layer.msg(data.msg);
  219. toolDetailList = new Array;
  220. $("#dateil_table").html("");
  221. $("#tool_detail").val("");
  222. $('#remark').val('')
  223. $("#orderRef2").val('')
  224. //触发隐藏
  225. $("#location_modal").modal("hide");
  226. } else if (data.code == 401) {
  227. window.location.href = "/login";
  228. } else {
  229. layer.msg(data.msg);
  230. }
  231. },
  232. error: function (data) {
  233. var responseText = data.responseText;
  234. var json_str = JSON.parse(responseText);
  235. var status = json_str.status;
  236. var message = json_str.message;
  237. //判断是否是session超时
  238. if (403 == status) {
  239. layer.alert(message, function () {
  240. window.location.href = "/login";
  241. });
  242. }
  243. layer.closeAll('loading');
  244. }
  245. })
  246. }
  247. //清除前台缓存
  248. function cleanData() {
  249. toolDatail = new Array;
  250. warehouseData = new Array;
  251. $("#dateil_table").html("");
  252. }