纽威

462 lines
20 KiB

11 months 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. var ChosenList = "";
  12. var BatchStockInArea = "";
  13. $(function () {
  14. SetCols();
  15. if (Type == '1' || Type == '2' || Type == '3' || Type == '4' || Type == '5' || Type == '6' || Type == '9') {
  16. $(".HideItems").css('display', 'none');
  17. }
  18. if (Type != '9') {
  19. $(".Workorder").css('display', 'none');
  20. }
  21. if (Type != '7') {
  22. $(".txt_DNID1").css('display', 'none');
  23. }
  24. gridList();
  25. })
  26. //显示的列内容
  27. function SetCols() {
  28. $.ajax({
  29. url: "/Print/SelectColumnName?" + Math.random(),
  30. dataType: "json",
  31. async: false,
  32. success: function (data) {
  33. var cols = new Array();
  34. var collast = { label: "主键", name: "ID", hidden: true, key: true };
  35. cols.push(collast);
  36. var collast = { label: '单据号', name: 'DNCode', width: 120, align: 'left' };
  37. cols.push(collast);
  38. var collast = { label: '行号', name: 'Sequence', width: 50, align: 'left' };
  39. cols.push(collast);
  40. var collast = { label: '采购订单号', name: 'DNID', width: 120, align: 'left' };
  41. cols.push(collast);
  42. var collast = { label: '采购订单行号', name: 'DNDetailID', width: 120, align: 'left' };
  43. cols.push(collast);
  44. var collast = { label: '料品编码', name: 'InvCode', width: 120, align: 'left' };
  45. cols.push(collast);
  46. var collast = { label: '物料描述', name: 'InvoDescribe', width: 120, align: 'left' };
  47. cols.push(collast);
  48. var collast = { label: '区域', name: 'Area', width: 120, align: 'left' };
  49. cols.push(collast);
  50. var collast = { label: '仓库', name: 'WHCode', width: 50, align: 'left' };
  51. cols.push(collast);
  52. var collast = { label: '是否过账', name: 'SAPMark', width: 60, align: 'left', };
  53. cols.push(collast);
  54. var collast = { label: '检验修改日期', name: 'ModificationDate', width: 100, align: 'left' };
  55. cols.push(collast);
  56. var collast = { label: '供应商代码', name: 'VenCode', width: 120, align: 'left' };
  57. cols.push(collast);
  58. var collast = { label: '供应商名称', name: 'VenName', width: 120, align: 'left' };
  59. cols.push(collast);
  60. var collast = { label: '站点', name: 'WorkPoint', width: 50, align: 'left' };
  61. cols.push(collast);
  62. var collast = { label: '检验类型', name: 'InspectionType', width: 50, align: 'left' };
  63. cols.push(collast);
  64. var collast = { label: '不合格单号', name: 'NonconformingForm', width: 120, align: 'left' };
  65. cols.push(collast);
  66. var collast = { label: '图号', name: 'DrawingNo', width: 120, align: 'left' };
  67. cols.push(collast);
  68. var collast = { label: '图标', name: 'Version1', width: 50, align: 'left' };
  69. cols.push(collast);
  70. var collast = { label: '修改时间', name: 'ModificationDate', width: 50, align: 'left' };
  71. cols.push(collast);
  72. var collast = { label: '特殊库存标识', name: 'StockIndicator', width: 50, align: 'left', hidden: true };
  73. cols.push(collast);
  74. var collast = { label: '辅助描述', name: 'InvDesc', width: 50, align: 'left' };
  75. cols.push(collast);
  76. var collast = { label: '料品型号', name: 'InvStd', width: 150, align: 'left', hidden: true };
  77. cols.push(collast);
  78. var collast = { label: '料品单位', name: 'InvUnit', width: 50, align: 'left' };
  79. cols.push(collast);
  80. var collast = { label: '数量', name: 'Quantity', width: 100, align: 'left' };
  81. cols.push(collast);
  82. var collast = { label: '创建人', name: 'CreatePerson', width: 60, align: 'left', };
  83. cols.push(collast);
  84. var collast = { label: '创建时间', name: 'CreateDateTime', width: 100, align: 'left' };
  85. cols.push(collast);
  86. var collast = { label: '区域类型', name: 'AreaType', width: 10, align: 'left', hidden: true };
  87. cols.push(collast);
  88. if (data != null && data.length > 0) {
  89. DateList = data;
  90. for (var i = 0; i < data.length; i++) {
  91. var ColName = data[i].ColName;
  92. var ColCode = data[i].ColCode;
  93. var obj = new Array();
  94. obj = {
  95. label: ColName,
  96. name: ColCode,
  97. width: 80,
  98. align: "left"
  99. }
  100. cols.push(obj);
  101. }
  102. }
  103. _Clos = cols;
  104. }
  105. });
  106. }
  107. //*审核到货单生成条码
  108. function gridList() {
  109. debugger;
  110. var $gridList = $("#gridList");
  111. var queryJson = {
  112. POCode: $("#txt_POCode").val(),
  113. VenCode: $("#txt_VenCode").val(),
  114. VenName: $("#txt_VenName").val(),
  115. Area: $("#txt_Area").val(),
  116. Location: $("#txt_Location").val(),
  117. InvCode: $("#txt_InvCode").val(),
  118. InvName: $("#txt_InvName").val(),
  119. BatchCode: $("#txt_BatchCode").val(),
  120. Container: $("#txt_Container :checked").val(),
  121. DNID: $("#txt_DNID").val(),
  122. SAPMark: $("#txt_Post :checked").val()
  123. }
  124. $gridList.dataGrid({
  125. url: "/WMS/WMSCreateItemLot/GetGridJsonGXWX" + "?" + Math.random(),
  126. postData: { queryJson: JSON.stringify(queryJson) },
  127. height: $(window).height() - 200,
  128. width: $(window).width() - 300,
  129. colModel: _Clos,
  130. width: "100%",
  131. autowidth: true,
  132. //shrinkToFit: true,
  133. gridComplete: function () {
  134. var strIds = $("#gridList").jqGrid("getDataIDs");
  135. for (var i = 0; i < strIds.length; i++) {
  136. var IsSAPCheck = $("#gridList").jqGrid('getRowData', strIds[i]).SAPMark;
  137. if (IsSAPCheck == '是') {
  138. $("#" + strIds[i]).find("td").css("background-color", "#C7EDCC");
  139. }
  140. }
  141. if (ChosenList != "") {
  142. var Chosen = ChosenList.split(',');
  143. for (var i = 0; i < Chosen.length; i++) {
  144. $("#gridList").jqGrid('setSelection', Chosen[i]);
  145. }
  146. }
  147. },
  148. pager: "#gridPager",
  149. sortname: 'ModificationDate,DNCode',
  150. sortorder: "asc",
  151. viewrecords: true,
  152. multiselect: true,
  153. beforeSelectRow: function (rowid, e) {
  154. },
  155. subGrid: false
  156. });
  157. $("#warehouse a.btn-default").click(function () {
  158. $("#warehouse a.btn-default").removeClass("active");
  159. $(this).addClass("active");
  160. $('#btn_search').trigger("click");
  161. });
  162. $("#btn_search").click(function () {
  163. var warehouse = $("#warehouse a.active").attr('data-value');
  164. var queryJson = {
  165. POCode: $("#txt_POCode").val(),
  166. VenCode: $("#txt_VenCode").val(),
  167. VenName: $("#txt_VenName").val(),
  168. Area: $("#txt_Area").val(),
  169. Location: $("#txt_Location").val(),
  170. InvCode: $("#txt_InvCode").val(),
  171. InvName: $("#txt_InvName").val(),
  172. BatchCode: $("#txt_BatchCode").val(),
  173. Container: $("#txt_Container :checked").val(),
  174. DNID: $("#txt_DNID").val(),
  175. SAPMark: $("#txt_Post :checked").val()
  176. }
  177. $gridList.jqGrid('setGridParam', {
  178. postData: { queryJson: JSON.stringify(queryJson) },
  179. page: 1,
  180. }).trigger('reloadGrid');
  181. });
  182. }
  183. function fullscreen() {
  184. var docElm = document.documentElement;
  185. if (docElm.requestFullscreen) {
  186. docElm.requestFullscreen();
  187. } else if (docElm.mozRequestFullScreen) {
  188. docElm.mozRequestFullScreen();
  189. } else if (docElm.webkitRequestFullScreen) {
  190. docElm.webkitRequestFullScreen();
  191. } else if (docElm.msRequestFullscreen) {
  192. docElm.msRequestFullscreen();
  193. }
  194. $(window).bind('resize', function () {
  195. $("#gridList").setGridWidth($(window).width());
  196. }).trigger('resize');
  197. $(window).bind('resize', function () {
  198. $("#gridList").setGridHeight($(window).height());
  199. }).trigger('resize');
  200. }
  201. function btnPrint() {
  202. debugger;
  203. var mold = '';
  204. if (Type == '1') { mold = '00001'; }//生产退料生成条码
  205. if (Type == '2') { mold = '00002'; }//委外退料生成条码
  206. if (Type == '3') { mold = '00003'; }//工单成品生成条码
  207. if (Type == '4') { mold = '00004'; }//销售退货生成条码
  208. if (Type == '5') { mold = '00005'; }//其他入库生成条码
  209. if (Type == '6') { mold = '00006'; }//归还单生成条码
  210. if (Type == '7') { mold = '00007'; }//普通到货单生成条码
  211. if (Type == '8') { mold = '00008'; }//委外到货单生成条码
  212. if (Type == '9') { mold = '00009'; }//成品入库单生成条码
  213. if (Type == '10') { mold = '00010'; }//拒收单生成条码
  214. if (Type == '11') { mold = '00011'; }//委外拒收单生成条码
  215. if (Type == '12') { mold = '00012'; }//领料申请退料
  216. if (Type == '13') { mold = '00013'; }//材料出库退料
  217. if (Type == '14') { mold = '00014'; }//委外领料申请退料
  218. if (Type == '15') { mold = '00015'; }//委外材料出库退料
  219. if (Type == '16') { mold = '00016'; }//返工工单
  220. var objArr = '';
  221. var arr = [];
  222. var obj = $("#gridList").jqGrid("getRowData");
  223. for (var i = 0; i < obj.length; i++) {
  224. var $SubGird = $("#gridList_" + obj[i].ID + "_t");
  225. var rowData = $SubGird.jqGrid('getGridParam', 'selarrrow');
  226. if (rowData != "undefined" && rowData != null) {
  227. for (var j = 0; j < rowData.length; j++) {
  228. objArr += "'" + rowData[j] + "',";
  229. }
  230. objArr = objArr.slice(0, objArr.length - 1);
  231. objArr = "" + objArr + "|";
  232. arr.push(objArr);
  233. }
  234. }
  235. if (objArr == "") {
  236. $.modalAlertNew("WMS00101");
  237. return;
  238. }
  239. $.modalOpen({
  240. id: "PrintLot",
  241. title: "打印",
  242. url: "/WMS/Print/PrintView?Arguments=" + encodeURI(encodeURI(arr)) + "&mold=" + mold + "&" + Math.random(),
  243. width: "550px",
  244. height: "1000px",
  245. callBack: function (iframeId) {
  246. top.frames[iframeId].submitForm();
  247. }
  248. });
  249. }
  250. function btnBatchPrint() {
  251. debugger;
  252. var mold = '';
  253. var objArr = '';
  254. var arr = [];
  255. var obj = $("#gridList").jqGrid('getGridParam', 'selarrrow');
  256. mold = '00007';
  257. for (var i = 0; i < obj.length; i++) {
  258. var rowId = obj[i];
  259. var rowData = $("#gridList").jqGrid('getRowData', rowId);
  260. if (rowData != "undefined" && rowData != null) {
  261. objArr += "'" + rowId + "',";
  262. objArr = objArr.slice(0, objArr.length - 1);
  263. objArr = "" + objArr + "|";
  264. arr.push(objArr);
  265. }
  266. }
  267. if (objArr == "") {
  268. $.modalAlertNew("WMS00101");
  269. return;
  270. }
  271. $.modalOpen({
  272. id: "PrintLot",
  273. title: "打印",
  274. url: "/WMS/Print/PrintView?Arguments=" + encodeURI(encodeURI(arr)) + "&mold=" + mold + "&" + Math.random(),
  275. width: "550px",
  276. height: "1000px",
  277. callBack: function (iframeId) {
  278. top.frames[iframeId].submitForm();
  279. }
  280. });
  281. }
  282. function btnGXWXCallSAP() {
  283. var DocNOList = "";
  284. var ids = $("#gridList").jqGrid('getGridParam', 'selarrrow'); //获取 多行数据
  285. if (ids.length == 0) {
  286. $.modalAlertNew("WMS00110");
  287. return;
  288. }
  289. for (var i in ids) {
  290. DocNOList += "'" + $("#gridList").jqGrid('getRowData', ids[i]).DNCode + "',";
  291. var SAPMark = $("#gridList").jqGrid('getRowData', ids[i]).SAPMark;
  292. if (SAPMark == "是") {
  293. $.modalAlert("单据:" + $("#gridList").jqGrid('getRowData', ids[i]).DNCode + "已经过账,请勿重复操作!", "warning");
  294. return;
  295. }
  296. }
  297. if (DocNOList != "") {
  298. $.modalConfirm("确定过账工序外协检验合格单吗?", function (r) {
  299. if (r) {
  300. $.submitForm({
  301. url: "/WMS/WMSCreateItemLot/GXWXCallSAPInterFace?DocNoList=" + DocNOList,
  302. async: false,
  303. success: function () {
  304. location.reload();
  305. }
  306. })
  307. }
  308. });
  309. }
  310. }
  311. </script>
  312. <iframe id="ifrm" src="" width="0" height="0"></iframe>
  313. <script>
  314. </script>
  315. <div class="topPanel" style="height:150px;">
  316. <div class="toolbar">
  317. <div class="btn-group">
  318. <a id="NF-BatchStockIN" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnGXWXCallSAP()"><i class="fa fa-pencil-square-o"></i>工序外协过账</a>
  319. <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>
  320. <a id="NF-BatchPrint" authorize="yes" style="margin-left:3px;" class="btn btn-primary" onclick="btnBatchPrint()"><i class="fa fa-pencil-square-o"></i>批量打印</a>
  321. <a class="btn btn-primary" onclick="$.reload()"><span class="glyphicon glyphicon-refresh"></span></a>
  322. </div>
  323. <div class="btn-group" style="display:block;padding-left:2px;">
  324. <a class="btn btn-primary" id="downPrintControl" href="~/PrintActivex.exe" style="display:none">点击下载打印组件</a>
  325. </div>
  326. <script>$('.toolbar').authorizeButton()</script>
  327. </div>
  328. <div class="search">
  329. <table>
  330. <tr>
  331. <td style="text-align:right;"><label class="lglabel" for="txt_POCode">&nbsp;&nbsp;&nbsp;&nbsp;单据号</label>:</td>
  332. <td>
  333. <div class="input-group">
  334. <input id="txt_POCode" type="text" class="form-control" style="width: 100px;">
  335. </div>
  336. </td>
  337. <td style="text-align:right;" class=" txt_DNID1"><label class="lglabel" for="txt_DNID">&nbsp;&nbsp;&nbsp;&nbsp;采购订单号</label>:</td>
  338. <td class=" txt_DNID1">
  339. <div class="input-group">
  340. <input id="txt_DNID" type="text" class="form-control" style="width: 100px;">
  341. </div>
  342. </td>
  343. <td class="HideItems" style="text-align:right;"><label class="lglabel HideItems" for="txt_VenCode">&nbsp;&nbsp;&nbsp;&nbsp;供应商代码</label>:</td>
  344. <td class="HideItems">
  345. <div class="input-group HideItems">
  346. <input id="txt_VenCode" type="text" class="form-control HideItems" style="width: 100px;">
  347. </div>
  348. </td>
  349. <td class="HideItems" style="text-align:right;"><label class="lglabel HideItems" for="txt_VenName">&nbsp;&nbsp;&nbsp;&nbsp;供应商名称</label>:</td>
  350. <td class="HideItems">
  351. <div class="input-group HideItems">
  352. <input id="txt_VenName" type="text" class="form-control HideItems" style="width: 100px;">
  353. </div>
  354. </td>
  355. <td style="text-align:right;"><label class="lglabel " for="txt_Area">&nbsp;&nbsp;&nbsp;&nbsp;区域</label>:</td>
  356. <td>
  357. <div class="input-group ">
  358. <input id="txt_Area" type="text" class="form-control " style="width: 100px;">
  359. </div>
  360. </td>
  361. <td class="Workorder" style="text-align:right;"><label class="lglabel " for="txt_OrderNumber">&nbsp;&nbsp;&nbsp;&nbsp;生产订单</label>:</td>
  362. <td class="Workorder">
  363. <div class="input-group ">
  364. <input id="txt_OrderNumber" type="text" class="form-control " style="width: 100px;">
  365. </div>
  366. </td>
  367. @*<td class="Workorder" style="text-align:right;"><label class="lglabel " for="txt_Area9">&nbsp;&nbsp;&nbsp;&nbsp;存储区域</label>:</td>
  368. <td class="Workorder" >
  369. <div class="input-group ">
  370. <input id="txt_Area9" type="text" class="form-control " style="width: 100px;">
  371. </div>
  372. </td>*@
  373. </tr>
  374. <tr>
  375. <td style="text-align:right;"><label class="lglabel " for="txt_Location">&nbsp;&nbsp;&nbsp;&nbsp;仓库</label>:</td>
  376. <td>
  377. <div class="input-group ">
  378. <input id="txt_Location" type="text" class="form-control " style="width: 100px;">
  379. </div>
  380. </td>
  381. @*<td style="text-align:right;"><label class="lglabel" for="txt_Location">&nbsp;&nbsp;&nbsp;&nbsp;库存地点</label>:</td>
  382. <td>
  383. <div class="input-group">
  384. <input id="txt_Location" type="text" class="form-control" style="width: 100px;">
  385. </div>
  386. </td>*@
  387. <td style="text-align:right;"><label class="lglabel" for="txt_InvCode">&nbsp;&nbsp;&nbsp;&nbsp;料品编码</label>:</td>
  388. <td>
  389. <div class="input-group">
  390. <input id="txt_InvCode" type="text" class="form-control" style="width: 100px;">
  391. </div>
  392. </td>
  393. <td style="text-align:right;"><label class="lglabel" for="txt_InvName">&nbsp;&nbsp;&nbsp;&nbsp;物料描述</label>:</td>
  394. <td>
  395. <div class="input-group">
  396. <input id="txt_InvName" type="text" class="form-control" style="width: 100px;">
  397. </div>
  398. </td>
  399. <td style="text-align:right;"><label class="lglabel" for="txt_BatchCode">&nbsp;&nbsp;&nbsp;&nbsp;批次号</label>:</td>
  400. <td>
  401. <div class="input-group">
  402. <input id="txt_BatchCode" type="text" class="form-control" style="width: 100px;">
  403. </div>
  404. </td>
  405. <td>
  406. <label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否过账:</label>
  407. </td>
  408. <td>
  409. <div class="input-group" id="txt_Post">
  410. <input type="radio" name="post" value="是" />&nbsp;是
  411. <input type="radio" name="post" checked="checked" value="否" />&nbsp;否
  412. </div>
  413. </td>
  414. <td>
  415. <span class="input-group-btn">
  416. <button id="btn_search" type="button" class="btn btn-primary"><i class="fa fa-search"></i></button>
  417. </span>
  418. </td>
  419. </tr>
  420. </table>
  421. </div>
  422. </div>
  423. <div class="gridPanel">
  424. <table id="gridList"></table>
  425. <div id="gridPager"></div>
  426. </div>