From 7bd10d34e8a8dc2437ec8551eb511e37634d7306 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 02 十一月 2026 16:51:52 +0800
Subject: [PATCH] feat(mes): 生产计划审批改走协同办公,修复工单领料与产成品入库校验

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 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 7d567b5..1cee9fb 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
@@ -79,6 +79,12 @@
     ErrorCode MD_VENDOR_HAS_REFERENCE = new ErrorCode(1_040_104_005, "璇ヤ緵搴斿晢宸茶鍏朵粬涓氬姟寮曠敤锛屾棤娉曞垹闄�");
     ErrorCode MD_VENDOR_IS_DISABLE = new ErrorCode(1_040_104_006, "渚涘簲鍟嗗凡绂佺敤");
 
+    // ========== MES 鍩虹鏁版嵁-宸ュ巶锛�1-040-105-100锛� ==========
+    ErrorCode MD_FACTORY_NOT_EXISTS = new ErrorCode(1_040_105_100, "宸ュ巶涓嶅瓨鍦�");
+    ErrorCode MD_FACTORY_CODE_DUPLICATE = new ErrorCode(1_040_105_101, "宸ュ巶缂栫爜宸插瓨鍦�");
+    ErrorCode MD_FACTORY_NAME_DUPLICATE = new ErrorCode(1_040_105_102, "宸ュ巶鍚嶇О宸插瓨鍦�");
+    ErrorCode MD_FACTORY_HAS_WORKSHOP = new ErrorCode(1_040_105_103, "宸ュ巶涓嬪瓨鍦ㄨ溅闂达紝鏃犳硶鍒犻櫎");
+
     // ========== MES 鍩虹鏁版嵁-杞﹂棿锛�1-040-105-000锛� ==========
     ErrorCode MD_WORKSHOP_NOT_EXISTS = new ErrorCode(1_040_105_000, "杞﹂棿涓嶅瓨鍦�");
     ErrorCode MD_WORKSHOP_CODE_DUPLICATE = new ErrorCode(1_040_105_001, "杞﹂棿缂栫爜宸插瓨鍦�");
@@ -176,6 +182,7 @@
     ErrorCode DV_SUBJECT_CODE_DUPLICATE = new ErrorCode(1_040_304_001, "椤圭洰缂栫爜宸插瓨鍦�");
     ErrorCode DV_SUBJECT_USED_BY_CHECK_PLAN = new ErrorCode(1_040_304_002, "鐐规淇濆吇椤圭洰宸茶鐐规淇濆吇鏂规浣跨敤锛屾棤娉曞垹闄�");
     ErrorCode DV_SUBJECT_IS_DISABLE = new ErrorCode(1_040_304_003, "鐐规淇濆吇椤圭洰宸茬鐢�");
+    ErrorCode DV_SUBJECT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_304_004, "瀵煎叆椤圭洰鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 璁惧绠$悊-鐐规璁″垝锛�1-040-302-000锛� ==========
     ErrorCode DV_CHECK_PLAN_NOT_EXISTS = new ErrorCode(1_040_302_000, "鐐规璁″垝涓嶅瓨鍦�");
@@ -225,6 +232,12 @@
     // ========== MES 璁惧绠$悊-璁¢噺妫�娴嬭褰曪紙1-040-307-100锛� ==========
     ErrorCode DV_METERING_CHECK_NOT_EXISTS = new ErrorCode(1_040_307_100, "璁¢噺妫�娴嬭褰曚笉瀛樺湪");
     ErrorCode DV_METERING_CHECK_CODE_DUPLICATE = new ErrorCode(1_040_307_101, "璁¢噺妫�娴嬬紪鍙峰凡瀛樺湪");
