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.

368 lines
15 KiB

3 weeks ago
  1. @{
  2. ViewBag.Title = "Index";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. <script>
  6. debugger;
  7. var _Clos = new Array();
  8. //var Type = $.request("Type");
  9. var ColModelMain = [];
  10. var ColModelSub = [];
  11. $(function () {
  12. SetCols();
  13. gridList();
  14. })
  15. function SetCols() {
  16. $.ajax({
  17. url: "/Print/SelectColumnName?" + Math.random(),
  18. dataType: "json",
  19. async: false,
  20. success: function (data) {
  21. var cols = new Array();
  22. var collast = { label: "主键", name: "ID", hidden: true, key: true };
  23. cols.push(collast);
  24. var collast = { label: "行号", name: "Sequence", width: 50, align: 'left' };
  25. cols.push(collast);
  26. var collast = { label: "部门代码", name: "DepCode", width: 100, align: 'left' };
  27. cols.push(collast);
  28. var collast = { label: '部门名称', name: 'DepName', width: 100, align: 'left' };
  29. cols.push(collast);
  30. var collast = { label: '仓库代码', name: 'WHCode', width: 100, align: 'left' };
  31. cols.push(collast);
  32. var collast = { label: '仓库名称', name: 'WarehouseName', width: 100, align: 'left' };
  33. cols.push(collast);
  34. var collast = { label: '条码', name: 'LotNo', width: 100, align: 'left' };
  35. cols.push(collast);
  36. var collast = { label: '客户料号', name: 'VenInvCode', width: 100, align: 'left' };
  37. cols.push(collast);
  38. var collast = { label: '料品编码', name: 'InvCode', width: 100, align: 'left' };
  39. cols.push(collast);
  40. var collast = { label: '料品名称', name: 'InvName', width: 100, align: 'left' };
  41. cols.push(collast);
  42. var collast = { label: '数量', name: 'Quantity', width: 100, align: 'left' };
  43. cols.push(collast);
  44. var collast = { label: '辅计量数量', name: 'Amount', width: 100, align: 'left' };
  45. cols.push(collast);
  46. var collast = { label: '已转换数量', name: 'MTDOCQuantity', width: 100, align: 'left' };
  47. cols.push(collast);
  48. var collast = { label: '转换类型', name: 'MTDOCType', width: 100, align: 'left' };
  49. cols.push(collast);
  50. if (data != null && data.length > 0) {
  51. DateList = data;
  52. for (var i = 0; i < data.length; i++) {
  53. var ColName = data[i].ColName;
  54. var ColCode = data[i].ColCode;
  55. var obj = new Array();
  56. obj = {
  57. label: ColName,
  58. name: ColCode,
  59. width: 80,
  60. align: "left"
  61. }
  62. cols.push(obj);
  63. }
  64. }
  65. _Clos = cols;
  66. }
  67. });
  68. }
  69. function gridList() {
  70. var $gridList = $("#gridList");
  71. var queryJson = {
  72. MTDOCCode: $("#txt_MTDOCCode").val(),
  73. }
  74. $gridList.dataGrid({
  75. url: "/WMS/ICSMTDOC/GetGridJson" + "?" + Math.random(),
  76. postData: { queryJson: JSON.stringify(queryJson) },
  77. height: $(window).height() - 200,
  78. width: $(window).width() - 300,
  79. colModel: [
  80. { label: "主键", name: "ID", hidden: true, key: true },
  81. { label: '形态转换单号', name: 'MTDOCCode', width: 120, align: 'left' },
  82. //{ label: '部门代码', name: 'DepCode', width: 150, align: 'left' },
  83. {
  84. label: "状态", name: "Status", width: 60, align: "left",
  85. formatter: function (cellvalue) {
  86. if (cellvalue == "1") {
  87. return "开立";
  88. } else if (cellvalue == "2") {
  89. return "审核";
  90. }
  91. else if (cellvalue == "3") {
  92. return "关闭";
  93. }
  94. else { return ""; }
  95. }
  96. },
  97. { label: '创建人', name: 'CreatePerson', width: 150, align: 'left' },
  98. { label: '创建时间', name: 'CreateDateTime', width: 100, align: 'left' },
  99. { label: '操作人', name: 'MUSER', width: 100, align: 'left' },
  100. { label: '操作人名称', name: 'MUSERName', width: 150, align: 'left' },
  101. { label: '操作时间', name: 'MTIME', width: 100, align: 'left' },
  102. ],
  103. //colModel: ColModelMan,
  104. width: "100%",
  105. autowidth: true,
  106. //shrinkToFit: true,
  107. gridComplete: function () {
  108. },
  109. pager: "#gridPager",
  110. sortname: 'MTDOCCode',
  111. sortorder: "desc",
  112. viewrecords: true,
  113. multiselect: true,
  114. beforeSelectRow: function (rowid, e) {
  115. $("#gridList").jqGrid('resetSelection');
  116. return (true);
  117. },
  118. subGrid: true, // (1)开启子表格支持
  119. subGridRowExpanded: function (subgrid_id, rowid) { // (2)子表格容器的id和需要展开子表格的行id,将传入此事件函数
  120. $("#gridList").jqGrid("setSelection", rowid, false);
  121. bindSubGrid(subgrid_id, rowid)
  122. }
  123. });
  124. $("#warehouse a.btn-default").click(function () {
  125. $("#warehouse a.btn-default").removeClass("active");
  126. $(this).addClass("active");
  127. $('#btn_search').trigger("click");
  128. });
  129. $("#btn_search").click(function () {
  130. var warehouse = $("#warehouse a.active").attr('data-value');
  131. var queryJson = {
  132. MTDOCCode: $("#txt_MTDOCCode").val(),
  133. }
  134. $gridList.jqGrid('setGridParam', {
  135. postData: { queryJson: JSON.stringify(queryJson) },
  136. }).trigger('reloadGrid');
  137. });
  138. }
  139. function bindSubGrid(subgrid_id, rowid) {
  140. debugger;
  141. $("#gridList").jqGrid("setSelection", rowid, false);
  142. var subgrid_table_id;
  143. subgrid_table_id = subgrid_id + "_t"; // (3)根据subgrid_id定义对应的子表格的table的id
  144. var subgrid_pager_id;
  145. subgrid_pager_id = subgrid_id + "_pgr" // (4)根据subgrid_id定义对应的子表格的pager的id
  146. // (5)动态添加子报表的table和pager
  147. $("#" + subgrid_id).html("<table id='" + subgrid_table_id + "' class='scroll'></table><div id='" + subgrid_pager_id + "' class='scroll'></div>");
  148. var MTDOCCode = $("#gridList").jqGrid('getRowData', rowid).MTDOCCode;
  149. //var Sequence = $("#gridList").jqGrid('getRowData', rowid).Sequence;
  150. // (6)创建jqGrid对象
  151. $("#" + subgrid_table_id).dataGrid({
  152. cellEdit: true,
  153. url: "/WMS/ICSMTDOC/GetSubGridJson?MTDOCCode=" + MTDOCCode + "&" + Math.random(), // (7)子表格数据对应的url,注意传入的contact.id参数
  154. //colModel: [
  155. // { label: "主键", name: "ID", hidden: true, key: true },
  156. // { label: "行号", name: "Sequence", width: 50, align: 'left' },
  157. // { label: '部门代码', name: 'DepCode', width: 100, align: 'left' },
  158. // { label: '部门名称', name: 'DepName', width: 100, align: 'left' },
  159. // { label: '仓库代码', name: 'WHCode', width: 100, align: 'left' },
  160. // { label: '仓库名称', name: 'WarehouseName', width: 100, align: 'left' },
  161. // { label: '条码', name: 'LotNo', width: 100, align: 'left' },
  162. // { label: '料品编码', name: 'InvCode', width: 100, align: 'left' },
  163. // { label: '料品名称', name: 'InvName', width: 100, align: 'left' },
  164. // { label: '数量', name: 'Quantity', width: 100, align: 'left' },
  165. // { label: '辅计量数量', name: 'Amount', width: 100, align: 'left' },
  166. // { label: '已转换数量', name: 'MTDOCQuantity', width: 100, align: 'left' },
  167. // { label: '转换类型', name: 'MTDOCType', width: 100, align: 'left' },
  168. //],
  169. //colModel: ColModelSub,
  170. colModel: _Clos,
  171. shrinkToFit: true,//宽度自适应
  172. multiselect: true,
  173. prmNames: { search: "search" },
  174. viewrecords: true,
  175. height: "100%",
  176. rowNum: 20,
  177. pager: subgrid_pager_id,
  178. });
  179. }
  180. function btnCreate() {
  181. debugger;
  182. $.modalOpen({
  183. id: "ICSMTDOCAdd",
  184. title: "形态转换",
  185. url: "/JHWMS/ICSMTDOC/ICSMTDOCAdd",
  186. width: "1500px",
  187. height: "1150px",
  188. callBack: function (iframeId) {
  189. top.frames[iframeId].submitForm();
  190. }
  191. });
  192. }
  193. function btnCreateByBatchCode() {
  194. debugger;
  195. $.modalOpen({
  196. id: "ICSMTDOCAddByBatchCode",
  197. title: "形态转换(批次)",
  198. url: "/WMS/ICSMTDOC/ICSMTDOCAddByBatchCode",
  199. width: "1500px",
  200. height: "1150px",
  201. callBack: function (iframeId) {
  202. top.frames[iframeId].submitForm();
  203. }
  204. });
  205. }
  206. //审核
  207. function btnAudit() {
  208. debugger;
  209. var ids = $("#gridList").jqGrid('getGridParam', 'selarrrow'); //获取 多行数据
  210. if (ids.length == 0) {
  211. $.modalAlertNew("WMS00004");
  212. return;
  213. }
  214. for (var i = 0; i < ids.length; i++) {
  215. var rowData = $("#gridList").jqGrid('getRowData', ids[i]);
  216. var MTDOCCode = rowData.MTDOCCode;
  217. if (rowData.Status == "审核") {
  218. $.modalAlert("该单据已审核,无法重复审核!");
  219. return;
  220. }
  221. }
  222. $.modalConfirm("确定审核吗?", function (r) {
  223. if (r) {
  224. $.submitForm({
  225. url: "/WMS/ICSMTDOC/ICSMTDOCAudit?MTDOCCode=" + MTDOCCode + "&" + Math.random(),
  226. //param: { keyValue: IDlist },
  227. success: function () {
  228. $.currentWindow().$("#gridList").trigger("reloadGrid");
  229. }
  230. })
  231. }
  232. });
  233. }
  234. function btnToLead() {
  235. $.modalOpen({
  236. id: "ToLead",
  237. title: "形态转换",
  238. url: "/WMS/ICSMTDOC/MetamorphosisToLead?" + Math.random(),
  239. width: "400px",
  240. height: "225px",
  241. btn: null,
  242. });
  243. }
  244. function btnDtelte() {
  245. var objArr = '';
  246. var objList = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  247. for (var i = 0; i < objList.length; i++) {
  248. var rowId = objList[i];
  249. var rowData = $("#gridList").jqGrid('getRowData', rowId);
  250. if (rowData.Status=="审核") {
  251. $.modalAlert("该单据已审核,无法删除!");
  252. return;
  253. }
  254. objArr += "'" + rowData.MTDOCCode + "',";
  255. }
  256. if (objArr == '') {
  257. $.modalAlertNew("WMS00001");
  258. return;
  259. }
  260. $.deleteForm({
  261. url: "/WMS/ICSMTDOC/DeleteICSMTDOC" + "?" + Math.random(),
  262. param: { keyValue: JSON.stringify(objArr) },
  263. success: function () {
  264. $.currentWindow().$("#gridList").trigger("reloadGrid");
  265. }
  266. })
  267. }
  268. function btnPrint() {
  269. debugger;
  270. var mold = 'XT00001';//形态转换
  271. var objArr = '';
  272. var arr = [];
  273. var obj = $("#gridList").jqGrid("getRowData");
  274. for (var i = 0; i < obj.length; i++) {
  275. var $SubGird = $("#gridList_" + obj[i].ID + "_t");
  276. var rowData = $SubGird.jqGrid('getGridParam', 'selarrrow');
  277. if (rowData != "undefined" && rowData != null && rowData.length != 0) {
  278. for (var j = 0; j < rowData.length; j++) {
  279. objArr += "'" + rowData[j] + "',";
  280. }
  281. objArr = objArr.slice(0, objArr.length - 1);
  282. objArr = "" + objArr + "|";
  283. arr.push(objArr);
  284. }
  285. }
  286. if (objArr == "") {
  287. $.modalAlertNew("WMS00101");
  288. return;
  289. }
  290. $.modalOpen({
  291. id: "PrintLot",
  292. title: "打印",
  293. url: "/WMS/Print/PrintView?Arguments=" + encodeURI(encodeURI(arr)) + "&mold=" + mold + "&" + Math.random(),
  294. width: "550px",
  295. height: "1000px",
  296. callBack: function (iframeId) {
  297. top.frames[iframeId].submitForm();
  298. }
  299. });
  300. }
  301. </script>
  302. <div class="topPanel" style="height:60px;">
  303. <div class="toolbar">
  304. <div class="btn-group">
  305. <a id="NF-Create" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnCreate()"><i class="fa fa-pencil-square-o"></i>形态转换</a>
  306. <a id="NF-CreateByBatchCode" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnCreateByBatchCode()"><i class="fa fa-pencil-square-o"></i>形态转换(批次)</a>
  307. <a id="NF-Audit" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnAudit()"><i class="fa fa-pencil-square-o"></i>审核</a>
  308. <a id="NF-ToLead" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnToLead()"><i class="fa fa-pencil-square-o"></i>导入</a>
  309. <a id="NF-Delete" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnDtelte()"><i class="fa fa-pencil-square-o"></i>删除</a>
  310. <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>
  311. <a class="btn btn-primary" onclick="$.reload()"><span class="glyphicon glyphicon-refresh"></span></a>
  312. </div>
  313. <script>$('.toolbar').authorizeButton()</script>
  314. </div>
  315. <div class="search">
  316. <table>
  317. <tr>
  318. <td style="text-align:right;"><label class="lglabel" for="txt_MTDOCCode">单据号</label>:</td>
  319. <td>
  320. <div class="input-group">
  321. <input id="txt_MTDOCCode" type="text" class="form-control" style="width: 100px;">
  322. </div>
  323. </td>
  324. <td>
  325. <span class="input-group-btn">
  326. <button id="btn_search" type="button" class="btn btn-primary"><i class="fa fa-search"></i></button>
  327. </span>
  328. </td>
  329. </tr>
  330. </table>
  331. </div>
  332. </div>
  333. <div class="gridPanel">
  334. <table id="gridList"></table>
  335. <div id="gridPager"></div>
  336. </div>