| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="width: 85px;" id="">æ ¡éªå¹´æ:</label> |
| | | <div class="layui-input-block" style="margin-left: 120px;"> |
| | | <input type="text" class="layui-input" name="HCheckDate" lay-verify="HCheckDate" id="HCheckDate" style="background-color:#efefef4d;" placeholder="请è¾å
¥å¹´ææ ¼å¼å¦2501ï¼å
±åä½å两ä½ä»£è¡¨å¹´ä»½å两ä½ä»£è¡¨æä»½ï¼"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="display:none"> |
| | | <label class="layui-form-label" style="width: 85px;" id="">å½åæ¹æ¬¡:</label> |
| | | <div class="layui-input-block" style="margin-left: 120px;"> |
| | | <input type="text" class="layui-input" name="HBatchNo" lay-verify="HBatchNo" id="HBatchNo" style="background-color:#efefef4d;" readonly> |
| | |
| | | <label class="layui-form-label" style="width: 85px;" id="BT_HMaterNumber">ç©æç¼ç </label> |
| | | <div class="layui-input-block" style="margin-left: 120px;"> |
| | | <input type="text" class="layui-input" lay-verify="HMaterNumber" name="HMaterNumber" id="HMaterNumber" style="background-color:#efefef4d;" readonly> |
| | | <input type="hidden" class="layui-input" lay-verify="HMaterID" name="HMaterID" id="HMaterID"> |
| | | <input type="hidden" class="layui-input" lay-verify="HMaterID" name="HMaterID" id="HMaterID" value="0"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | |
| | | |
| | | <script type="text/html" id="toolbarDemo"> |
| | | <div class="layui-btn-container"> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Delete"><i class="layui-icon layui-icon-form"></i>è§£ç»</button> |
| | | <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Delete"><i class="layui-icon layui-icon-form"></i>è§£ç»</button>--> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideColumn" id="HideColumn"><i class="layui-icon layui-icon-form"></i>å设置</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="refresh" id="refresh"><i class="layui-icon layui-icon-form"></i>å·æ°</button> |
| | | </div> |
| | | </script> |
| | | </form> |
| | |
| | | , element = layui.element; |
| | | |
| | | //å®ä¹å
¨å±åé |
| | | var params = getUrlVars(); |
| | | var params = get_UrlVars(); |
| | | var HModName = "Cj_ProcessItemStationPlatform_batch"; |
| | | var option = []; |
| | | var previousHBarCode = ""; |
| | | //#endregion |
| | | |
| | | //#region è¿å
¥é¡µé¢å³å è½½ |
| | |
| | | table.on('toolbar(mainTable)', function (obj) { |
| | | switch (obj.event) { |
| | | //å é¤æé® |
| | | case 'btn-Delete': set_DeleteBill(); |
| | | case 'btn-Delete': btn_Delete(); |
| | | break; |
| | | //å设置 |
| | | case 'set_HideColumn': get_HideColumnNoPage(HModName, sessionStorage["HUserName"], option, get_Display); |
| | | break; |
| | | //å·æ° |
| | | case 'refresh': get_Display(); |
| | | break; |
| | | }; |
| | | }); |
| | | //æ¹æ¬¡ç åè½¦æ¹æ³ |
| | | $('#HBarCode_Batch').on('keydown', function (event) { |
| | | var HBarCode = $('#HBarCodeSN').val(); |
| | | var HBardCodeProcExchBillNo = $('#HBardCodeProcExchBillNo').val(); |
| | | var HBarCode = $('#HBarCode_Batch').val(); |
| | | if (event.keyCode == 13) { |
| | | if (!HBardCodeProcExchBillNo) { |
| | | layer.msg(get_MessageError("[0000-2-034]请å
æ«æµè½¬å¡ï¼", sessionStorage["HTranSlate"])) |
| | | return; |
| | | } else { |
| | | HBarCode = HBarCode.toUpperCase(); |
| | | if (!HBarCode) { |
| | | layer.msg(get_MessageError("[0000-2-019]æ¡å½¢ç ä¸è½ä¸ºç©ºï¼", sessionStorage["HTranSlate"])) |
| | | return; |
| | | } else { |
| | | if (HBarCode.length != 29 && HBarCode.length != 50) { |
| | | layer.alert(get_MessageError("[3791-2-012]åä»¶æ¡ç é¿åº¦ä¸ä¸º29使50ä½!", sessionStorage["HTranSlate"]), { icon: 5, btn: [get_MessageError('[0000-2-035]éåº', sessionStorage["HTranSlate"])], time: 100000, offset: 't' }); |
| | | return; |
| | | } |
| | | |
| | | if (HBarCode.match(/[^\x00-\xff]/g) != null) { |
| | | layer.alert(get_MessageError("[3791-2-013]å¿
é¡»æ¯åè§å符!", sessionStorage["HTranSlate"]), { icon: 5, btn: [get_MessageError('[0000-2-035]éåº', sessionStorage["HTranSlate"])], time: 100000, offset: 't' }); |
| | | return; |
| | | } |
| | | } |
| | | //妿ééç ä¸ä¸ºç©º |
| | | if (HBarCode) { |
| | | txtHBarCode_KeyDown(HBarCode); |
| | | } |
| | | for (var i = 0; i < option.data.length; i++) { |
| | | if (option.data[i]["HBatchNo"] == "") { |
| | | layer.msg(get_MessageError("[3791-2-014]å½åå·¥åºæ¹æ¬¡ä¸è½ä¸ºç©ºï¼", sessionStorage["HTranSlate"])) |
| | | return; |
| | | } |
| | | } |
| | | txtHBarCode_KeyDown(HBarCode); |
| | | |
| | | } |
| | | }); |
| | | |
| | | //ééç åè½¦æ¹æ³ |
| | | $('#HBarCode_SN').on('keydown', function (event) { |
| | | var HBarCode = $('#HBardCodeProcExchBillNo').val(); |
| | | var HBarCode_SN = $('#HBarCode_SN').val(); |
| | | if (event.keyCode == 13) { |
| | | if (!HBarCode) { |
| | | layer.msg(get_MessageError("[0000-1-057]æµè½¬å¡ä¸è½ä¸ºç©ºï¼", sessionStorage["HTranSlate"])) |
| | | return; |
| | | if ($("#HBarCode_Batch").val() == "" || $("#HBarCode_Batch").val() == null) { |
| | | layer.msg("æªæ«æ¹æ¬¡ç 请å
æ«ç "); |
| | | $("#HBarCode_Batch").focus(); |
| | | return |
| | | } |
| | | setIntervalIndex = setInterval(setIntervalList, 30000); |
| | | get_BomList(HBarCode); |
| | | //if (option.data != 0) { |
| | | // //ä¿åå°ä¸´æ¶è¡¨ |
| | | // get_AddBomTempList(); |
| | | //} |
| | | //æ¥è¯¢ä¸è¯è®°å½ |
| | | get_BadRecords(); |
| | | //æ¥è¯¢åæ ¼è®°å½ |
| | | get_HGRecords(); |
| | | |
| | | |
| | | if (!checkHSNAndDate(HBarCode_SN)) { |
| | | return |
| | | } |
| | | if (HBarCode_SN) { |
| | | txtHBarCodeSN_KeyDown(HBarCode_SN); |
| | | } |
| | | |
| | | } |
| | | }); |
| | | |
| | |
| | | form.on('submit(btnHProc)', function () { |
| | | btnHProc(); |
| | | }); |
| | | |
| | | //åæ´ |
| | | form.on('submit(btnChange)', function (data) { |
| | | $("#HBarCode_Batch").val(""); |
| | | $("#HBarCode_Batch").prop("readonly", false); |
| | | $("#HBarCode_BatchSec").val(""); |
| | | $("#HBatchNo").val(""); |
| | | $("#HMaterNumber").val(""); |
| | | $("#HMaterName").val(""); |
| | | $("#HMaterModel").val(""); |
| | | $("#HSupID").val(0) |
| | | $("#HSupName").val(0) |
| | | //è¿å
¥é¡µé¢é»è®¤å
æ 卿µè½¬å¡ä¸ |
| | | $("#HBarCode_Batch").focus(); |
| | | }); |
| | | |
| | | //éåº |
| | | form.on('submit(btnExit)', function (data) { |
| | |
| | | //åå§åçé¢ |
| | | function set_ClearBill() { |
| | | //è¿å
¥é¡µé¢é»è®¤å
æ 卿µè½¬å¡ä¸ |
| | | $("#HBardCodeProcExchBillNo").focus(); |
| | | $("#HBarCode_Batch").focus(); |
| | | //å¶å人 |
| | | $("#HMaker").val(sessionStorage["HUserName"]); |
| | | $("#HMakeDate").val(Format(new Date(), "yyyy-MM-dd")); |
| | |
| | | //åå§åè¡¨æ ¼ |
| | | set_InitGrid(); |
| | | // |
| | | //get_Display(); |
| | | get_Display(); |
| | | } |
| | | |
| | | //#region éè¿ç»å½ç¨æ·è·åé»è®¤å¼ |
| | |
| | | table.render(option); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * æ«æ¹æ¬¡ç |
| | | * @param HBarCode |
| | | */ |
| | | //æ¡ç å车æ¥è¯¢ |
| | | function txtHBarCode_KeyDown(HBarCode) { |
| | | |
| | | var HProcExchBillNo = $("#HProcExchBillNo").val(); |
| | | var indexs = layer.load(); |
| | | $.ajax({ |
| | | type: "GET", |
| | | url: GetWEBURL() + "/Cj_SingleStation/SNHBardCodeList", |
| | | url: GetWEBURL() + "/Cj_SingleStation/checkHBarCode_Batch", |
| | | async: false, |
| | | data: { "HBarCode": HBarCode, "HProcExchBillNo": HProcExchBillNo, "user": sessionStorage["HUserName"], "HOrgID": sessionStorage["OrganizationID"] }, |
| | | data: { "HBarCode": HBarCode,"user": sessionStorage["HUserName"], "HOrgID": sessionStorage["OrganizationID"] }, |
| | | dataType: "json", |
| | | success: function (data1) { |
| | | if (data1.count == 1) { |
| | | layer.close(indexs); |
| | | var index = layer.load(); |
| | | $("#HBarCode_BatchSec").val(HBarCode); |
| | | const parts = HBarCode.split('@'); |
| | | $("#HBatchNo").val(parts[2]); |
| | | |
| | | $("#HMaterNumber").val(data1.data[0]["HMaterNumber"]) |
| | | $("#HMaterName").val(data1.data[0]["HMaterName"]) |
| | | $("#HMaterModel").val(data1.data[0]["HMaterModel"]) |
| | | $("#HSupID").val(data1.data[0]["HSupID"]) |
| | | $("#HSupName").val(data1.data[0]["HSupName"]) |
| | | $("#HBarCode_Batch").prop("readonly", true); |
| | | |
| | | $.ajax({ |
| | | type: "GET", |
| | | url: GetWEBURL() + "/Cj_SingleStation/HBardCodeSNList", |
| | | async: false, |
| | | data: { "HBarCode": HBarCode, "user": sessionStorage["HUserName"] }, |
| | | dataType: "json", |
| | | success: function (data1) { |
| | | if (data1.count == 1) { |
| | | layer.close(index); |
| | | $("#HBarCode_P").val(HBarCode); |
| | | if (AllowLoadData()) { |
| | | //ä¿åæ°æ® |
| | | set_AddAssemblyBill(); |
| | | } |
| | | } |
| | | else { |
| | | layer.close(index); |
| | | layer.msg(get_MessageError(data1.Message, sessionStorage["HTranSlate"]), { icon: 5, btn: [get_MessageError('[0000-2-008]确认', sessionStorage["HTranSlate"])], time: 100000, offset: 't', skin: 'layui-layer-lan', title: get_MessageError("[0000-2-009]温馨æç¤º", sessionStorage["HTranSlate"]) }); |
| | | } |
| | | $("#HBarCodeSN").val(""); |
| | | }, |
| | | error: function (err) { |
| | | layer.close(index); |
| | | layer.msg(get_MessageError("é误:" + err, sessionStorage["HTranSlate"]), { icon: 5, btn: [get_MessageError('[0000-2-008]确认', sessionStorage["HTranSlate"])], time: 100000, offset: 't', skin: 'layui-layer-lan', title: get_MessageError("[0000-2-009]温馨æç¤º", sessionStorage["HTranSlate"]) }); |
| | | } |
| | | }); |
| | | //å
æ å¨ééç ä¸ |
| | | $("#HBarCode_SN").focus(); |
| | | } |
| | | else { |
| | | layer.close(indexs); |
| | | layer.msg(get_MessageError(data1.Message, sessionStorage["HTranSlate"])); |
| | | layer.msg(data1.Message); |
| | | } |
| | | //å
æ 跳转å°SNæ¡ç ææ¬æ¡ä¸ |
| | | //$("#HBarCodeSN").focus(); |
| | | $("#HBarCodeSN").val(""); |
| | | |
| | | }, |
| | | error: function (err) { |
| | | layer.close(indexs); |
| | |
| | | } |
| | | }); |
| | | } |
| | | /** |
| | | * æ«ééç |
| | | * @param HBarCode |
| | | */ |
| | | //ééç å车æ¥è¯¢ |
| | | function txtHBarCodeSN_KeyDown(HBarCode) { |
| | | |
| | | //var data = { |
| | | // "field": { |
| | | // "HMaterID": $("#HMaterID").val(), "HProcID": $("#HProcID").val(), "HBatchNo": $("#HBarCode_Batch").val(), |
| | | // "HGroupID": $("#HGroupID").val(), "HSourceID": $("#HSourceID").val(), |
| | | // "HICMOInterID": $("#HICMOInterID").val(), "HICMOEntryID": $("#HICMOEntryID").val(), |
| | | // "HICMOBillNo": $("#HICMOBillNo").val(), |
| | | // "HProdOrgID": sessionStorage["OrganizationID"], |
| | | // "HEmpID": $("#HEmpID").val(), "HProcExchBillNo": $("#HProcExchBillNo").val(), |
| | | // "HProcExchInterID": $("#HProcExchInterID").val(), "HProcExchEntryID": $("#HProcExchEntryID").val(), |
| | | // "HDeptID": $("#HDeptID").val() |
| | | // } |
| | | //}; |
| | | var data = { |
| | | "field": { |
| | | "HProcID": $("#HProcID").val(), "HBatchNo": $("#HBarCode_Batch").val(), |
| | | "HGroupID": $("#HGroupID").val(), "HSourceID": $("#HSourceID").val(), |
| | | "HPRDOrgID": sessionStorage["OrganizationID"], |
| | | "HEmpID": $("#HEmpID").val(), "HDeptID": $("#HDeptID").val() |
| | | } |
| | | }; |
| | | var sMainStr = JSON.stringify(data.field); |
| | | var sSubStr = HBarCode; |
| | | var sMainSub = sMainStr + ';' + sSubStr + ';' + sessionStorage["HUserName"] ; |
| | | var indexs = layer.load(); |
| | | $.ajax({ |
| | | type: "POST", |
| | | url: GetWEBURL() + "/Cj_SingleStation/AddStationOutBillList", |
| | | async: false, |
| | | data: { "sMainSub": sMainSub }, |
| | | dataType: "json", |
| | | success: function (data1) { |
| | | if (data1.count == 1) { |
| | | layer.close(indexs); |
| | | //å
æ å¨ééç ä¸ |
| | | $("#HBarCode_SN").val(""); |
| | | $("#HBarCode_SN").focus(); |
| | | $("#HReturnMessage").text("æåæ«ç ä¸ä¸ª:" + HBarCode); |
| | | get_Display(); |
| | | } |
| | | else { |
| | | $("#HBarCode_SN").val(""); |
| | | layer.close(indexs); |
| | | layer.msg(data1.Message, { icon: 5, btn: ["确认"], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "åºç°é误" }); |
| | | } |
| | | |
| | | }, |
| | | error: function (err) { |
| | | $("#HBarCode_SN").val(""); |
| | | layer.close(indexs); |
| | | layer.msg(get_MessageError("é误:" + err, sessionStorage["HTranSlate"]), { icon: 5, btn: [get_MessageError('[0000-2-008]确认', sessionStorage["HTranSlate"])], time: 100000, offset: 't', skin: 'layui-layer-lan', title: get_MessageError("[0000-2-009]温馨æç¤º", sessionStorage["HTranSlate"]) }); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | //æ ¡éª äº§ååå¹´æ |
| | | function checkHSNAndDate(HBarCode) { |
| | | // 1. æ ¡éªHBarCodeé¿åº¦ |
| | | if (!HBarCode || HBarCode.length < 20) { |
| | | layer.confirm("HBarCodeé¿åº¦ä¸è¶³20ä½"); |
| | | return false; |
| | | } |
| | | |
| | | // 2. è§£æHBarCodeçå¹´ææ¥ |
| | | const yearLastDigit = HBarCode[12]; // 第13ä½ï¼ç´¢å¼12ï¼ï¼å¹´ä»½æåä¸ä½ |
| | | const monthCode = HBarCode[13].toUpperCase(); // 第14ä½ï¼æä»½ï¼N-Zï¼ |
| | | |
| | | |
| | | // 计ç®å¹´ä»½ï¼å设å½åä¸çºªï¼å¦2020-2029ï¼ |
| | | |
| | | const year = yearLastDigit; |
| | | |
| | | // è®¡ç®æä»½ï¼N=1, ..., Z=12ï¼ |
| | | const validChars = "NPQRSTUVWXYZ"; |
| | | if (!validChars.includes(monthCode)) { |
| | | layer.confirm("å符å¿
é¡»æ¯ N, P-Z ä¹ä¸ï¼è·³è¿ Oï¼"); |
| | | return false; |
| | | } |
| | | |
| | | // è®¡ç®æä»½ï¼N=1, P=2, ..., Z=12 |
| | | const month = validChars.indexOf(monthCode) + 1; |
| | | |
| | | |
| | | // 3. è·åè¾å
¥æ¡çå¹´æï¼æ ¼å¼NNMMï¼å¦2307表示2023å¹´7æï¼ |
| | | const checkDateInput = document.getElementById("HCheckDate"); |
| | | if (!checkDateInput) { |
| | | layer.confirm("æ¾ä¸å°HCheckDateè¾å
¥æ¡"); |
| | | return false; |
| | | } |
| | | const inputValue = checkDateInput.value.trim(); |
| | | if (!/^\d{4}$/.test(inputValue)) { |
| | | layer.confirm("è¾å
¥æ¡æ ¼å¼é误ï¼å¿
é¡»æ¯NNMMï¼å¦2307ï¼"); |
| | | return false; |
| | | } |
| | | const inputYear = inputValue.substring(1, 2); // NNï¼å¦23ï¼ |
| | | const inputMonth = parseInt(inputValue.substring(2, 4), 10); // MMï¼å¦07ï¼ |
| | | |
| | | // 4. æ ¡éªå¹´ææ¯å¦ä¸è´ |
| | | if (year !== inputYear || month !== inputMonth) { |
| | | layer.confirm( |
| | | `å¹´æä¸å¹é
ï¼HBarCode=${year}å¹´${month}æï¼è¾å
¥æ¡=${inputYear}å¹´${inputMonth}æ` |
| | | ); |
| | | return false; |
| | | } |
| | | |
| | | // 5. æ ¡éªåäºä½æ¯å¦ä¸ä¸ä¸æ¬¡ä¸è´ |
| | | const currentFirstFive = HBarCode.substring(0, 5); |
| | | if (previousHBarCode) { |
| | | const previousFirstFive = previousHBarCode.substring(0, 5); |
| | | if (currentFirstFive !== previousFirstFive) { |
| | | layer.confirm( |
| | | `åäºä½ä¸ä¸è´ï¼å½å=${currentFirstFive}ï¼ä¸ä¸æ¬¡=${previousFirstFive}` |
| | | ); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | // 6. æ´æ°ä¸ä¸æ¬¡çHBarCode |
| | | previousHBarCode = HBarCode; |
| | | $("#HCheckDate").prop("readonly", true); |
| | | console.log("æ ¡éªéè¿"); |
| | | return true; |
| | | } |
| | | |
| | | //å é¤åæ® |
| | | function btn_Delete() { |
| | | var checkStatus = table.checkStatus('mainTable') |
| | | , data = checkStatus.data; |
| | | if (checkStatus.data.length === 1) { |
| | | layer.confirm(get_MessageError('[0000-1-003]ç¡®å®å é¤' + data[0].åæ®å· + 'åï¼', sessionStorage["HTranSlate"]), function (index) { |
| | | var ajaxLoad = layer.load(); |
| | | //é»è¾å 餿¹æ³ |
| | | $.ajax({ |
| | | url: GetWEBURL() + '/Cj_StationOutBill/del_StationOutBill', |
| | | type: "GET", |
| | | data: { "HInterID": data[0].hmainid, "HDeleteMan": sessionStorage["HUserName"], "HBillSubType": "3791" }, |
| | | success: function (result) { |
| | | if (result.count == 1) { |
| | | get_Display(); |
| | | layer.close(ajaxLoad); |
| | | } else { |
| | | layer.close(ajaxLoad); |
| | | layer.alert(get_MessageError(result.Message, sessionStorage["HTranSlate"]) + result.Message, { icon: 5 }); |
| | | } |
| | | }, error: function () { |
| | | layer.close(ajaxLoad); |
| | | layer.alert(get_MessageError("[0000-1-002]æ¥å£è¯·æ±å¤±è´¥!", sessionStorage["HTranSlate"]), { icon: 5 }); |
| | | } |
| | | }); |
| | | layer.close(index); |
| | | }); |
| | | } else { |
| | | layer.msg(get_MessageError('[0000-1-001]è¯·éæ©ä¸è¡æ°æ®ç¼è¾ï¼', sessionStorage["HTranSlate"])); |
| | | } |
| | | } |
| | | |
| | | //å è½½ç½æ ¼ |
| | | function get_Display() { |
| | | function get_Display(sWhere='') { |
| | | var ajaxLoad = layer.load(); |
| | | var HProcID = $("#HProcID").val(); |
| | | var HSourceID = $("#HSourceID").val(); |
| | | sWhere += ` and HProcID = ${HProcID} and HSourceID = ${HSourceID}` |
| | | $.ajax({ |
| | | url: GetWEBURL() + '/Cg_POOrderBill/list', |
| | | url: GetWEBURL() + '/Cj_SingleStation/SingleStationOutBillList', |
| | | async: false, |
| | | type: "GET", |
| | | data: { "sWhere": '', "user": sessionStorage["HUserName"] }, |
| | | data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] }, |
| | | success: function (data1) { |
| | | if (data1.count == 1) { |
| | | var data = [];//ååæ®µæ°æ® |