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

266 lines
11 KiB

3 years ago
  1. @{
  2. ViewBag.Title = "Index";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. <script>
  6. debugger;
  7. //var Type = $.request("Type");
  8. var ColModelMain = [];
  9. var ColModelSub = [];
  10. $(function () {
  11. gridList();
  12. })
  13. function gridList() {
  14. var $gridList = $("#gridList");
  15. var queryJson = {
  16. DABDOCCode: $("#txt_DABDOCCode").val(),
  17. }
  18. $gridList.dataGrid({
  19. url: "/WMS/ICSDisassemblyDoc/GetGridJson" + "?" + Math.random(),
  20. postData: { queryJson: JSON.stringify(queryJson) },
  21. height: $(window).height() - 200,
  22. width: $(window).width() - 300,
  23. colModel: [
  24. { label: "主键", name: "ID", hidden: true, key: true },
  25. {
  26. label: "类型", name: "DABDOCType", width: 60, align: "left",
  27. formatter: function (cellvalue) {
  28. if (cellvalue == "1") {
  29. return "套件";
  30. } else if (cellvalue == "2") {
  31. return "散件";
  32. }
  33. else { return ""; }
  34. }
  35. },
  36. { label: '拆卸单号', name: 'Code', width: 120, align: 'left' },
  37. { label: '数量', name: 'Qty', width: 150, align: 'left' },
  38. { label: '料品编码', name: 'InvCode', width: 150, align: 'left' },
  39. { label: '料品名称', name: 'InvName', width: 100, align: 'left' },
  40. { label: '仓库代码', name: 'WHCode', width: 100, align: 'left' },
  41. { label: '批次', name: 'BatchCode', width: 150, align: 'left' },
  42. { label: '是否选择', name: 'isInput', width: 150, align: 'left' },
  43. { label: '是否生成', name: 'isCreate', width: 150, align: 'left' },
  44. ],
  45. width: "100%",
  46. autowidth: true,
  47. gridComplete: function () {
  48. },
  49. pager: "#gridPager",
  50. sortname: 'Code',
  51. sortorder: "desc",
  52. viewrecords: true,
  53. multiselect: true,
  54. beforeSelectRow: function (rowid, e) {
  55. $("#gridList").jqGrid('resetSelection');
  56. return (true);
  57. },
  58. subGrid: true, // (1)开启子表格支持
  59. subGridRowExpanded: function (subgrid_id, rowid) { // (2)子表格容器的id和需要展开子表格的行id,将传入此事件函数
  60. $("#gridList").jqGrid("setSelection", rowid, false);
  61. bindSubGrid(subgrid_id, rowid)
  62. }
  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. DABDOCCode: $("#txt_DABDOCCode").val(),
  73. }
  74. $gridList.jqGrid('setGridParam', {
  75. postData: { queryJson: JSON.stringify(queryJson) },
  76. }).trigger('reloadGrid');
  77. });
  78. }
  79. function bindSubGrid(subgrid_id, rowid) {
  80. debugger;
  81. $("#gridList").jqGrid("setSelection", rowid, false);
  82. var subgrid_table_id;
  83. subgrid_table_id = subgrid_id + "_t"; // (3)根据subgrid_id定义对应的子表格的table的id
  84. var subgrid_pager_id;
  85. subgrid_pager_id = subgrid_id + "_pgr" // (4)根据subgrid_id定义对应的子表格的pager的id
  86. // (5)动态添加子报表的table和pager
  87. $("#" + subgrid_id).html("<table id='" + subgrid_table_id + "' class='scroll'></table><div id='" + subgrid_pager_id + "' class='scroll'></div>");
  88. var Code = $("#gridList").jqGrid('getRowData', rowid).Code;
  89. //var Sequence = $("#gridList").jqGrid('getRowData', rowid).Sequence;
  90. // (6)创建jqGrid对象
  91. $("#" + subgrid_table_id).dataGrid({
  92. cellEdit: true,
  93. url: "/WMS/ICSDisassemblyDoc/GetSubGridJson?Code=" + Code + "&" + Math.random(), // (7)子表格数据对应的url,注意传入的contact.id参数
  94. colModel: [
  95. { label: '行号', name: 'Sequence', width: 120, align: 'left' },
  96. {
  97. label: "类型", name: "DABDOCType", width: 60, align: "left",
  98. formatter: function (cellvalue) {
  99. if (cellvalue == "1") {
  100. return "套件";
  101. } else if (cellvalue == "2") {
  102. return "散件";
  103. }
  104. else { return ""; }
  105. }
  106. },
  107. { label: '拆卸单号', name: 'Code', width: 120, align: 'left' },
  108. { label: '数量', name: 'Qty', width: 150, align: 'left' },
  109. { label: '料品编码', name: 'InvCode', width: 150, align: 'left' },
  110. { label: '料品名称', name: 'InvName', width: 100, align: 'left' },
  111. { label: '仓库代码', name: 'WHCode', width: 100, align: 'left' },
  112. { label: '批次', name: 'BatchCode', width: 150, align: 'left' },
  113. { label: '条码', name: 'LotNo', width: 150, align: 'left' },
  114. ],
  115. //colModel: ColModelSub,
  116. shrinkToFit: true,//宽度自适应
  117. multiselect: true,
  118. prmNames: { search: "search" },
  119. viewrecords: true,
  120. height: "100%",
  121. rowNum: 20,
  122. pager: subgrid_pager_id,
  123. });
  124. }
  125. function btnkit() {
  126. debugger;
  127. var ids = $("#gridList").jqGrid('getGridParam', 'selarrrow'); //获取 多行数据
  128. if (ids.length == 0) {
  129. $.modalAlert("请选择数据!");
  130. return;
  131. }
  132. for (var i = 0; i < ids.length; i++) {
  133. var rowData = $("#gridList").jqGrid('getRowData', ids[i]);
  134. var Code = rowData.Code;//单据号
  135. var InvCode = rowData.InvCode;//料品编码
  136. var InvName = rowData.InvName;//料品名称
  137. var WHCode = rowData.WHCode;//仓库代码
  138. var BatchCode = rowData.BatchCode;//仓库代码
  139. var Qty = rowData.Qty//数量
  140. var isInput = rowData.isInput//是否选择
  141. if (isInput=="已选") {
  142. $.modalAlert("该套件已选择!");
  143. return;
  144. }
  145. }
  146. $.modalOpen({
  147. id: "ICSDisassemblyDocAdd",
  148. title: "选择套件",
  149. url: "/WMS/ICSDisassemblyDoc/ICSDisassemblyDocAdd?Code=" + Code + "&InvName=" + encodeURI(encodeURI(InvName)) + "&WHCode=" + WHCode + "&BatchCode=" + BatchCode + "&InvCode=" + InvCode + "&Qty=" + Qty + "&" + Math.random(),
  150. width: "1200px",
  151. height: "1150px",
  152. callBack: function (iframeId) {
  153. top.frames[iframeId].submitForm();
  154. }
  155. });
  156. }
  157. //批量生成条码
  158. function btnGenerate() {
  159. debugger;
  160. var ids = $("#gridList").jqGrid('getGridParam', 'selarrrow'); //获取 多行数据
  161. if (ids.length == 0) {
  162. $.modalAlert("请选择数据!");
  163. return;
  164. }
  165. for (var i = 0; i < ids.length; i++) {
  166. var rowData = $("#gridList").jqGrid('getRowData', ids[i]);
  167. var Code = rowData.Code;
  168. var isInput = rowData.isInput;
  169. var isCreate = rowData.isCreate;
  170. if (isInput=='未选') {
  171. $.modalAlert("请先选择套件!");
  172. return;
  173. }
  174. if (isCreate=='已生成') {
  175. $.modalAlert("该单据已生成过条码!");
  176. return;
  177. }
  178. }
  179. $.modalConfirm("是否批量生成条码?", function (r) {
  180. if (r) {
  181. $.submitForm({
  182. url: "/WMS/ICSDisassemblyDoc/CreateInventoryLot?Code=" + Code + "&" + Math.random(),
  183. success: function () {
  184. $.currentWindow().$("#gridList").trigger("reloadGrid");
  185. }
  186. })
  187. }
  188. });
  189. }
  190. function btnDeleteLot() {
  191. var ids = $("#gridList").jqGrid('getGridParam', 'selarrrow'); //获取 多行数据
  192. if (ids.length == 0) {
  193. $.modalAlert("请选择数据!");
  194. return;
  195. }
  196. for (var i = 0; i < ids.length; i++) {
  197. var rowData = $("#gridList").jqGrid('getRowData', ids[i]);
  198. var Code = rowData.Code;
  199. }
  200. $.modalConfirm("是否批量删除条码?", function (r) {
  201. if (r) {
  202. $.submitForm({
  203. url: "/WMS/ICSDisassemblyDoc/DeleteInventoryLot?Code=" + Code + "&" + Math.random(),
  204. success: function () {
  205. $.currentWindow().$("#gridList").trigger("reloadGrid");
  206. }
  207. })
  208. }
  209. });
  210. }
  211. </script>
  212. <div class="topPanel" style="height:60px;">
  213. <div class="toolbar">
  214. <div class="btn-group">
  215. <a id="NF-kit" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnkit()"><i class="fa fa-pencil-square-o"></i>绑定套件</a>
  216. <a id="NF-Generate" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnGenerate()"><i class="fa fa-pencil-square-o"></i>批量生成条码</a>
  217. <a id="NF-DeleteLot" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnDeleteLot()"><i class="fa fa-pencil-square-o"></i>删除条码</a>
  218. <a class="btn btn-primary" onclick="$.reload()"><span class="glyphicon glyphicon-refresh"></span></a>
  219. </div>
  220. <script>$('.toolbar').authorizeButton()</script>
  221. </div>
  222. <div class="search">
  223. <table>
  224. <tr>
  225. <td style="text-align:right;"><label class="lglabel" for="txt_DABDOCCode">单据号</label>:</td>
  226. <td>
  227. <div class="input-group">
  228. <input id="txt_DABDOCCode" type="text" class="form-control" style="width: 100px;">
  229. </div>
  230. </td>
  231. <td>
  232. <span class="input-group-btn">
  233. <button id="btn_search" type="button" class="btn btn-primary"><i class="fa fa-search"></i></button>
  234. </span>
  235. </td>
  236. </tr>
  237. </table>
  238. </div>
  239. </div>
  240. <div class="gridPanel">
  241. <table id="gridList"></table>
  242. <div id="gridPager"></div>
  243. </div>