+
+    // ========== MES 璁惧绠$悊-璁惧鍊熺敤褰掕繕锛�1-040-308-000锛� ==========
+    ErrorCode DV_BORROW_NOT_EXISTS = new ErrorCode(1_040_308_000, "璁惧鍊熺敤璁板綍涓嶅瓨鍦�");
+    ErrorCode DV_BORROW_CODE_DUPLICATE = new ErrorCode(1_040_308_001, "鍊熺敤鍗曞彿宸插瓨鍦�");
+    ErrorCode DV_BORROW_ALREADY_RETURNED = new ErrorCode(1_040_308_002, "璇ヨ澶囧�熷嚭璁板綍宸插綊杩橈紝鏃犻渶閲嶅褰掕繕");
+    ErrorCode DV_BORROW_MACHINERY_BORROWED = new ErrorCode(1_040_308_003, "璇ヨ澶囧皻鏈夋湭褰掕繕鐨勫�熺敤璁板綍锛岃鍏堝綊杩樺悗鍐嶅�熺敤");
 
     // ========== MES 宸ュ叿绠$悊-宸ュ叿绫诲瀷锛�1-040-400-000锛� ==========
     ErrorCode TM_TOOL_TYPE_NOT_EXISTS = new ErrorCode(1_040_400_000, "宸ュ叿绫诲瀷涓嶅瓨鍦�");
@@ -282,6 +295,8 @@
     ErrorCode PRO_WORK_ORDER_HAS_CHILDREN = new ErrorCode(1_040_502_004, "瀛樺湪瀛愬伐鍗曪紝鏃犳硶鍒犻櫎");
     ErrorCode PRO_WORK_ORDER_PRODUCT_MISMATCH = new ErrorCode(1_040_502_005, "褰撳墠浜у搧鐗╂枡涓庣敓浜у伐鍗曚骇鍝佷笉涓�鑷�");
     ErrorCode PRO_WORK_ORDER_SCHEDULE_QUANTITY_EXCEED = new ErrorCode(1_040_502_006, "鎺掍骇鏁伴噺瓒呴檺锛氬伐鍗晎}(璁″垝{}锛屽凡鎺掍骇{}锛屾湰娆℃帓浜})");
+    ErrorCode PRO_WORK_ORDER_ALREADY_STARTED = new ErrorCode(1_040_502_007, "宸ュ崟宸插惎鍔ㄧ敓浜э紝鏃犻渶閲嶅鍚姩");
+    ErrorCode PRO_WORK_ORDER_BATCH_NOT_EDITABLE = new ErrorCode(1_040_502_008, "宸ュ崟宸插畬宸ユ垨宸插彇娑堬紝鏃犳硶绠$悊鎵规");
     ErrorCode PRO_WORK_ORDER_BOM_NOT_EXISTS = new ErrorCode(1_040_502_100, "鐢熶骇宸ュ崟BOM涓嶅瓨鍦�");
 
     // ========== MES 鐢熶骇绠$悊-鐢熶骇宸ュ崟宸ュ簭锛�1-040-502-300锛� ==========
@@ -368,6 +383,10 @@
     ErrorCode PRO_MPS_HAS_WORK_ORDER = new ErrorCode(1_040_509_007, "MPS 宸插叧鑱旂敓浜у伐鍗曪紝鏃犳硶鍒犻櫎");
     ErrorCode PRO_MPS_MES_PRODUCT_NOT_EXISTS = new ErrorCode(1_040_509_008, "MES 浜у搧涓嶅瓨鍦紝鏃犳硶鍒涘缓 MPS锛屼骇鍝侊細{}");
     ErrorCode PRO_MPS_WORK_ORDER_HAS_FEEDBACK = new ErrorCode(1_040_509_009, "璇ヨ鍒掑叧鑱旂殑鐢熶骇璁㈠崟宸叉湁鎶ュ伐璁板綍锛屾棤娉曞彇娑堬紒");
