From 1ba0dbfde5634c8bf2ec20891d6b226b996f6b59 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期三, 02 九月 2026 14:24:38 +0800
Subject: [PATCH] refactor(mes): 优化MES生产扫码入库功能支持多类型扫码

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java |   24 +++++++++++++++++++++---
 1 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java
index 8a00efc..392cd33 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java
@@ -455,6 +455,8 @@
     ErrorCode WM_WAREHOUSE_HAS_WORKSTATION = new ErrorCode(1_040_700_004, "浠撳簱宸茶宸ヤ綔绔欏紩鐢紝鏃犳硶鍒犻櫎");
     ErrorCode WM_WAREHOUSE_HAS_MATERIAL_STOCK = new ErrorCode(1_040_700_005, "浠撳簱涓嬫湁搴撳瓨璁板綍锛屾棤娉曞垹闄�");
     ErrorCode WM_WAREHOUSE_IS_VIRTUAL = new ErrorCode(1_040_700_006, "铏氭嫙浠撳簱涓嶅厑璁告搷浣�");
+    ErrorCode WM_WAREHOUSE_TYPE_NOT_QUALIFIED = new ErrorCode(1_040_700_007, "鎵�閫変粨搴撲笉鏄悎鏍煎簱");
+    ErrorCode WM_QUALIFIED_WAREHOUSE_NOT_CONFIGURED = new ErrorCode(1_040_700_008, "鏈厤缃悎鏍煎簱锛岃鍏堝湪浠撳簱绠$悊涓垱寤哄苟璁剧疆浠撳簱绫诲瀷涓哄悎鏍煎簱");
 
     // ========== MES 浠撳簱绠$悊-搴撳尯锛�1-040-701-000锛� ==========
     ErrorCode WM_WAREHOUSE_LOCATION_NOT_EXISTS = new ErrorCode(1_040_701_000, "搴撳尯涓嶅瓨鍦�");
@@ -496,6 +498,12 @@
     ErrorCode WM_MATERIAL_STOCK_SELECTION_MISMATCH = new ErrorCode(1_040_703_014, "搴撳瓨璁板綍涓庢彁浜ょ殑鐗╂枡銆佹壒娆℃垨搴撲綅淇℃伅涓嶄竴鑷�");
     ErrorCode WM_MATERIAL_STOCK_QUANTITY_INVALID = new ErrorCode(1_040_703_015, "璋冩暣鏁伴噺涓嶈兘涓虹┖鎴栭浂");
     ErrorCode WM_MATERIAL_STOCK_FROZEN = new ErrorCode(1_040_703_016, "搴撳瓨璁板綍宸插喕缁擄紝鏃犳硶绉诲簱");
