纽威
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.

940 lines
43 KiB

3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
  1. @{
  2. ViewBag.Title = "Index";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. <script src="~/Content/js/datepicker/WdatePicker.js"></script>
  6. <script>
  7. debugger;
  8. var _Clos = new Array();
  9. var _Clos1 = new Array();
  10. var flag = '1';
  11. var mark = '';
  12. var Arguments = '';
  13. $(function () {
  14. SetCols();
  15. gridList();
  16. gridList2(flag);
  17. $("#selShow").change(function () {
  18. debugger;
  19. SetCols();
  20. gridList();
  21. });
  22. });
  23. //function gridList() {
  24. // document.getElementById("gridPanel").innerHTML = ' <span><strong>详细信息</strong></span> <table id="gridList"></table> ';//重置grid
  25. // var Type = $("#selShow").val();
  26. // var $gridList = $("#gridList");
  27. // var queryJson = {
  28. // POCode: $("#txt_POCode").val(),
  29. // InvCode: $("#txt_InvCode").val(),
  30. // }
  31. // $gridList.dataGrid({
  32. // url: "/WMS/PickMaterial/GetGridJson?Type=" + Type + "&" + Math.random(),
  33. // postData: { queryJson: JSON.stringify(queryJson) },
  34. // height: 280,
  35. // width: $(window).width() - 500,
  36. // colModel: [
  37. // { label: "主键", name: "ID", hidden: true, key: true },
  38. // { label: '单据号', name: 'Code', width: 120, align: 'left' },
  39. // { label: '单据行号', name: 'Sequence', width: 100, align: 'left' },
  40. // { label: '操作日期', name: 'MTIME', width: 150, align: 'left' },
  41. // { label: '料品编码', name: 'InvCode', width: 100, align: 'left' },
  42. // { label: '物料描述', name: 'InvName', width: 100, align: 'left' },
  43. // { label: '辅助描述', name: 'InvDesc', width: 100, align: 'left' },
  44. // { label: '规格型号', name: 'InvStd', width: 100, align: 'left' },
  45. // { label: '数量', name: 'Quantity', width: 100, align: 'left' },
  46. // { label: '单位', name: 'InvUnit', width: 100, align: 'left' },
  47. // { label: '维护人', name: 'MUSER', width: 80, align: 'left' },
  48. // { label: '维护人名称', name: 'MUSERName', width: 80, align: 'left' },
  49. // { label: '仓库编码', name: 'WHCode', width: 80, align: 'left' },
  50. // { label: '仓库名称', name: 'WarehouseName', width: 80, align: 'left' },
  51. // //{ label: '是否合并拣料', name: 'IsNew', width: 80, align: 'left' },
  52. // ],
  53. // shrinkToFit: false,//宽度自适应
  54. // autowidth: true,
  55. // gridComplete: function () {
  56. // },
  57. // rowNum: 10000,
  58. // autoScroll: true,
  59. // sortname: 'Code',
  60. // sortorder: "desc",
  61. // viewrecords: true,
  62. // multiselect: true,
  63. // });
  64. // $("#warehouse a.btn-default").click(function () {
  65. // $("#warehouse a.btn-default").removeClass("active");
  66. // $(this).addClass("active");
  67. // $('#btn_search').trigger("click");
  68. // });
  69. // $("#btn_search").click(function () {
  70. // var warehouse = $("#warehouse a.active").attr('data-value');
  71. // var queryJson = {
  72. // POCode: $("#txt_POCode").val(),
  73. // InvCode: $("#txt_InvCode").val(),
  74. // }
  75. // $gridList.jqGrid('setGridParam', {
  76. // postData: { queryJson: JSON.stringify(queryJson) },
  77. // }).trigger('reloadGrid');
  78. // });
  79. //}
  80. function SetCols() {
  81. var Type = $("#selShow").val();
  82. var ct = document.getElementById("type7");
  83. var ct1 = document.getElementById("type8");
  84. var ct2 = document.getElementById("type9");
  85. var ct3 = document.getElementById("type10");
  86. var ct4 = document.getElementById("status1")
  87. var ct5 = document.getElementById("status2")
  88. var ct6 = document.getElementById("order1")
  89. var ct7 = document.getElementById("order2")
  90. var ct8 = document.getElementById("date1");
  91. var ct9 = document.getElementById("date2");
  92. var ct10 = document.getElementById("date3");
  93. var ct11 = document.getElementById("date4");
  94. var cols = new Array();
  95. var collast = { label: "主键", name: "ID", hidden: true, key: true };
  96. cols.push(collast);
  97. var collast = { label: '单据号', name: 'Code', width: 120, align: 'left' };
  98. cols.push(collast);
  99. var collast = { label: '操作日期', name: 'MTIME', width: 150, align: 'left' };
  100. cols.push(collast);
  101. var collast = { label: '维护人', name: 'MUSER', width: 80, align: 'left' };
  102. cols.push(collast);
  103. var collast = { label: '维护人名称', name: 'MUSERName', width: 80, align: 'left' };
  104. cols.push(collast);
  105. var collast = { label: '是否合并拣料', name: 'IsNew', width: 80, align: 'left' };
  106. cols.push(collast);
  107. var cols1 = new Array();
  108. var collast1 = { label: "主键", name: "ID", hidden: true, key: true };
  109. cols1.push(collast1);
  110. var collast1 = { label: '领料合并ID', name: 'MergeID', width: 120, align: 'left' };
  111. cols1.push(collast1);
  112. var collast1 = { label: '单据号', name: 'Code', width: 120, align: 'left' };
  113. cols1.push(collast1);
  114. var collast1 = { label: '料品编码', name: 'InvCode', width: 150, align: 'left' };
  115. cols1.push(collast1);
  116. var collast1 = { label: '物料描述', name: 'InvName', width: 150, align: 'left' };
  117. cols1.push(collast1);
  118. var collast1 = { label: '规格型号', name: 'InvStd', width: 100, align: 'left' };
  119. cols1.push(collast1);
  120. var collast1 = { label: '应发数量', name: 'iQuantity', width: 100, align: 'left' };
  121. cols1.push(collast1);
  122. var collast1 = { label: '单位', name: 'InvUnit', width: 150, align: 'left' };
  123. cols1.push(collast1);
  124. var collast1 = { label: '仓库编码', name: 'WarehouseCode', width: 100, align: 'left' };
  125. cols1.push(collast1);
  126. var collast1 = { label: '库位编码', name: 'LocationCode', width: 100, align: 'left' };
  127. cols1.push(collast1);
  128. var collast1 = { label: '条码库存', name: 'QTY', width: 100, align: 'left' };
  129. cols1.push(collast1);
  130. var collast1 = { label: '条码', name: 'LotNO', width: 100, align: 'left' };
  131. cols1.push(collast1);
  132. if (Type != 7) {
  133. var collast = { label: '销售凭证', name: 'ProjectCode', width: 100, align: 'left' };
  134. cols.push(collast);
  135. var collast = { label: '销售凭证项号', name: 'Brand', width: 100, align: 'left' };
  136. cols.push(collast);
  137. ct.style.display = "none";
  138. ct1.style.display = "none";
  139. ct2.style.display = "none";
  140. ct3.style.display = "none";
  141. }
  142. else
  143. {
  144. var collast = { label: '客户编码', name: 'CusCode', width: 150, align: 'left' };
  145. cols.push(collast);
  146. var collast = { label: '客户名称', name: 'CusName', width: 150, align: 'left' };
  147. cols.push(collast);
  148. ct.style.display = "";
  149. ct1.style.display = "";
  150. ct2.style.display = "";
  151. ct3.style.display = "";
  152. }
  153. if (Type == 2||Type==12) {
  154. var collast = { label: '状态', name: 'Status', width: 150, align: 'left' };
  155. cols.push(collast);
  156. var collast = { label: '物料号(父项生产订单物料)', name: 'OrderInvCode', width: 150, align: 'left' };
  157. cols.push(collast);
  158. var collast = { label: '物料描述(父项生产订单主物料)', name: 'OrderInvDescribe', width: 150, align: 'left' };
  159. cols.push(collast);
  160. var collast = { label: '调度工号', name: 'DispatchNumber', width: 120, align: 'left', };
  161. cols.push(collast);
  162. var collast = { label: '调度姓名', name: 'DispatcherName', width: 120, align: 'left' };
  163. cols.push(collast);
  164. var collast = { label: '收料人工号', name: 'ReceiverNumber', width: 150, align: 'left' };
  165. cols.push(collast);
  166. var collast = { label: '收料人姓名', name: 'ReceiverName', width: 150, align: 'left' };
  167. cols.push(collast);
  168. var collast = { label: '紧急程度', name: 'Urgency', width: 120, align: 'left', };
  169. cols.push(collast);
  170. var collast = { label: '需求日期', name: 'NeedDate', width: 120, align: 'left' };
  171. cols.push(collast);
  172. var collast = { label: '需求时间', name: 'NeedTime', width: 120, align: 'left', };
  173. cols.push(collast);
  174. var collast = { label: '工位', name: 'Desks', width: 100, align: 'left' };
  175. cols.push(collast);
  176. var collast = { label: '拣料人姓名', name: 'PickName', width: 100, align: 'left' };
  177. cols.push(collast);
  178. ct4.style.display = "";
  179. ct5.style.display = "";
  180. ct6.style.display = "";
  181. ct7.style.display = "";
  182. ct8.style.display = "";
  183. ct9.style.display = "";
  184. ct10.style.display = "";
  185. ct11.style.display = "";
  186. }
  187. else
  188. {
  189. ct4.style.display = "none";
  190. ct5.style.display = "none";
  191. ct6.style.display = "none";
  192. ct7.style.display = "none";
  193. ct8.style.display = "none";
  194. ct9.style.display = "none";
  195. ct10.style.display = "none";
  196. ct11.style.display = "none";
  197. }
  198. $.ajax({
  199. url: "/Print/SelectColumnName?" + Math.random(),
  200. dataType: "json",
  201. async: false,
  202. success: function (data) {
  203. if (data != null && data.length > 0) {
  204. DateList = data;
  205. for (var i = 0; i < data.length; i++) {
  206. var ColName = data[i].ColName;
  207. var ColCode = data[i].ColCode;
  208. var obj = new Array();
  209. obj = {
  210. label: ColName,
  211. name: ColCode,
  212. width: 80,
  213. align: "left"
  214. }
  215. if (ColCode != "BatchCode" && ColCode != "Brand" && ColCode != "ProjectCode")
  216. {
  217. cols.push(obj);
  218. cols1.push(obj);
  219. }
  220. }
  221. }
  222. _Clos = cols;
  223. _Clos1 = cols1;
  224. }
  225. });
  226. }
  227. function gridList() {
  228. document.getElementById("gridPanel").innerHTML = ' <span><strong>详细信息</strong></span> <table id="gridList"></table> ';//重置grid
  229. var Type = $("#selShow").val();
  230. var $gridList = $("#gridList");
  231. var queryJson = {
  232. POCode: $("#txt_POCode").val(),
  233. InvCode: $("#txt_InvCode").val(),
  234. Area: $("#txt_Area").val(),
  235. WHCode: $("#txt_WHCode").val(),
  236. CusCode: $("#txt_CusCode").val(),
  237. CusName: $("#txt_CusName").val(),
  238. Status: $("#selShow2").val(),
  239. Order: $("#txt_Order").val(),
  240. Container: $('input[name="container"]:checked').val(),
  241. CreateDate: $("#txt_CreateDate").val(),
  242. NeedDate: $("#txt_NeedDate").val()
  243. }
  244. $gridList.dataGrid({
  245. url: "/WMS/PickMaterial/GetGridJson?Type=" + Type + "&" + Math.random(),
  246. postData: { queryJson: JSON.stringify(queryJson) },
  247. height: 280,
  248. width: $(window).width() - 500,
  249. colModel: _Clos,
  250. //colModel: [
  251. // { label: "主键", name: "ID", hidden: true, key: true },
  252. // { label: '单据号', name: 'Code', width: 120, align: 'left' },
  253. // { label: '操作日期', name: 'MTIME', width: 150, align: 'left' },
  254. // { label: '维护人', name: 'MUSER', width: 80, align: 'left' },
  255. // { label: '维护人名称', name: 'MUSERName', width: 80, align: 'left' },
  256. // { label: '是否合并拣料', name: 'IsNew', width: 80, align: 'left' },
  257. //],
  258. shrinkToFit: false,//宽度自适应
  259. autowidth: true,
  260. gridComplete: function () {
  261. },
  262. rowNum: 10000,
  263. autoScroll: true,
  264. sortname: 'Code',
  265. sortorder: "desc",
  266. viewrecords: true,
  267. multiselect: true,
  268. subGrid: true, // (1)开启子表格支持
  269. subGridRowExpanded: function (subgrid_id, rowid) { // (2)子表格容器的id和需要展开子表格的行id,将传入此事件函数
  270. $("#gridList").jqGrid("setSelection", rowid, false);
  271. bindSubGrid(subgrid_id, rowid)
  272. }
  273. });
  274. function bindSubGrid(subgrid_id, rowid) {
  275. var Type = $("#selShow").val();
  276. $("#gridList").jqGrid("setSelection", rowid, false);
  277. var subgrid_table_id;
  278. subgrid_table_id = subgrid_id + "_t"; // (3)根据subgrid_id定义对应的子表格的table的id
  279. var queryJson = {
  280. POCode: $("#txt_POCode").val(),
  281. InvCode: $("#txt_InvCode").val(),
  282. Area: $("#txt_Area").val(),
  283. WHCode: $("#txt_WHCode").val(),
  284. CusCode: $("#txt_CusCode").val(),
  285. CusName: $("#txt_CusName").val(),
  286. Order: $("#txt_Order").val(),
  287. Container: $("#txt_Container :checked").val(),
  288. CreateDate: $("#txt_CreateDate").val(),
  289. NeedDate: $("#txt_NeedDate").val()
  290. }
  291. var subgrid_pager_id;
  292. subgrid_pager_id = subgrid_id + "_pgr" // (4)根据subgrid_id定义对应的子表格的pager的id
  293. // (5)动态添加子报表的table和pager
  294. $("#" + subgrid_id).html("<table id='" + subgrid_table_id + "' class='scroll'></table><div id='" + subgrid_pager_id + "' class='scroll'></div>");
  295. var Code = $("#gridList").jqGrid('getRowData', rowid).Code;
  296. //var Sequence = $("#gridList").jqGrid('getRowData', rowid).Sequence;
  297. // (6)创建jqGrid对象
  298. var cols = [{ label: '单据号', name: 'Code', width: 120, align: 'left' },
  299. { label: '单据行号', name: 'Sequence', width: 120, align: 'left' },
  300. { label: '操作日期', name: 'MTIME', width: 120, align: 'left' },
  301. { label: '料品编码', name: 'InvCode', width: 120, align: 'left' },
  302. { label: '物料描述', name: 'InvDescribe', width: 120, align: 'left' },
  303. { label: '辅助描述', name: 'InvDesc', width: 120, align: 'left' },
  304. { label: '规格型号', name: 'InvStd', width: 120, align: 'left' },
  305. { label: '批次', name: 'BatchCode', width: 100, align: 'left' },
  306. { label: '区域', name: 'Area', width: 100, align: 'left' },
  307. { label: '仓库', name: 'WHCode', width: 100, align: 'left' },
  308. { label: '数量', name: 'Quantity', width: 100, align: 'left' },
  309. { label: '已发数量', name: 'IssueQuantity', width: 120, align: 'left' },
  310. { label: '单位', name: 'InvUnit', width: 100, align: 'left' },
  311. { label: '维护人', name: 'MUSER', width: 120, align: 'left' },
  312. { label: '维护人名称', name: 'MUSERName', width: 150, align: 'left' },
  313. { label: '仓库编码', name: 'WHCode', width: 120, align: 'left' },
  314. { label: '仓库名称', name: 'WarehouseName', width: 120, align: 'left' },
  315. ];
  316. if (Type == '2' || Type == '12') {
  317. var collast = { label: "生产订单", name: "OrderNumber", width: 120, align: 'left' };
  318. cols.push(collast);
  319. var collast = { label: "单据类型", name: "EATTRIBUTE", width: 120, align: 'left' };
  320. cols.push(collast);
  321. var collast = { label: '套数', name: 'Sets', width: 50, align: 'left' };
  322. cols.push(collast);
  323. var collast = { label: '物料号(父项生产订单物料)', name: 'OrderInvCode', width: 150, align: 'left' };
  324. cols.push(collast);
  325. var collast = { label: '物料描述(父项生产订单主物料)', name: 'OrderInvDescribe', width: 150, align: 'left' };
  326. cols.push(collast);
  327. var collast = { label: '出入库', name: 'BillType', width: 100, align: 'left' };
  328. cols.push(collast);
  329. var collast = { label: '备注', name: 'Remarks', width: 150, align: 'left' };
  330. cols.push(collast);
  331. var collast = { label: '工位', name: 'Desks', width: 100, align: 'left' };
  332. cols.push(collast);
  333. var collast = { label: '调度工号', name: 'DispatchNumber', width: 120, align: 'left', };
  334. cols.push(collast);
  335. var collast = { label: '调度姓名', name: 'DispatcherName', width: 120, align: 'left' };
  336. cols.push(collast);
  337. var collast = { label: '收料人工号', name: 'ReceiverNumber', width: 150, align: 'left' };
  338. cols.push(collast);
  339. var collast = { label: '收料人姓名', name: 'ReceiverName', width: 150, align: 'left' };
  340. cols.push(collast);
  341. var collast = { label: '紧急程度', name: 'Urgency', width: 120, align: 'left', };
  342. cols.push(collast);
  343. var collast = { label: '需求日期', name: 'NeedDate', width: 120, align: 'left' };
  344. cols.push(collast);
  345. var collast = { label: '需求时间', name: 'NeedTime', width: 120, align: 'left', };
  346. cols.push(collast);
  347. var collast = { label: '备注项', name: 'RemarksTerm', width: 120, align: 'left' };
  348. cols.push(collast);
  349. var collast = { label: '工艺文本码', name: 'TextNumber', width: 150, align: 'left' };
  350. cols.push(collast);
  351. var collast = { label: '基本剂量单位', name: 'Unit', width: 150, align: 'left', };
  352. cols.push(collast);
  353. var collast = { label: '特殊库存标识', name: 'StockIndicator', width: 150, align: 'left' };
  354. cols.push(collast);
  355. }
  356. if (Type == '5') {
  357. var collast = { label: '采购订单', name: 'SourceCode', width: 120, align: 'left' };
  358. cols.push(collast);
  359. var collast = { label: '采购订单行号', name: 'SourceSequence', width: 120, align: 'left' };
  360. cols.push(collast);
  361. var collast = { label: '供应商编码', name: 'VenCode', width: 150, align: 'left' };
  362. cols.push(collast);
  363. var collast = { label: '供应商名称', name: 'VenName', width: 150, align: 'left' };
  364. cols.push(collast);
  365. }
  366. if (Type == '7') {
  367. var collast = { label: '站点', name: 'WorkPoint', width: 120, align: 'left' };
  368. cols.push(collast);
  369. var collast = { label: '装运点', name: 'Points', width: 120, align: 'left' };
  370. cols.push(collast);
  371. var collast = { label: '交货类型', name: 'DeliveryType', width: 150, align: 'left' };
  372. cols.push(collast);
  373. var collast = { label: '交货描述', name: 'DeliveryDescribe', width: 150, align: 'left' };
  374. cols.push(collast);
  375. var collast = { label: '辅助描述', name: 'OtherDescribe', width: 120, align: 'left' };
  376. cols.push(collast);
  377. var collast = { label: '销售单位', name: 'SalesUnit', width: 120, align: 'left' };
  378. cols.push(collast);
  379. var collast = { label: '序列号参数', name: 'IsSerialNumber', width: 150, align: 'left' };
  380. cols.push(collast);
  381. var collast = { label: '特殊库存标识', name: 'StockIndicator', width: 150, align: 'left' };
  382. cols.push(collast);
  383. var collast = { label: '销售凭证', name: 'ProjectCode', width: 100, align: 'left' };
  384. cols.push(collast);
  385. var collast = { label: '销售凭证项号', name: 'Brand', width: 100, align: 'left' };
  386. cols.push(collast);
  387. }
  388. if (Type == '8') {
  389. var collast = { label: '单据类型', name: 'OrderType', width: 120, align: 'left' };
  390. cols.push(collast);
  391. var collast = { label: '类型描述', name: 'TypeDescribe', width: 120, align: 'left' };
  392. cols.push(collast);
  393. var collast = { label: '成本中心', name: 'CostCenter', width: 150, align: 'left' };
  394. cols.push(collast);
  395. var collast = { label: '备注', name: 'Remarks', width: 150, align: 'left' };
  396. cols.push(collast);
  397. var collast = { label: '人员号', name: 'PersonNumber', width: 120, align: 'left' };
  398. cols.push(collast);
  399. var collast = { label: '物料描述', name: 'InvDescribe', width: 120, align: 'left' };
  400. cols.push(collast);
  401. var collast = { label: '基本计量单位', name: 'Unit', width: 150, align: 'left' };
  402. cols.push(collast);
  403. var collast = { label: '特殊库存标识', name: 'StockIndicator', width: 150, align: 'left' };
  404. cols.push(collast);
  405. }
  406. if (Type == '10') {
  407. var collast = { label: '目标仓库', name: 'ToWarehouseCode', width: 120, align: 'left' };
  408. cols.push(collast);
  409. var collast = { label: '目标工厂', name: 'ReceiveWork', width: 120, align: 'left' };
  410. cols.push(collast);
  411. var collast = { label: "单据类型", name: "OrderType", width: 120, align: 'left' };
  412. cols.push(collast);
  413. var collast = { label: '站点', name: 'WorkPoint', width: 100, align: 'left' };
  414. cols.push(collast);
  415. var collast = { label: '类型描述', name: 'TypeDescribe', width: 120, align: 'left' };
  416. cols.push(collast);
  417. var collast = { label: '备注', name: 'Remarks', width: 120, align: 'left' };
  418. cols.push(collast);
  419. var collast = { label: '人员号', name: 'PersonNumber', width: 100, align: 'left' };
  420. cols.push(collast);
  421. var collast = { label: '基本计量单位', name: 'Unit', width: 150, align: 'left' };
  422. cols.push(collast);
  423. var collast = { label: '特殊库存标识', name: 'StockIndicator', width: 150, align: 'left', };
  424. cols.push(collast);
  425. var collast = { label: '接收物料', name: 'ReceiveInvCode', width: 120, align: 'left' };
  426. cols.push(collast);
  427. var collast = { label: '接收物料描述', name: 'ReceiveInvDescribe', width: 150, align: 'left' };
  428. cols.push(collast);
  429. var collast = { label: '接受特殊库存标识', name: 'ReceiveStock', width: 150, align: 'left' };
  430. cols.push(collast);
  431. var collast = { label: '接受销售订单', name: 'ReceiveSales', width: 150, align: 'left', };
  432. cols.push(collast);
  433. var collast = { label: '接受行号', name: 'ReceiveSequence', width: 120, align: 'left' };
  434. cols.push(collast);
  435. var collast = { label: '备注2', name: 'Remark2', width: 100, align: 'left', };
  436. cols.push(collast);
  437. }
  438. $("#" + subgrid_table_id).dataGrid({
  439. cellEdit: true,
  440. url: "/WMS/PickMaterial/GetSubGridJson?Code=" + Code + "&Type=" + Type + "&" + Math.random(), // (7)子表格数据对应的url,注意传入的contact.id参数
  441. colModel: cols,
  442. postData: { queryJson: JSON.stringify(queryJson) },
  443. //colModel: ColModelSub,
  444. //shrinkToFit: true,//宽度自适应
  445. //multiselect: true,
  446. prmNames: { search: "search" },
  447. viewrecords: true,
  448. height: "100%",
  449. rowNum: 20,
  450. pager: subgrid_pager_id,
  451. });
  452. }
  453. $("#warehouse a.btn-default").click(function () {
  454. $("#warehouse a.btn-default").removeClass("active");
  455. $(this).addClass("active");
  456. $('#btn_search').trigger("click");
  457. });
  458. $("#btn_search").click(function () {
  459. var warehouse = $("#warehouse a.active").attr('data-value');
  460. var Types = $("#selShow").val();
  461. var queryJson = {
  462. POCode: $("#txt_POCode").val(),
  463. InvCode: $("#txt_InvCode").val(),
  464. Area: $("#txt_Area").val(),
  465. WHCode: $("#txt_WHCode").val(),
  466. CusCode: $("#txt_CusCode").val(),
  467. CusName: $("#txt_CusName").val(),
  468. AreaType: $("#selShow1").val(),
  469. Status: $("#selShow2").val(),
  470. Order: $("#txt_Order").val(),
  471. Container: $("#txt_Container :checked").val(),
  472. CreateDate: $("#txt_CreateDate").val(),
  473. NeedDate: $("#txt_NeedDate").val()
  474. }
  475. $gridList.jqGrid('setGridParam', {
  476. postData: { queryJson: JSON.stringify(queryJson) ,Type:Types},
  477. }).trigger('reloadGrid');
  478. });
  479. }
  480. function gridList2(flag) {
  481. debugger;
  482. document.getElementById("gridPanel2").innerHTML = ' <span><strong>合并信息</strong></span> <table id="gridList2"></table>';//重置grid
  483. var Type = $("#selShow").val();
  484. var $gridList = $("#gridList2");
  485. var objArr = '';
  486. var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  487. for (var i = 0; i < objList.length; i++) {
  488. var rowId = objList[i];
  489. var rowData = $("#gridList").jqGrid('getRowData', rowId);
  490. if (flag == '1') {
  491. objArr += "'" + rowData.Code + "',";
  492. } else {
  493. objArr += "'" + rowData.Code + "',";
  494. }
  495. }
  496. $gridList.dataGrid({
  497. url: "/WMS/PickMaterial/GetICSMOPickMergeTemp?ID=" + objArr + "&Type=" + Type + "&flag=" + flag + "&" + Math.random(),
  498. height: 500,
  499. width: $(window).width() - 500,
  500. colModel: _Clos1,
  501. //colModel: [
  502. // { label: "主键", name: "ID", hidden: true, key: true },
  503. // { label: '领料合并ID', name: 'MergeID', width: 120, align: 'left' },
  504. // { label: '单据号', name: 'Code', width: 120, align: 'left' },
  505. // { label: '料品编码', name: 'InvCode', width: 150, align: 'left' },
  506. // { label: '物料描述', name: 'InvName', width: 150, align: 'left' },
  507. // { label: '规格型号', name: 'InvStd', width: 100, align: 'left' },
  508. // { label: '应发数量', name: 'iQuantity', width: 100, align: 'left' },
  509. // { label: '单位', name: 'InvUnit', width: 150, align: 'left' },
  510. // { label: '仓库编码', name: 'WarehouseCode', width: 100, align: 'left' },
  511. // { label: '库位编码', name: 'LocationCode', width: 100, align: 'left' },
  512. // { label: '条码库存', name: 'QTY', width: 100, align: 'left' },
  513. // { label: '条码', name: 'LotNO', width: 100, align: 'left' },
  514. //],
  515. shrinkToFit: false,//宽度自适应
  516. autowidth: true,
  517. gridComplete: function () {
  518. },
  519. rowNum: 10000,
  520. sortorder: "desc",
  521. viewrecords: true,
  522. //multiselect: true,
  523. });
  524. $("#warehouse a.btn-default").click(function () {
  525. $("#warehouse a.btn-default").removeClass("active");
  526. $(this).addClass("active");
  527. $('#btn_search').trigger("click");
  528. });
  529. //$("#btn_search").click(function () {
  530. // var warehouse = $("#warehouse a.active").attr('data-value');
  531. // var queryJson = {
  532. // POCode: $("#txt_POCode").val(),
  533. // }
  534. // $gridList.jqGrid('setGridParam', {
  535. // postData: { queryJson: JSON.stringify(queryJson) },
  536. // }).trigger('reloadGrid');
  537. //});
  538. }
  539. function btnMaterial() {
  540. debugger;
  541. var arr = [];
  542. mark = '拣料';
  543. flag = '1';
  544. var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  545. for (var i = 0; i < objList.length; i++) {
  546. var objArr = '';
  547. var rowId = objList[i];
  548. var rowData = $("#gridList").jqGrid('getRowData', rowId);
  549. if (rowData.IsNew == "已合并") {
  550. $.modalAlertNew("WMS00091");
  551. return;
  552. }
  553. objArr += "'" + rowData.Code + "',";
  554. objArr = objArr.slice(0, objArr.length - 1);
  555. objArr = "" + objArr + "|";
  556. arr.push(objArr);
  557. }
  558. Arguments = arr;
  559. gridList2(flag);
  560. }
  561. function btnMergeMaterial() {
  562. debugger;
  563. mark = '合并拣料';
  564. var sign = '';
  565. flag = '2';
  566. var Type = $("#selShow").val();
  567. var obj = '';
  568. var objArr = '';
  569. var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  570. if (objList.length < 2) {
  571. $.modalAlertNew("WMS00092");
  572. return;
  573. }
  574. for (var i = 0; i < objList.length; i++) {
  575. var rowId = objList[i];
  576. var rowData = $("#gridList").jqGrid('getRowData', rowId);
  577. obj += rowData.Code + ",";
  578. objArr += "'" + rowData.Code + "',";
  579. }
  580. $.ajax({
  581. url: "/WMS/PickMaterial/CheckQty" + "?" + Math.random() + "&objArr=" + objArr,
  582. dataType: "json",
  583. type: "post",
  584. async: false,
  585. success: function (data) {
  586. sign = data.count;
  587. }
  588. });
  589. if (sign == '1') {
  590. $.modalAlertNew("WMS00091");
  591. return;
  592. }
  593. $.submitForm({
  594. url: "/WMS/PickMaterial/MergeMaterial?Type=" + Type + "&" + Math.random(),
  595. param: {
  596. keyValue: obj
  597. },
  598. success: function () {
  599. //$.currentWindow().$("#gridList").trigger("reloadGrid");
  600. gridList2(flag);
  601. }
  602. })
  603. }
  604. function btnCancelMergeMaterial() {
  605. debugger;
  606. mark = '取消合并拣料';
  607. var sign = '';
  608. flag = '2';
  609. var Type = $("#selShow").val();
  610. var obj = '';
  611. var objArr = '';
  612. var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  613. if (objList.length < 1) {
  614. $.modalAlertNew("WMS00109");
  615. return;
  616. }
  617. for (var i = 0; i < objList.length; i++) {
  618. var rowId = objList[i];
  619. var rowData = $("#gridList").jqGrid('getRowData', rowId);
  620. obj += rowData.Code + ",";
  621. objArr += "'" + rowData.Code + "',";
  622. }
  623. $.submitForm({
  624. url: "/WMS/PickMaterial/CancelMergeMaterial?Type=" + Type + "&" + Math.random(),
  625. param: {
  626. keyValue: obj
  627. },
  628. success: function () {
  629. //$.currentWindow().$("#gridList").trigger("reloadGrid");
  630. gridList();
  631. }
  632. })
  633. }
  634. function btnPrint() {
  635. debugger;
  636. var mold = '';
  637. if (mark == '') {
  638. $.modalAlertNew("WMS00093");
  639. return;
  640. }
  641. if (mark == '合并拣料') {
  642. var arr = [];
  643. var obj_Item1 = $("#gridList2");
  644. var rowIds_Item1 = obj_Item1.getDataIDs();
  645. var arrayData_Item1 = new Array();
  646. var Enables = '';
  647. if (rowIds_Item1.length > 0) {
  648. debugger;
  649. for (var i = 0; i < rowIds_Item1.length; i++) {
  650. var objArr = '';
  651. var RowData_Item1 = obj_Item1.getRowData(rowIds_Item1[i]);
  652. objArr += "'" + RowData_Item1.MergeID + "',";
  653. objArr = objArr.slice(0, objArr.length - 1);
  654. objArr = "" + objArr + "|";
  655. arr.push(objArr);
  656. }
  657. //var arr = [];
  658. //var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  659. //for (var i = 0; i < objList.length; i++) {
  660. // var objArr = '';
  661. // var rowId = objList[i];
  662. // var rowData = $("#gridList").jqGrid('getRowData', rowId);
  663. // objArr += "'" + rowData.Code + "',";
  664. // objArr = objArr.slice(0, objArr.length - 1);
  665. // objArr = "" + objArr + "|";
  666. // arr.push(objArr);
  667. //}
  668. Arguments = arr;
  669. mold = 'HBJL00001';
  670. }
  671. }
  672. if (mark == '拣料') {
  673. var arr = [];
  674. var obj_Item1 = $("#gridList2");
  675. var rowIds_Item1 = obj_Item1.getDataIDs();
  676. var arrayData_Item1 = new Array();
  677. var Enables = '';
  678. if (rowIds_Item1.length > 0) {
  679. debugger;
  680. for (var i = 0; i < rowIds_Item1.length; i++) {
  681. var objArr = '';
  682. var RowData_Item1 = obj_Item1.getRowData(rowIds_Item1[i]);
  683. objArr += "'" + RowData_Item1.Code + "',";
  684. objArr = objArr.slice(0, objArr.length - 1);
  685. objArr = "" + objArr + "|";
  686. arr.push(objArr);
  687. }
  688. //var arr = [];
  689. //var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  690. //for (var i = 0; i < objList.length; i++) {
  691. // var objArr = '';
  692. // var rowId = objList[i];
  693. // var rowData = $("#gridList").jqGrid('getRowData', rowId);
  694. // objArr += "'" + rowData.Code + "',";
  695. // objArr = objArr.slice(0, objArr.length - 1);
  696. // objArr = "" + objArr + "|";
  697. // arr.push(objArr);
  698. //}
  699. Arguments = arr;
  700. mold = 'JL00001';
  701. }
  702. }
  703. $.modalOpen({
  704. id: "PrintLot",
  705. title: "打印",
  706. url: "/WMS/Print/PrintView?Arguments=" + encodeURI(encodeURI(Arguments)) + "&mold=" + mold + "&" + Math.random(),
  707. width: "550px",
  708. height: "1000px",
  709. callBack: function (iframeId) {
  710. top.frames[iframeId].submitForm();
  711. }
  712. });
  713. }
  714. function fullscreen() {
  715. var docElm = document.documentElement;
  716. if (docElm.requestFullscreen) {
  717. docElm.requestFullscreen();
  718. } else if (docElm.mozRequestFullScreen) {
  719. docElm.mozRequestFullScreen();
  720. } else if (docElm.webkitRequestFullScreen) {
  721. docElm.webkitRequestFullScreen();
  722. } else if (docElm.msRequestFullscreen) {
  723. docElm.msRequestFullscreen();
  724. }
  725. $(window).bind('resize', function () {
  726. $("#gridList").setGridWidth($(window).width());
  727. }).trigger('resize');
  728. $(window).bind('resize', function () {
  729. $("#gridList").setGridHeight($(window).height());
  730. }).trigger('resize');
  731. }
  732. </script>
  733. <div class="topPanel" style="height:150px;" >
  734. <div class="toolbar">
  735. <div class="btn-group">
  736. <a id="NF-Material" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnMaterial()"><i class="fa fa-pencil-square-o"></i>拣料</a>
  737. <a id="NF-MergeMaterial" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnMergeMaterial()"><i class="fa fa-pencil-square-o"></i>合并拣料</a>
  738. <a id="NF-CancelMergeMaterial" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnCancelMergeMaterial()"><i class="fa fa-pencil-square-o"></i>取消合并拣料</a>
  739. <a id="NF-Print" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnPrint()"><i class="fa fa-pencil-square-o"></i>打印</a>
  740. <a class="btn btn-primary" onclick="$.reload()"><span class="glyphicon glyphicon-refresh"></span></a>
  741. </div>
  742. <script>$('.toolbar').authorizeButton()</script>
  743. </div>
  744. <div class="search">
  745. <table>
  746. <tr>
  747. <td>
  748. <label>&nbsp;&nbsp;&nbsp;类型:</label>
  749. </td>
  750. <td>
  751. <div class="input-group">
  752. <select id="selShow" name="F_Target" class="form-control" style="width: 100px;">
  753. @*<option value="1" selected="selected">工单备料</option>*@
  754. <option value="2" selected="selected" spellcheck="true">工单领料</option>
  755. <option value="12" selected="selected">售后领料</option>
  756. @*<option value="3" selected="selected">工单材料出库</option>*@
  757. @*<option value="4" selected="selected">委外备料</option>*@
  758. <option value="5" selected="selected">委外领料</option>
  759. @*<option value="6" selected="selected">委外材料出库</option>*@
  760. <option value="7" selected="selected">销售发货</option>
  761. <option value="8" selected="selected">其它出库</option>
  762. @*<option value="9" selected="selected">借用</option>*@
  763. <option value="10" selected="selected">物料调拨</option>
  764. @*<option value="11" selected="selected">两步调出</option>*@
  765. </select>
  766. </div>
  767. </td>
  768. <td id="status1">
  769. <label>&nbsp;&nbsp;&nbsp;状态:</label>
  770. </td>
  771. <td id="status2">
  772. <div class="input-group">
  773. <select id="selShow2" name="F_Target" class="form-control" style="width: 100px;">
  774. <option value="2" selected="selected">已配料</option>
  775. <option value="3" selected="selected">已过账</option>
  776. @*<option value="4" selected="selected">已取消</option>*@
  777. @*<option value="5" selected="selected">全部</option>*@
  778. <option value="1" selected="selected">未配料</option>
  779. </select>
  780. </div>
  781. </td>
  782. <td style="text-align:right;"><label class="lglabel" for="txt_POCode">&nbsp;&nbsp;&nbsp;单据号</label>:</td>
  783. <td>
  784. <div class="input-group">
  785. <input id="txt_POCode" type="text" class="form-control" style="width: 120px;">
  786. </div>
  787. </td>
  788. <td style="text-align:right;"><label class="lglabel" for="txt_POCode">&nbsp;&nbsp;&nbsp;区域</label>:</td>
  789. <td>
  790. <div class="input-group">
  791. <input id="txt_Area" type="text" class="form-control" style="width: 120px;">
  792. </div>
  793. </td>
  794. <td style="text-align:right;" id="order1"><label class="lglabel" for="txt_POCode">&nbsp;&nbsp;&nbsp;生产订单</label>:</td>
  795. <td id="order2">
  796. <div class="input-group">
  797. <input id="txt_Order" type="text" class="form-control" style="width: 120px;">
  798. </div>
  799. </td>
  800. </tr>
  801. <tr>
  802. <td style="text-align:right;"><label class="lglabel" for="txt_POCode">&nbsp;&nbsp;&nbsp;仓库</label>:</td>
  803. <td>
  804. <div class="input-group">
  805. <input id="txt_WHCode" type="text" class="form-control" style="width: 120px;">
  806. </div>
  807. </td>
  808. <td style="text-align:right;"><label class="lglabel" for="txt_InvCode">&nbsp;&nbsp;&nbsp;料品编码</label>:</td>
  809. <td>
  810. <div class="input-group">
  811. <input id="txt_InvCode" type="text" class="form-control" style="width: 120px;">
  812. </div>
  813. </td>
  814. <td style="text-align:left; " id="type7"><label class="lglabel" for="txt_POCode">&nbsp;&nbsp;&nbsp;客户编码</label>:</td>
  815. <td id="type8">
  816. <div class="input-group">
  817. <input id="txt_CusCode" type="text" class="form-control" style="width: 150px; ">
  818. </div>
  819. </td>
  820. <td style="text-align: right; " id="type9"><label class="lglabel" for="txt_InvCode">&nbsp;&nbsp;&nbsp;客户名称</label>:</td>
  821. <td id="type10">
  822. <div class="input-group">
  823. <input id="txt_CusName" type="text" class="form-control" style="width: 120px;">
  824. </div>
  825. </td>
  826. <td style="text-align: right; " id="date1"><label class="lglabel" for="txt_InvCode">&nbsp;&nbsp;&nbsp;创建日期</label>:</td>
  827. <td id="date2">
  828. <div class="input-group">
  829. <input type="text" name="PRODUCTDATE" id="txt_CreateDate" class="form-control " onclick="WdatePicker({ dateFmt: 'yyyy-MM-dd' })" style="width: 120px;" />
  830. </div>
  831. </td>
  832. <td style="text-align: right; " id="date3"><label class="lglabel" for="txt_InvCode">&nbsp;&nbsp;&nbsp;需求日期</label>:</td>
  833. <td id="date4">
  834. <div class="input-group">
  835. <input type="text" name="PRODUCTDATE" id="txt_NeedDate" class="form-control " onclick="WdatePicker({ dateFmt: 'yyyy-MM-dd' })" style="width: 120px;" />
  836. </div>
  837. </td>
  838. <td>
  839. <label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否显示货柜单据:</label>
  840. </td>
  841. <td>
  842. <div class="input-group" id="txt_Container">
  843. <input type="radio" name="container" value="1" />&nbsp;是
  844. <input type="radio" name="container" checked="checked" value="2" />&nbsp;否
  845. </div>
  846. </td>
  847. <td>
  848. <span class="input-group-btn">
  849. <button id="btn_search" type="button" class="btn btn-primary"><i class="fa fa-search"></i></button>
  850. </span>
  851. </td>
  852. </tr>
  853. @*<tr>
  854. </tr>*@
  855. </table>
  856. </div>
  857. </div>
  858. <div class="gridPanel" id="gridPanel">
  859. <span><strong>详细信息</strong></span>
  860. <table id="gridList"></table>
  861. </div>
  862. <div class="gridPanel" id="gridPanel2">
  863. <span><strong>合并信息</strong></span>
  864. <table id="gridList2"></table>
  865. </div>