+    ErrorCode PRO_MPS_NOT_APPROVED = new ErrorCode(1_040_509_011, "鍙湁宸插鏍哥姸鎬佺殑 MPS 鎵嶈兘鎵ц姝ゆ搷浣滐紝璇峰厛鎻愪氦瀹℃牳");
+    ErrorCode PRO_MPS_NO_MATERIAL_SHORTAGE = new ErrorCode(1_040_509_013, "璇ヨ鍒掓墍闇�鐗╂枡搴撳瓨鍏呰冻锛屾棤闇�鐢熸垚閲囪喘鍗�");
+    ErrorCode PRO_MPS_PROCESS_NOT_DEPLOYED = new ErrorCode(1_040_509_014, "鎻愪氦瀹℃牳澶辫触锛氱敓浜ц鍒掑鎵规祦绋�(mes-pro-mps-audit)灏氭湭閮ㄧ讲锛岃鑱旂郴绠$悊鍛樺湪銆屽崗鍚屽姙鍏� - 娴佺▼妯″瀷銆嶄腑閮ㄧ讲璇ユ祦绋嬪悗閲嶆柊鎻愪氦");
+    ErrorCode PRO_MPS_NO_MATERIAL_BOM = new ErrorCode(1_040_509_015, "鐢熶骇璁″垝{}鐨勪骇鍝併�恵}銆戝皻鏈淮鎶や骇鍝� BOM 鎴栧伐鑹鸿矾绾挎姇鏂� BOM锛屾棤娉曡绠楃墿鏂欑己鍙o紝璇峰厛鍒般�岀敓浜у熀纭�鏁版嵁 - 鐗╂枡BOM缁存姢銆嶆垨銆岀敓浜у熀纭�鏁版嵁 - 宸ヨ壓璺嚎銆嶄腑閰嶇疆鎶曟枡鍚庡啀鐢熸垚閲囪喘鐢宠鍗�");
 
     // ========== MES 璐ㄩ噺绠$悊-璐ㄦ鏂规锛�1-040-600-000锛� ==========
     ErrorCode QC_TEMPLATE_NOT_EXISTS = new ErrorCode(1_040_600_000, "璐ㄦ鏂规涓嶅瓨鍦�");
@@ -593,6 +612,10 @@
     ErrorCode WM_PRODUCT_ISSUE_DETAIL_LINE_NOT_MATCH = new ErrorCode(1_040_708_202, "鎷h揣鏄庣粏涓嶅睘浜庢寚瀹氱殑棰嗘枡鍑哄簱鍗�");
     ErrorCode WM_PRODUCT_ISSUE_NO_DETAIL = new ErrorCode(1_040_708_203, "棰嗘枡鍑哄簱鍗曟病鏈夋嫞璐ф槑缁嗭紝鏃犳硶鎵ц棰嗗嚭");
     ErrorCode WM_PRODUCT_ISSUE_TASK_NOT_EXISTS = new ErrorCode(1_040_708_204, "鐢熶骇浠诲姟涓嶅瓨鍦�");
+    ErrorCode WM_PRODUCT_ISSUE_SUPPLEMENT_REASON_REQUIRED = new ErrorCode(1_040_708_007, "琛ラ杈呮枡蹇呴』濉啓琛ラ鍘熷洜");
+    ErrorCode WM_PRODUCT_ISSUE_SUPPLEMENT_WORK_ORDER_NOT_STARTED = new ErrorCode(1_040_708_008, "宸ュ崟{}灏氭湭纭锛屾棤娉曡ˉ棰嗚緟鏂欙紝璇峰厛纭宸ュ崟");
+    ErrorCode WM_PRODUCT_ISSUE_GENERATE_BOM_EMPTY = new ErrorCode(1_040_708_009, "鐢熶骇宸ュ崟{}鐨� BOM 鐗╂枡娓呭崟涓虹┖锛屾棤娉曠敓鎴愰鏂欎换鍔�");
+    ErrorCode WM_PRODUCT_ISSUE_GENERATE_ALL_ISSUED = new ErrorCode(1_040_708_010, "鐢熶骇宸ュ崟{}鎸� BOM 搴旈鐨勭墿鏂欏凡鍏ㄩ儴棰嗚繃锛屾棤闇�閲嶅鐢熸垚棰嗘枡浠诲姟");
 
     // ========== MES 浠撳簱绠$悊-鐢熶骇鍏ュ簱鍗曪紙1-040-709-000锛� ==========
     ErrorCode WM_PRODUCT_PRODUCE_NOT_EXISTS = new ErrorCode(1_040_709_000, "鐢熶骇鍏ュ簱鍗曚笉瀛樺湪");