+    ErrorCode WM_MATERIAL_STOCK_NOT_QUALIFIED = new ErrorCode(1_040_703_017, "闈炲悎鏍煎簱瀛樹笉鍙嚭搴�");
+    ErrorCode WM_MATERIAL_STOCK_BAG_NOT_EXISTS = new ErrorCode(1_040_703_018, "搴撳瓨琚嬬爜鏄庣粏涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_BAG_DUPLICATE = new ErrorCode(1_040_703_019, "琚嬬爜({})宸插湪搴擄紝绂佹閲嶅鍏ュ簱");
+    ErrorCode WM_MATERIAL_STOCK_BAG_NOT_ACTIVE = new ErrorCode(1_040_703_020, "琚嬬爜({})涓嶅湪搴撴垨宸插嚭搴�/鎶ュ簾锛屾棤娉曟搷浣�");
+    ErrorCode WM_MATERIAL_STOCK_BAG_REQUIRED = new ErrorCode(1_040_703_021, "璇ョ墿鏂欏惎鐢ㄨ鐮佺鐞嗭紝蹇呴』鎼哄甫琚嬬爜");
+    ErrorCode WM_MATERIAL_STOCK_BAG_INSUFFICIENT = new ErrorCode(1_040_703_022, "鍦ㄥ簱琚嬬爜鏄庣粏鏁伴噺涓嶈冻锛屾棤娉曞嚭搴�");
 
     // ========== MES 浠撳簱绠$悊-鍒拌揣閫氱煡鍗曪紙1-040-704-000锛� ==========
     ErrorCode WM_ARRIVAL_NOTICE_NOT_EXISTS = new ErrorCode(1_040_704_000, "鍒拌揣閫氱煡鍗曚笉瀛樺湪");
@@ -727,6 +735,8 @@
     ErrorCode WM_PRODUCT_SALES_SCAN_STOCK_NOT_FOUND = new ErrorCode(1_040_714_105, "鎵弿鎵规鍦ㄥ悎鏍煎簱涓湭鎵惧埌瀵瑰簲搴撳瓨璁板綍");
     ErrorCode WM_PRODUCT_SALES_SCAN_NO_MATCH_LINE = new ErrorCode(1_040_714_106, "鍑哄簱鍗曚腑娌℃湁涓庤鐗╂枡/鎵规鍖归厤鐨勮");
     ErrorCode WM_PRODUCT_SALES_SCAN_BAG_ALREADY_SCANNED = new ErrorCode(1_040_714_107, "璇ヨ鐮佸凡鎵弿鍑哄簱锛岃鍕块噸澶嶆壂鎻�");
+    ErrorCode WM_PRODUCT_SALES_SCAN_BAG_NOT_QUALIFIED = new ErrorCode(1_040_714_108, "璇ヨ鐮佹湭璐ㄦ鍚堟牸锛岀姝㈠嚭搴�");
+    ErrorCode WM_PRODUCT_SALES_SCAN_PALLET_NOT_ALL_QUALIFIED = new ErrorCode(1_040_714_109, "鎵樼洏涓嬪瓨鍦ㄦ湭璐ㄦ琚嬬爜锛岀姝㈡暣鎵樺嚭搴�");
 
     // ========== MES 浠撳簱绠$悊-鏉傞」鍑哄簱鍗曪紙1-040-715-000锛� ==========
     ErrorCode WM_MISC_ISSUE_NOT_EXISTS = new ErrorCode(1_040_715_000, "鏉傞」鍑哄簱鍗曚笉瀛樺湪");
@@ -760,9 +770,6 @@
     ErrorCode WM_SALES_NOTICE_LINE_NOT_EXISTS = new ErrorCode(1_040_720_010, "鍙戣揣閫氱煡鍗曡涓嶅瓨鍦�");
     ErrorCode WM_SALES_NOTICE_LINE_EMPTY = new ErrorCode(1_040_720_011, "鍙戣揣閫氱煡鍗曡涓虹┖锛屼笉鑳芥彁浜�");
     ErrorCode WM_SALES_NOTICE_LINE_NOT_MATCH = new ErrorCode(1_040_720_012, "鍙戣揣閫氱煡鍗曡涓嶅睘浜庢寚瀹氱殑鍙戣揣閫氱煡鍗�");
-    ErrorCode WM_SALES_NOTICE_SALE_ORDER_NOT_EXISTS = new ErrorCode(1_040_720_013, "閿�鍞鍗曚笉瀛樺湪");
-    ErrorCode WM_SALES_NOTICE_SALE_ORDER_ITEM_EMPTY = new ErrorCode(1_040_720_014, "閿�鍞鍗曟槑缁嗕负绌�");
-    ErrorCode WM_SALES_NOTICE_ALREADY_EXISTS = new ErrorCode(1_040_720_015, "璇ラ攢鍞鍗曞凡鐢熸垚鍙戣揣閫氱煡鍗曪紝涓嶈兘閲嶅鐢熸垚");
 
     // ========== MES 浠撳簱绠$悊-鏉$爜閰嶇疆锛�1-040-730-000锛� ==========
     ErrorCode WM_BARCODE_CONFIG_NOT_EXISTS = new ErrorCode(1_040_730_000, "鏉$爜閰嶇疆涓嶅瓨鍦�");
@@ -877,4 +884,15 @@
     // ========== MES 鍏紑鎵爜婧簮锛�1-040-760-000锛� ==========
     ErrorCode MES_TRACE_CODE_NOT_FOUND = new ErrorCode(1_040_760_000, "鏈煡璇㈠埌璇ヨ拷婧爜锛岃鏍稿浜岀淮鐮佹垨鑱旂郴瀹樻柟");
 
+    // ========== MES 闃蹭吉闃茬獪璐�-绐滆揣棰勮锛�1-040-761-000锛� ==========
+    ErrorCode MES_TRACE_CROSS_REGION_WARNING_NOT_EXISTS = new ErrorCode(1_040_761_000, "绐滆揣棰勮璁板綍涓嶅瓨鍦�");
+    ErrorCode MES_TRACE_CROSS_REGION_STATUS_INVALID = new ErrorCode(1_040_761_001, "绐滆揣棰勮鐘舵�佹棤鏁堬紝浠呭緟澶勭悊棰勮鍙鐞�");
+    ErrorCode MES_TRACE_ANTI_CONFIG_NOT_EXISTS = new ErrorCode(1_040_761_002, "闃茬獪璐ц鍒欓厤缃笉瀛樺湪");
+    ErrorCode MES_TRACE_ANTI_CONFIG_VALUE_INVALID = new ErrorCode(1_040_761_003, "闃茬獪璐ц鍒欓厤缃�兼棤鏁堬紝浠呮敮鎸� PROVINCE/CITY");
+
+    // ========== MES 闃蹭吉闃茬獪璐�-鏁版嵁瀹屾暣鎬э紙1-040-762-000锛� ==========
+    ErrorCode MES_TRACE_INTEGRITY_RECORD_NOT_EXISTS = new ErrorCode(1_040_762_000, "鏁版嵁瀹屾暣鎬ц褰曚笉瀛樺湪锛岃鍏堝涓氬姟鏁版嵁鐢熸垚鎽樿");
+    ErrorCode MES_TRACE_INTEGRITY_BIZ_TYPE_INVALID = new ErrorCode(1_040_762_001, "鏁版嵁瀹屾暣鎬т笟鍔$被鍨嬫棤鏁堬紝浠呮敮鎸� BATCH/SALES/SCAN");
+    ErrorCode MES_TRACE_INTEGRITY_BIZ_NOT_EXISTS = new ErrorCode(1_040_762_002, "寰呮牎楠岀殑涓氬姟鏁版嵁涓嶅瓨鍦�");
+
 }

--
Gitblit v1.9.3