From 3425237a2b54ca28fc3e3c5f7c35a7fbef4e15fa Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期一, 29 十二月 2025 09:19:29 +0800
Subject: [PATCH] 1

---
 WebTM/views/车间管理/单品过站_小卫/Cj_ProcessItemStationPlatform_KeyElement_Sec.html |   81 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 80 insertions(+), 1 deletions(-)

diff --git "a/WebTM/views/\350\275\246\351\227\264\347\256\241\347\220\206/\345\215\225\345\223\201\350\277\207\347\253\231_\345\260\217\345\215\253/Cj_ProcessItemStationPlatform_KeyElement_Sec.html" "b/WebTM/views/\350\275\246\351\227\264\347\256\241\347\220\206/\345\215\225\345\223\201\350\277\207\347\253\231_\345\260\217\345\215\253/Cj_ProcessItemStationPlatform_KeyElement_Sec.html"
index 49967fe..6c73f8b 100644
--- "a/WebTM/views/\350\275\246\351\227\264\347\256\241\347\220\206/\345\215\225\345\223\201\350\277\207\347\253\231_\345\260\217\345\215\253/Cj_ProcessItemStationPlatform_KeyElement_Sec.html"
+++ "b/WebTM/views/\350\275\246\351\227\264\347\256\241\347\220\206/\345\215\225\345\223\201\350\277\207\347\253\231_\345\260\217\345\215\253/Cj_ProcessItemStationPlatform_KeyElement_Sec.html"
@@ -80,6 +80,12 @@
                                             </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锛堝叡鍥涗綅鍓嶄袱浣嶄唬琛ㄥ勾浠藉悗涓や綅浠h〃鏈堜唤锛�">
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline" style="display:none">
                                             <label class="layui-form-label" style="width: 85px;">杩芥函鍗曞彿</label>
                                             <div class="layui-input-block" style="margin-left: 120px;">
                                                 <input type="text" class="layui-input" name="HBillNo" lay-verify="HBillNo" id="HBillNo" style="background-color:#EDEDED;" readonly>
@@ -294,6 +300,7 @@
         var option = [];
         var option2 = [];
         var rowarr = [];//鍏抽敭浠舵竻鍗�
+        var previousHBarCode = "";
         //#endregion
 
         //#region 杩涘叆椤甸潰鍗冲姞杞�
@@ -341,6 +348,9 @@
                 if ($('#HProcExchBillNo').val() == "") {
                     $('#HBarCode_SN').val("");
                     return layer.alert("璇峰厛閫夋嫨娴佽浆鍗�")
+                }
+                if (!checkHSNAndDate(HBarCode_SN)) {
+                    return
                 }
 
 
@@ -607,7 +617,7 @@
                             });
                         }
 
-                        option.data = rowarr.slice();
+                        option.data = JSON.parse(JSON.stringify(rowarr));
 
                         table.render(option);
                         layer.close(indexs);
@@ -708,7 +718,74 @@
             });
             return result;
         }
+        //鏍¢獙 浜у搧鍜屽勾鏈�
+        function checkHSNAndDate(HBarCode) {
+            // 1. 鏍¢獙HBarCode闀垮害
+            if (!HBarCode || HBarCode.length < 20) {
+                layer.confirm("HBarCode闀垮害涓嶈冻20浣�");
+                return false;
+            }
 
+            // 2. 瑙f瀽HBarCode鐨勫勾鏈堟棩
+            const yearLastDigit = HBarCode[12]; // 绗�13浣嶏紙绱㈠紩12锛夛紝骞翠唤鏈�鍚庝竴浣�
+            const monthCode = HBarCode[13].toUpperCase(); // 绗�14浣嶏紝鏈堜唤锛圢-Z锛�
+
+
+            // 璁$畻骞翠唤锛堝亣璁惧綋鍓嶄笘绾紝濡�2020-2029锛�
+
+            const year = yearLastDigit;
+
+            // 璁$畻鏈堜唤锛圢=1, ..., Z=12锛�
+            const validChars = "NPQRSTUVWXYZ";
+            if (!validChars.includes(monthCode)) {
+                layer.confirm("瀛楃蹇呴』鏄� N, P-Z 涔嬩竴锛堣烦杩� O锛�");
+                return false;
+            }
+
+            // 璁$畻鏈堜唤锛歂=1, P=2, ..., Z=12
+            const month = validChars.indexOf(monthCode) + 1;
+
+
+            // 3. 鑾峰彇杈撳叆妗嗙殑骞存湀锛堟牸寮廚NMM锛屽2307琛ㄧず2023骞�7鏈堬級
+            const checkDateInput = document.getElementById("HCheckDate");
+            if (!checkDateInput) {
+                layer.confirm("鎵句笉鍒癏CheckDate杈撳叆妗�");
+                return false;
+            }
+            const inputValue = checkDateInput.value.trim();
+            if (!/^\d{4}$/.test(inputValue)) {
+                layer.confirm("杈撳叆妗嗘牸寮忛敊璇紙蹇呴』鏄疦NMM锛屽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;
+        }
 
 
         //鍔犺浇鍘嗗彶杩囩珯娓呭崟淇℃伅
@@ -816,6 +893,8 @@
                         //鍒囨崲浜у搧
                         $("#HBarCode_SN").val("");//浜у搧鐮佹枃鏈鍐呭娓呯┖
                         $("#HBarCode_Key").focus();//鍏抽敭浠舵枃鏈閫変腑
+                        option.data = JSON.parse(JSON.stringify(rowarr));
+                        table.render(option);
                         get_Display();
                     }
                     else {

--
Gitblit v1.9.1