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.

545 lines
22 KiB

3 weeks ago
  1. @{
  2. ViewBag.Title = "Index";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. <link href="~/Content/js/select2/select2.min.css" rel="stylesheet" />
  6. <script src="~/Content/js/select2/select2.min.js"></script>
  7. <style>
  8. .formTitle {
  9. text-align: right;
  10. width: 10%;
  11. }
  12. .formActions {
  13. text-align: left;
  14. width: 15%;
  15. }
  16. .project-list table tr td {
  17. padding: 5px;
  18. }
  19. .th_classAdd {
  20. text-align: center !important;
  21. }
  22. .th_classMar {
  23. padding: 10px;
  24. vertical-align: inherit;
  25. }
  26. .ui-jqgrid .ui-jqgrid-view {
  27. height: 500px;
  28. }
  29. .ui-jqgrid .ui-jqgrid-bdiv {
  30. height: 500px !important;
  31. }
  32. .bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
  33. width: 100%;
  34. }
  35. .lr-layout-center {
  36. padding: 0 5px;
  37. }
  38. .th_classMar {
  39. padding: 0;
  40. }
  41. .lr-layout-tool {
  42. height: 50px;
  43. }
  44. .lr-layout-center .lr-layout-wrap.lr-layout-wrap-notitle {
  45. padding-top: 50px;
  46. }
  47. .wrapper .nav-tabs {
  48. padding: 0;
  49. }
  50. .webuploader-pick {
  51. padding: 7px 15px;
  52. }
  53. .table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, .table > thead > tr > th {
  54. padding: 3px;
  55. }
  56. .form .formTitle {
  57. padding-right: 8px;
  58. }
  59. .form-control, .single-line {
  60. padding: 3px;
  61. }
  62. .ibox-title {
  63. height: 20px;
  64. line-height: 20px;
  65. padding: 0;
  66. padding-left: 15px;
  67. }
  68. .table {
  69. margin-bottom: 0;
  70. }
  71. .bootstrap-select > .dropdown-toggle {
  72. height: 22px;
  73. padding: 2px 6px;
  74. }
  75. .bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:active {
  76. height: 22px;
  77. padding: 2px 6px;
  78. }
  79. .form-control, .single-line {
  80. padding: 3px;
  81. height: 22px;
  82. padding: 0 3px;
  83. }
  84. </style>
  85. <script>
  86. debugger;
  87. var InvCode = decodeURI($.request("InvCode"));
  88. var JYID = decodeURI($.request("JYID"));
  89. var SampleQuantity = $.request("SampleQuantity");
  90. var WaiveQuantity = decodeURI($.request("WaiveQuantity"));
  91. var AllNumber = $.request("AllNumber");
  92. var YLOTQTY = $.request("YLOTQTY");
  93. var NLOTQTY = $.request("NLOTQTY");
  94. var BCCode = $.request("BCCode");
  95. var BRCode = $.request("BRCode");
  96. var ResultINp = decodeURI($.request("Result"));
  97. var Type = decodeURI($.request("Type"));
  98. var LotNo = decodeURI($.request("LotNo"));
  99. var _Clos = new Array();
  100. var _ColCaption = new Array();
  101. var _ColFiledName = new Array();
  102. var _LW = new Array();
  103. var AfterLW = new Array();
  104. var SumNum = 1;
  105. var SJKSumNum = 0;
  106. $(function () {
  107. debugger;
  108. $.ajax({
  109. url: "/DHAY/DHICSRCVIQCs/GetRulesDetail?LotNo=" + LotNo,
  110. //data: { keyValue: keyValue },
  111. dataType: "json",
  112. async: false,
  113. success: function (data) {
  114. $("#txt_Lot").val(data.rows[0].LotNo);
  115. $("#txt_LotQty").val(data.rows[0].Quantity);
  116. $("#txt_RulesType").val("抽检");
  117. $("#txt_RulesCode").val(data.rows[0].RulesCode);
  118. $("#txt_InvCode").val(data.rows[0].InvCode);
  119. $("#txt_InvName").val(data.rows[0].InvName);
  120. $("#txt_InvStd").val(data.rows[0].InvStd);
  121. $("#txt_CJQty").val(SampleQuantity);
  122. }
  123. });
  124. Getcol();
  125. gridList();
  126. })
  127. function gridList() {
  128. debugger;
  129. document.getElementById("gridPanel").innerHTML = '<table id="gridList"></table> ';//重置grid
  130. var $gridList = $("#gridList");
  131. $gridList.dataGrid({
  132. url: "/DHAY/DHICSRCVIQCs/GetInventoryInspectionNew?InvCode=" + InvCode + "&" + Math.random() + "&SampleQuantity=" + SampleQuantity + "&ResultINp=" + ResultINp + "&JYID=" + JYID,
  133. height: $(window).height() - 50,
  134. width: 300,
  135. cellEdit: true,
  136. colModel: _Clos,
  137. cellsubmit: "clientArray",
  138. sortname: 'GroupCode',
  139. sortorder: "asc",
  140. viewrecords: true,
  141. rowNum: 200,
  142. loadComplete: function () {
  143. debugger;
  144. $('.ui-jqgrid-bdiv').scrollTop(0);
  145. var RowDatas = $("#gridList").jqGrid('getDataIDs');
  146. if (_LW.length > 0) {
  147. for (var i = 0; i < _LW.length; i++) {
  148. $gridList.jqGrid("setCell", _LW[i].ID, _LW[i].FiledNamekey, _LW[i].FiledNamevalue);
  149. //var SetValueMax = $("#gridList").jqGrid("getCell", _LW[i].ID, "SetValueMax");
  150. //var SetValueMin = $("#gridList").jqGrid("getCell", _LW[i].ID, "SetValueMin");
  151. //var result = $("#gridList").jqGrid("getCell", _LW[i].ID, _LW[i].FiledNamekey);
  152. //if (result >= SetValueMax && result <= SetValueMin) {
  153. // $gridList.jqGrid("setCell", _LW[i].ID, "Result", "OK");
  154. //} else {
  155. // $gridList.jqGrid("setCell", _LW[i].ID, "Result", "NG");
  156. //}
  157. }
  158. }
  159. },
  160. afterSaveCell: function (rowid, cellname, value) {
  161. if (AfterLW.length > 0) {
  162. for (var i = 0; i < AfterLW.length; i++) {
  163. /* $gridList.jqGrid("setCell", _LW[i].ID, _LW[i].FiledNamekey, _LW[i].FiledNamevalue);*/
  164. var SetValueMax = Number($("#gridList").jqGrid("getCell", AfterLW[i].ID, "SetValueMax"));
  165. var SetValueMin = Number($("#gridList").jqGrid("getCell", AfterLW[i].ID, "SetValueMin"));
  166. var result = Number($("#gridList").jqGrid("getCell", AfterLW[i].ID, AfterLW[i].FiledNamekey));
  167. if (result >= SetValueMin && result <= SetValueMax ) {
  168. $gridList.jqGrid("setCell", AfterLW[i].ID, "Result", "OK");
  169. } else {
  170. $gridList.jqGrid("setCell", AfterLW[i].ID, "Result", "NG");
  171. }
  172. }
  173. }
  174. },
  175. shrinkToFit: false,//是否列宽度自适应。true=适应 false=不适应
  176. });
  177. $("#gridList").jqGrid('setFrozenColumns');
  178. }
  179. function submitForm() {
  180. debugger;
  181. var ICSMTDOC = [];
  182. var obj_Item1 = $("#gridList");
  183. var Result = '';
  184. var rowIds_Item1 = obj_Item1.getDataIDs();
  185. if (rowIds_Item1.length > 0) {
  186. for (var i = 0; i < rowIds_Item1.length; i++) {
  187. var LWFiledName = new Array();
  188. var RowData_Item1 = obj_Item1.getRowData(rowIds_Item1[i]);
  189. var curRowData = $("#gridList").jqGrid('getRowData', RowData_Item1.ID)
  190. //if (RowData_Item1.SetValue == '') {
  191. // $.modalAlertNew("WMS00105");
  192. // return;
  193. //}
  194. //if (RowData_Item1.Result == '') {
  195. // $.modalAlertNew("WMS00105");
  196. // return;
  197. //}
  198. var ss = curRowData;
  199. if (RowData_Item1.Result == "OK") {
  200. Result = '1';
  201. } else {
  202. Result = '0';
  203. }
  204. for (var j = 0; j < _ColCaption.length; j++) {
  205. var aaa = _ColCaption[j];
  206. var bbb = _ColFiledName[j];
  207. var objFiledName = {
  208. FiledNamevalue: ss[bbb],
  209. FiledNamekey: aaa
  210. }
  211. LWFiledName.push(objFiledName);
  212. }
  213. var obj = {
  214. ID: RowData_Item1.ID,
  215. InspectionID: JYID,
  216. GroupCode: RowData_Item1.GroupCode,
  217. GroupName: RowData_Item1.GroupName,
  218. ListCode: RowData_Item1.ListCode,
  219. ListName: RowData_Item1.ListName,
  220. Unit: RowData_Item1.Unit,
  221. SetValueMax: RowData_Item1.SetValueMax,
  222. SetValueMin: RowData_Item1.SetValueMin,
  223. SetValue: RowData_Item1.UnqualifiedQuantity,
  224. Result: Result,
  225. NUM: RowData_Item1.NUM,
  226. LWFiledName: LWFiledName
  227. };
  228. ICSMTDOC.push(obj);
  229. }
  230. }
  231. if (ResultINp != "") {
  232. debugger;
  233. $.modalConfirm("确定修改吗?", function (r) {
  234. if (r) {
  235. $.submitForm({
  236. url: "/WMS/ICSRCVIQCs/UpdateICSInspectionDetailNew?JYID=" + JYID + "&" + Math.random() + "&ResultINp=" + ResultINp,
  237. param: { ICSMTDOC: JSON.stringify(ICSMTDOC) },
  238. success: function () {
  239. $.currentWindow().$("#gridList").trigger("reloadGrid");
  240. }
  241. })
  242. }
  243. });
  244. } else {
  245. debugger;
  246. $.modalConfirm("确定保存吗?", function (r) {
  247. if (r) {
  248. $.submitForm({
  249. url: "/WMS/ICSRCVIQCs/SaveICSInspectionDetailNew?InvCode=" + InvCode + "&JYID=" + JYID + "&AllNumber=" + AllNumber + "&YLOTQTY=" + YLOTQTY + "&NLOTQTY=" + NLOTQTY + "&SampleQuantity=" + SampleQuantity + "&WaiveQuantity=" + WaiveQuantity + "&BCCode=" + BCCode + "&BRCode=" + BRCode + "&" + Math.random() + "&ResultINp=" + ResultINp,
  250. param: { ICSMTDOC: JSON.stringify(ICSMTDOC), Lot: $("#txt_Lot").val(), InvCode: $("#txt_InvCode").val(), Type: Type, CJQty: $("#txt_CJQty").val() },
  251. success: function () {
  252. $.currentWindow().$("#gridList").trigger("reloadGrid");
  253. }
  254. })
  255. }
  256. });
  257. }
  258. }
  259. function Getcol() {
  260. _ColCaption = new Array();
  261. _ColFiledName = new Array();
  262. $.ajax({
  263. url: "/DHAY/DHICSRCVIQCs/SelectSORRFQColumnName?InvCode=" + InvCode + "&JYID=" + JYID+ "&" + Math.random(),
  264. dataType: "json",
  265. async: false,
  266. success: function (data) {
  267. var cols = new Array();
  268. var ColFiledName = new Array();
  269. var collast = { label: "主键", name: "ID", hidden: true, key: true };
  270. cols.push(collast);
  271. var collast = { label: '检验ID', name: 'InspectionID', hidden: true };
  272. cols.push(collast);
  273. var collast = { label: "检验项目组代码", name: "GroupCode", width: 100, align: 'left' };
  274. cols.push(collast);
  275. var collast = { label: "检验项目组名称", name: "GroupName", width: 100, align: 'left' };
  276. cols.push(collast);
  277. var collast = { label: "检验项目代码", name: "ListCode", width: 100, align: 'left' };
  278. cols.push(collast);
  279. var collast = { label: "检验项目名称", name: "ListName", width: 100, align: 'left' };
  280. cols.push(collast);
  281. var collast = { label: "单位", name: "Unit", width: 100, align: 'left' };
  282. cols.push(collast);
  283. var collast = { label: '标准上限', name: 'SetValueMax', width: 80, align: 'left' };
  284. cols.push(collast);
  285. var collast = { label: '标准下限', name: 'SetValueMin', width: 80, align: 'left' };
  286. cols.push(collast);
  287. //var collast = { label: '实际值', name: 'SetValue', width: 150, align: 'left', editable: true, editrules: { number: true } };
  288. //cols.push(collast);
  289. //var collast = { label: '是否合格', name: 'Result', width: 80, align: 'left' };
  290. //cols.push(collast);
  291. if (ResultINp != "") {
  292. if (data.length > 0) {
  293. debugger;
  294. DateList = data;
  295. if (SJKSumNum == 0) {
  296. SJKSumNum = data.length;
  297. }
  298. for (var i = 0; i < data.length; i++) {
  299. var ColCaption = data[i].ColCaption;
  300. var ColFiledName = data[i].ColFiledName;
  301. var obj = new Array();
  302. obj = {
  303. label: ColCaption,
  304. name: ColFiledName,
  305. width: 150,
  306. align: "center",
  307. sortable: false,
  308. editable: true,
  309. editrules: { number: true }
  310. }
  311. cols.push(obj);
  312. _ColCaption.push(ColCaption);
  313. _ColFiledName.push(ColFiledName);
  314. }
  315. };
  316. }
  317. if (ResultINp == "") {
  318. for (var i = 1; i < SumNum; i++) {
  319. debugger;
  320. var ColCaption = "实际值" + i;
  321. var ColFiledName = "绑定" + i;
  322. var obj = new Array();
  323. obj = {
  324. label: ColCaption,
  325. name: ColFiledName,
  326. width: 80,
  327. align: "center",
  328. sortable: false,
  329. editable: true,
  330. editrules: { number: true }
  331. }
  332. cols.push(obj);
  333. _ColCaption.push(ColCaption);
  334. _ColFiledName.push(ColFiledName);
  335. }
  336. } else {
  337. for (var i = data.length + 1; i <= SJKSumNum; i++) {
  338. debugger;
  339. var ColCaption = "实际值" + i;
  340. var ColFiledName = "绑定" + i;
  341. var obj = new Array();
  342. obj = {
  343. label: ColCaption,
  344. name: ColFiledName,
  345. width: 80,
  346. align: "center",
  347. sortable: false,
  348. editable: true,
  349. editrules: { number: true }
  350. }
  351. cols.push(obj);
  352. _ColCaption.push(ColCaption);
  353. _ColFiledName.push(ColFiledName);
  354. }
  355. }
  356. var collast = { label: '结论', name: 'Result', width: 150, align: 'left', editable: true, editrules: { number: true } };
  357. cols.push(collast);
  358. var collast = { label: '不良数', name: 'SetValue', width: 150, align: 'left', editable: true, editrules: { number: true } };
  359. cols.push(collast);
  360. _Clos = cols;
  361. }
  362. });
  363. }
  364. function AddRows_ColorFastness() {
  365. debugger;
  366. _LW = new Array();
  367. AfterLW = new Array();
  368. var obj_Item1 = $("#gridList");
  369. var rowIds_Item1 = obj_Item1.getDataIDs(); ;
  370. if (rowIds_Item1.length > 0) {
  371. for (var i = 0; i < rowIds_Item1.length; i++) {
  372. var RowData_Item1 = obj_Item1.getRowData(rowIds_Item1[i]);
  373. var curRowData = $("#gridList").jqGrid('getRowData', RowData_Item1.ID)
  374. if (_ColCaption.length > 0) {
  375. for (var j = 0; j < _ColCaption.length; j++) {
  376. var aaa = _ColCaption[j];
  377. var bbb = _ColFiledName[j];
  378. var objFiledName = {
  379. FiledNamevalue: curRowData[bbb],
  380. FiledNamekey: bbb,
  381. ID: RowData_Item1.ID
  382. }
  383. _LW.push(objFiledName);
  384. AfterLW.push(objFiledName)
  385. }
  386. } else {
  387. var objFiledName = {
  388. FiledNamevalue: "实际值1",
  389. FiledNamekey: "绑定1",
  390. ID: RowData_Item1.ID
  391. }
  392. AfterLW.push(objFiledName);
  393. }
  394. }
  395. }
  396. SumNum = SumNum + 1
  397. SJKSumNum = SJKSumNum+1
  398. Getcol();
  399. gridList();
  400. }
  401. function DelRows_ColorFastness() {
  402. $.modalOpen({
  403. id: "ICSInspectionDetailDelete",
  404. title: "删除",
  405. url: "/DHAY/DHICSRCVIQCs/ICSInspectionDetailDelete?InvCode=" + encodeURI(encodeURI(InvCode)) + "&JYID=" + encodeURI(encodeURI(JYID)) + "&" + Math.random(),
  406. width: "1500px",
  407. height: "1000px",
  408. callBack: function (iframeId) {
  409. top.frames[iframeId].submitForm();
  410. Getcol();
  411. gridList();
  412. }
  413. });
  414. }
  415. </script>
  416. <form id="form1">
  417. <div style="padding-top: 20px; margin-right: 20px;">
  418. <div class="ibox-title">
  419. 主表
  420. </div>
  421. <table class="form">
  422. <tr>
  423. <td style="text-align:right;"><label class="lglabel" for="txt_InvCode">条码批次</label>:</td>
  424. <td>
  425. <div class="input-group">
  426. <input id="txt_Lot" type="text" class="form-control" style="width: 100px;" readonly="readonly">
  427. </div>
  428. </td>
  429. <td style="width:20px"></td>
  430. <td style="text-align:right;"><label class="lglabel" for="txt_RulesCode">条码数量</label>:</td>
  431. <td>
  432. <div class="input-group">
  433. <input id="txt_LotQty" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  434. </div>
  435. </td>
  436. <td style="width:20px"></td>
  437. <td style="text-align:right;"><label class="lglabel" for="txt_RulesName">检验属性</label>:</td>
  438. <td>
  439. <div class="input-group">
  440. <input id="txt_RulesType" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  441. </div>
  442. </td>
  443. <td style="text-align:right;"><label class="lglabel" for="txt_RulesName">抽检规则代码</label>:</td>
  444. <td>
  445. <div class="input-group">
  446. <input id="txt_RulesCode" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  447. </div>
  448. </td>
  449. </tr>
  450. <tr>
  451. </tr>
  452. <tr>
  453. <td style="text-align:right;"><label class="lglabel" for="txt_InvCode">存货代码</label>:</td>
  454. <td>
  455. <div class="input-group">
  456. <input id="txt_InvCode" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  457. </div>
  458. </td>
  459. <td style="width:20px"></td>
  460. <td style="text-align:right;"><label class="lglabel" for="txt_RulesCode">存货名称</label>:</td>
  461. <td>
  462. <div class="input-group">
  463. <input id="txt_InvName" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  464. </div>
  465. </td>
  466. <td style="width:20px"></td>
  467. <td style="text-align:right;"><label class="lglabel" for="txt_RulesName">规格型号</label>:</td>
  468. <td>
  469. <div class="input-group">
  470. <input id="txt_InvStd" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  471. </div>
  472. </td>
  473. <td style="text-align:right;"><label class="lglabel" for="txt_RulesName">抽检数量</label>:</td>
  474. <td>
  475. <div class="input-group">
  476. <input id="txt_CJQty" type="text" class="form-control" style="width: 100px;"readonly="readonly">
  477. </div>
  478. </td>
  479. </tr>
  480. </table>
  481. </div>
  482. </form>
  483. @*<div class="gridPanel1" style="width: 100% ">*@
  484. <div class="ibox-title">
  485. 检验区:
  486. </div>
  487. <div class="gridPanel2">
  488. <div id="gridPager">
  489. <label class="radio-inline">
  490. <a style="margin-left:3px;" class="btn btn-next" onclick="AddRows_ColorFastness()"><i class="fa fa-plus" style="margin-right:5px"></i>新增</a>
  491. </label>
  492. <label class="radio-inline">
  493. <a style="margin-left:3px;" class="btn btn-next" onclick="DelRows_ColorFastness()"><i class="fa fa-minus" style="margin-right:5px"></i>删除</a>
  494. </label>
  495. </div>
  496. <div class="gridPanel" id="gridPanel">
  497. <table id="gridList"></table>
  498. </div>
  499. </div>
  500. @*</div>*@