@@ -711,6 +734,18 @@
     ErrorCode WM_STOCK_TAKING_TASK_RESULT_NOT_EXISTS = new ErrorCode(1_040_714_119, "鐩樼偣缁撴灉涓嶅瓨鍦�");
     ErrorCode WM_STOCK_TAKING_TASK_LINE_ALREADY_TAKEN = new ErrorCode(1_040_714_120, "璇ョ洏鐐规竻鍗曡宸叉湁鐩樼偣璁板綍锛屼笉鑳介噸澶嶇洏鐐�");
     ErrorCode WM_STOCK_TAKING_TASK_NOT_FINISHED = new ErrorCode(1_040_714_121, "鍙湁宸插畬鎴愮姸鎬佺殑鐩樼偣浠诲姟鎵嶈兘澶勭悊宸紓");
+    ErrorCode WM_STOCK_TAKING_TASK_DIFFERENCE_PROCESSED = new ErrorCode(1_040_714_122, "璇ョ洏鐐逛换鍔$殑宸紓宸插鐞嗚繃锛屼笉鑳介噸澶嶈皟鏁村簱瀛�");
+    // ========== 搴撳瓨棰勮 1_040_750_xxx ==========
+    ErrorCode WM_STOCK_WARNING_RULE_NOT_EXISTS = new ErrorCode(1_040_750_000, "搴撳瓨棰勮瑙勫垯涓嶅瓨鍦�");
+    ErrorCode WM_STOCK_WARNING_ITEM_NOT_EXISTS = new ErrorCode(1_040_750_001, "鎵�閫夌墿鏂欎笉瀛樺湪");
+    ErrorCode WM_STOCK_WARNING_WAREHOUSE_NOT_EXISTS = new ErrorCode(1_040_750_002, "鎵�閫変粨搴撲笉瀛樺湪");
+    ErrorCode WM_SORT_TASK_NOT_EXISTS = new ErrorCode(1_040_750_100, "鍒嗘嫞浠诲姟涓嶅瓨鍦�");
+    ErrorCode WM_SORT_TASK_LINE_NOT_EXISTS = new ErrorCode(1_040_750_101, "鍒嗘嫞浠诲姟鏄庣粏涓嶅瓨鍦�");
+    ErrorCode WM_SORT_TASK_NOT_PENDING = new ErrorCode(1_040_750_102, "鍙湁寰呭垎鎷f垨鍒嗘嫞涓殑浠诲姟鎵嶅厑璁告鎿嶄綔");
+    ErrorCode WM_SORT_TASK_SCAN_MISMATCH = new ErrorCode(1_040_750_103, "鎵爜缁撴灉涓庡垎鎷f槑缁嗕笉鍖归厤");
+    ErrorCode WM_SORT_TASK_NOTICE_EXISTS = new ErrorCode(1_040_750_104, "璇ュ彂璐ч�氱煡鍗曞凡瀛樺湪鏈畬鎴愮殑鍒嗘嫞浠诲姟");
+    ErrorCode WM_SORT_TASK_LINE_ALREADY_SORTED = new ErrorCode(1_040_750_105, "璇ュ垎鎷f槑缁嗗凡瀹屾垚锛屼笉鑳介噸澶嶅垎鎷�");
+    ErrorCode WM_SORT_TASK_NO_STOCK = new ErrorCode(1_040_750_106, "鍙戣揣鍗曟槑缁嗗湪搴撲綅涓婃病鏈夊彲鐢ㄥ簱瀛�");
 
     // ========== MES 浠撳簱绠$悊-閿�鍞嚭搴撳崟锛�1-040-714-000锛� ==========
     ErrorCode WM_PRODUCT_SALES_NOT_EXISTS = new ErrorCode(1_040_714_000, "閿�鍞嚭搴撳崟涓嶅瓨鍦�");

--
Gitblit v1.9.3