From e10c196ff7348a4461e8facee10a208779244ece Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期三, 30 九月 2026 15:33:30 +0800
Subject: [PATCH] 宁夏万通需求:出库单行支持主/辅单位录入;考勤节假日配置改为时间段;物料型号维护;设备批量删除;来料检验默认方案解析

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java |   65 +++++++++++++++++++++++++++++++-
 1 files changed, 63 insertions(+), 2 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 ca229f4..552de15 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
@@ -18,6 +18,7 @@
     ErrorCode MD_ITEM_TYPE_CODE_DUPLICATE = new ErrorCode(1_040_100_005, "鍚屼竴鐖跺垎绫讳笅宸插瓨鍦ㄨ缂栫爜鐨勫垎绫�");
     ErrorCode MD_ITEM_TYPE_PARENT_IS_CHILD = new ErrorCode(1_040_100_006, "涓嶈兘璁剧疆鑷繁鐨勫瓙鍒嗙被涓虹埗鍒嗙被");
     ErrorCode MD_ITEM_TYPE_EXITS_ITEM = new ErrorCode(1_040_100_007, "璇ュ垎绫讳笅瀛樺湪鐗╂枡锛屾棤娉曞垹闄�");
+    ErrorCode MD_ITEM_TYPE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_100_008, "瀵煎叆鐨勭墿鏂欏垎绫绘暟鎹笉鑳戒负绌�");
 
     // ========== MES 鍩虹鏁版嵁-璁¢噺鍗曚綅锛�1-040-101-000锛� ==========
     ErrorCode MD_UNIT_MEASURE_NOT_EXISTS = new ErrorCode(1_040_101_000, "璁¢噺鍗曚綅涓嶅瓨鍦�");
@@ -39,6 +40,7 @@
     ErrorCode MD_ITEM_BATCH_CONFIG_NOT_EXISTS = new ErrorCode(1_040_102_100, "鐗╂枡鎵规灞炴�ч厤缃笉瀛樺湪");
     ErrorCode MD_ITEM_BATCH_CONFIG_AT_LEAST_ONE_FLAG = new ErrorCode(1_040_102_101, "鎵规绠$悊宸插惎鐢紝鑷冲皯闇�瑕侀厤缃竴涓壒娆″睘鎬�");
     ErrorCode MD_ITEM_PRODUCT_BOM_REQUIRED = new ErrorCode(1_040_102_102, "浜у搧绫荤墿鏂欏惎鐢ㄥ墠锛屽繀椤婚厤缃嚦灏戜竴涓� BOM 缁勬垚");
+    ErrorCode MD_ITEM_BATCH_CONFIG_AT_LEAST_ONE_APPROVE_FLAG = new ErrorCode(1_040_102_103, "闇�瑕侀厤缃竴涓壒娆″睘鎬�,璇峰湪瀹℃壒鎰忚涓~鍐�");
 
     // ========== MES 浠撳簱绠$悊-鎵规绠$悊锛�1-040-717-000锛� ==========
     ErrorCode WM_BATCH_PRODUCE_DATE_REQUIRED = new ErrorCode(1_040_717_000, "鎵规閰嶇疆瑕佹眰鐢熶骇鏃ユ湡涓嶈兘涓虹┖");
@@ -295,7 +297,9 @@
     ErrorCode PRO_TASK_ROUTE_PROCESS_MISMATCH = new ErrorCode(1_040_503_004, "鐢熶骇浠诲姟涓庡綋鍓嶅伐鑹鸿矾绾挎垨宸ュ簭涓嶄竴鑷�");
     ErrorCode PRO_TASK_ITEM_MISMATCH = new ErrorCode(1_040_503_005, "妫�楠岀墿鏂欎笌鐢熶骇浠诲姟鐗╂枡涓嶄竴鑷�");
     ErrorCode PRO_TASK_HAS_FEEDBACK = new ErrorCode(1_040_503_006, "璇ヤ换鍔′笅瀛樺湪鎶ュ伐璁板綍锛屾棤娉曞垹闄わ紙閬垮厤鎶ュ伐杩芥函鏂摼锛�");
-    ErrorCode PRO_WORKSTATION_PROCESS_MISMATCH = new ErrorCode(1_040_503_006, "宸ヤ綔绔欐墍灞炲伐搴忎笌褰撳墠宸ュ簭涓嶄竴鑷�");
+    ErrorCode PRO_WORKSTATION_PROCESS_MISMATCH = new ErrorCode(1_040_503_009, "宸ヤ綔绔欐墍灞炲伐搴忎笌褰撳墠宸ュ簭涓嶄竴鑷�"); // 淇缂栧彿鍐茬獊
+    ErrorCode PRO_TASK_CANNOT_PAUSE = new ErrorCode(1_040_503_007, "鍙湁銆愮敓浜т腑銆戞垨銆愰儴鍒嗗畬鎴愩�戠殑浠诲姟鍙互鍋滃伐");
+    ErrorCode PRO_TASK_NOT_PAUSED = new ErrorCode(1_040_503_008, "浠诲姟涓嶅浜庛�愬凡鍋滃伐銆戠姸鎬侊紝鏃犳硶澶嶅伐");
     // ========== MES 鐢熶骇绠$悊-鐢熶骇浠诲姟鎶曟枡锛�1-040-503-100锛� ==========
     ErrorCode PRO_TASK_ISSUE_NOT_EXISTS = new ErrorCode(1_040_503_100, "鐢熶骇浠诲姟鎶曟枡璁板綍涓嶅瓨鍦�");
 
@@ -323,6 +327,11 @@
     ErrorCode PRO_FEEDBACK_QUALIFIED_UNQUALIFIED_REQUIRED = new ErrorCode(1_040_506_011, "璇疯緭鍏ュ悎鏍煎搧鍜屼笉鑹搧鏁伴噺锛屼笖鍚堣椤诲ぇ浜� 0");
     ErrorCode PRO_FEEDBACK_UNCHECK_QUANTITY_EXISTS = new ErrorCode(1_040_506_012, "褰撳墠鎶ュ伐鍗曟湭瀹屾垚妫�楠岋紙寰呮鏁伴噺锛歿}锛夛紝鏃犳硶鎵ц鎶ュ伐");
     ErrorCode PRO_FEEDBACK_BACKFLUSH_BOM_REQUIRED = new ErrorCode(1_040_506_013, "褰撳墠宸ュ簭涓哄�掑啿宸ュ簭锛屼絾鏈厤缃瓸OM娑堣�楋紝鏃犳硶鎶ュ伐");
+    ErrorCode PRO_FEEDBACK_CANNOT_CREATE_WHEN_PAUSED = new ErrorCode(1_040_506_014, "鐢熶骇浠诲姟澶勪簬鍋滃伐鐘舵�侊紝鏃犳硶鎶ュ伐");
+    ErrorCode PRO_FEEDBACK_PENDING_PRODUCE_UNREPAIRABLE = new ErrorCode(1_040_506_015,
+            "鎶ュ伐瀵瑰簲鐨勪骇鍑哄叆搴撳崟宸插瓨鍦ㄥ鐞嗙粨鏋滐紝鏃犳硶鑷姩琛ョ敓鎴愬緟妫�琛岋紝璇疯繍琛岃川妫�鎶ュ伐鏁版嵁淇鑴氭湰鏍稿");
+    ErrorCode PRO_FEEDBACK_PREV_PROCESS_NOT_FINISHED = new ErrorCode(1_040_506_016,
+            "涓婁竴閬撳伐搴忋�寋}銆嶅皻鏈姤宸ュ畬鎴愶紙鍓╀綑 {}锛夛紝璇峰厛瀹屾垚涓婁竴閬撳伐搴忕殑鎶ュ伐");
 
     // ========== MES 鐢熶骇绠$悊-鐢熶骇娴佽浆鍗★紙1-040-507-000锛� ==========
     ErrorCode PRO_CARD_NOT_EXISTS = new ErrorCode(1_040_507_000, "鐢熶骇娴佽浆鍗′笉瀛樺湪");
@@ -347,6 +356,7 @@
     ErrorCode PRO_MPS_CODE_DUPLICATE = new ErrorCode(1_040_509_006, "MPS 缂栫爜宸插瓨鍦�");
     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, "璇ヨ鍒掑叧鑱旂殑鐢熶骇璁㈠崟宸叉湁鎶ュ伐璁板綍锛屾棤娉曞彇娑堬紒");
 
     // ========== MES 璐ㄩ噺绠$悊-璐ㄦ鏂规锛�1-040-600-000锛� ==========
     ErrorCode QC_TEMPLATE_NOT_EXISTS = new ErrorCode(1_040_600_000, "璐ㄦ鏂规涓嶅瓨鍦�");
@@ -362,6 +372,12 @@
     ErrorCode QC_INDICATOR_CODE_DUPLICATE = new ErrorCode(1_040_601_001, "璐ㄦ鎸囨爣缂栫爜宸插瓨鍦�");
     ErrorCode QC_INDICATOR_NAME_DUPLICATE = new ErrorCode(1_040_601_002, "璐ㄦ鎸囨爣鍚嶇О宸插瓨鍦�");
     ErrorCode QC_INDICATOR_RESULT_SPECIFICATION_REQUIRED = new ErrorCode(1_040_601_003, "缁撴灉鍊煎睘鎬т笉鑳戒负绌�");
+    ErrorCode QC_INDICATOR_PARENT_NOT_EXISTS = new ErrorCode(1_040_601_004, "鐖舵寚鏍囦笉瀛樺湪");
+    ErrorCode QC_INDICATOR_PARENT_NOT_GROUP = new ErrorCode(1_040_601_005, "鐖舵寚鏍囦笉鏄垎缁勯」");
+    ErrorCode QC_INDICATOR_PARENT_SELF = new ErrorCode(1_040_601_006, "鐖舵寚鏍囦笉鑳芥槸鑷繁");
+    ErrorCode QC_INDICATOR_GROUP_CANNOT_NEST = new ErrorCode(1_040_601_007, "鍒嗙粍椤逛笉鑳芥寕鍦ㄥ叾瀹冩寚鏍囦笅");
+    ErrorCode QC_INDICATOR_HAS_CHILDREN = new ErrorCode(1_040_601_008, "璇ユ寚鏍囦笅宸叉湁瀛愰」");
+    ErrorCode QC_INDICATOR_RESULT_TYPE_REQUIRED = new ErrorCode(1_040_601_009, "褰曞叆椤圭殑缁撴灉鍊肩被鍨嬩笉鑳戒负绌�");
 
     // ========== MES 璐ㄩ噺绠$悊-缂洪櫡绫诲瀷锛�1-040-602-000锛� ==========
     ErrorCode QC_DEFECT_NOT_EXISTS = new ErrorCode(1_040_602_000, "缂洪櫡绫诲瀷涓嶅瓨鍦�");
@@ -377,6 +393,9 @@
     ErrorCode QC_NO_TEMPLATE_FOR_ITEM = new ErrorCode(1_040_603_008, "鐗╂枡銆恵}銆戞湭閰嶇疆 IQC 妫�娴嬫ā鏉匡紝璇峰厛鍦ㄨ川閲忕鐞嗕腑閰嶇疆");
     ErrorCode QC_IQC_SOURCE_DOC_PARAMS_MISSING = new ErrorCode(1_040_603_006, "鏉ユ簮鍗曟嵁绫诲瀷闈炵┖鏃讹紝鏉ユ簮鍗曟嵁 ID 鍜屾潵婧愬崟鎹 ID 涓嶈兘涓虹┖");
     ErrorCode QC_IQC_CHECK_RESULT_EMPTY = new ErrorCode(1_040_603_007, "瀹屾垚妫�楠屽崟鍓嶏紝妫�娴嬬粨鏋滃繀椤诲~鍐�");
+    ErrorCode QC_IQC_TEMPLATE_IS_DISABLE = new ErrorCode(1_040_603_009, "鎵�閫夎川妫�鏂规銆恵}銆戝凡绂佺敤锛岃閲嶆柊閫夋嫨宸插惎鐢ㄧ殑璐ㄦ鏂规");
+    ErrorCode QC_IQC_TEMPLATE_TYPE_NOT_MATCH = new ErrorCode(1_040_603_010, "鎵�閫夎川妫�鏂规銆恵}銆戠殑妫�娴嬬绫讳笉鍖呭惈鏉ユ枡妫�楠岋紝璇烽噸鏂伴�夋嫨妫�娴嬬绫诲寘鍚潵鏂欐楠岀殑璐ㄦ鏂规");
+    ErrorCode QC_IQC_NO_ENABLED_TEMPLATE = new ErrorCode(1_040_603_011, "绯荤粺涓病鏈夊惎鐢ㄧ殑鏉ユ枡妫�楠岋紙IQC锛夎川妫�鏂规锛屾棤娉曡嚜鍔ㄧ敓鎴愭楠屽崟锛氳鍏堝湪銆愯川閲忕鐞�-璐ㄦ鏂规銆戜腑鏂板缓鎴栧惎鐢ㄤ竴涓娴嬬绫诲寘鍚潵鏂欐楠岀殑鏂规");
     // ========== MES 璐ㄩ噺绠$悊-鏉ユ枡妫�楠岃锛�1-040-603-100锛� ==========
     ErrorCode QC_IQC_LINE_NOT_EXISTS = new ErrorCode(1_040_603_100, "鏉ユ枡妫�楠岃涓嶅瓨鍦�");
 
@@ -480,9 +499,33 @@
     ErrorCode WM_TRANSACTION_LIST_EMPTY = new ErrorCode(1_040_703_011, "搴撳瓨浜嬪姟鍒楄〃涓嶈兘涓虹┖");
     ErrorCode WM_TRANSACTION_BATCH_NOT_EXISTS = new ErrorCode(1_040_703_012, "鎵规璁板綍涓嶅瓨鍦�");
     ErrorCode WM_MATERIAL_STOCK_REQUIRED = new ErrorCode(1_040_703_013, "搴撳瓨璁板綍涓嶈兘涓虹┖");
-    ErrorCode WM_MATERIAL_STOCK_SELECTION_MISMATCH = new ErrorCode(1_040_703_014, "搴撳瓨璁板綍涓庢彁浜ょ殑鐗╂枡銆佹壒娆℃垨搴撲綅淇℃伅涓嶄竴鑷�");
+    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_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_703_017, "瀵煎叆鐨勫簱瀛樻暟鎹笉鑳戒负绌�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_FIELD_REQUIRED = new ErrorCode(1_040_703_018, "{}涓嶈兘涓虹┖");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_ITEM_NOT_EXISTS = new ErrorCode(1_040_703_019, "鐗╂枡缂栫爜({})涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_WAREHOUSE_NOT_EXISTS = new ErrorCode(1_040_703_020, "浠撳簱({})涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_LOCATION_NOT_EXISTS = new ErrorCode(1_040_703_021, "搴撳尯({})涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_AREA_NOT_EXISTS = new ErrorCode(1_040_703_022, "搴撲綅({})涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_BATCH_NOT_EXISTS = new ErrorCode(1_040_703_023, "鎵规({})涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_VENDOR_NOT_EXISTS = new ErrorCode(1_040_703_024, "渚涘簲鍟�({})涓嶅瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_QUANTITY_INVALID = new ErrorCode(1_040_703_025, "鍦ㄥ簱鏁伴噺({})鏃犳晥");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_EXISTS = new ErrorCode(1_040_703_026, "搴撳瓨璁板綍宸插瓨鍦�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_OPERATION_INVALID = new ErrorCode(1_040_703_027, "鎿嶄綔绫诲瀷({})涓嶆敮鎸�");
+    ErrorCode WM_MATERIAL_STOCK_IMPORT_STOCK_NOT_EXISTS = new ErrorCode(1_040_703_028, "搴撳瓨璁板綍涓嶅瓨鍦紝鏃犳硶鎵ц璇ユ搷浣�");
+
+    // ---- 涓昏緟鍗曚綅鎹㈢畻锛堢粨鍚堢墿鏂欏瀷鍙凤級 ----
+    ErrorCode WM_ITEM_UNIT_CONVERT_NOT_CONFIGURED = new ErrorCode(1_040_703_029,
+            "鐗╂枡銆恵}-{}銆戞病鏈夐厤缃閲忓崟浣嶃�恵}銆戝埌涓诲崟浣嶃�恵}銆戠殑鎹㈢畻姣旂巼锛屾棤娉曟崲绠楋紝璇峰厛鍒般�愬熀纭�鏁版嵁-鐗╂枡涓绘暟鎹�-鍨嬪彿銆戜负璇ョ墿鏂欐柊澧炲瀷鍙峰苟濉啓鎹㈢畻姣旂巼");
+    ErrorCode WM_ITEM_UNIT_CONVERT_MODEL_UNIT_MISMATCH = new ErrorCode(1_040_703_030,
+            "鎵�閫夊瀷鍙枫�恵}銆戠殑璁¢噺鍗曚綅鏄�恵}銆戯紝涓庢湰娆″綍鍏ュ崟浣嶃�恵}銆戜笉涓�鑷达紝璇烽噸鏂伴�夋嫨鍨嬪彿鎴栨敼鍥炲瀷鍙峰搴旂殑璁¢噺鍗曚綅");
+    ErrorCode WM_ITEM_UNIT_CONVERT_QUANTITY_REQUIRED = new ErrorCode(1_040_703_031,
+            "璁¢噺鍗曚綅銆恵}銆戜笉鏄墿鏂欍�恵}-{}銆戠殑涓诲崟浣嶏紝鎸夎鍗曚綅褰曞叆鏃跺綍鍏ユ暟閲忎笉鑳戒负绌猴紝璇峰~鍐欏綍鍏ユ暟閲忔垨鏀圭敤涓诲崟浣嶃�恵}銆�");
+    ErrorCode WM_ITEM_UNIT_CONVERT_MODEL_REQUIRED = new ErrorCode(1_040_703_032,
+            "璁¢噺鍗曚綅銆恵}銆戠殑鎹㈢畻姣旂巼鐢卞瀷鍙峰喅瀹氾紝璇峰厛閫夋嫨鐗╂枡銆恵}-{}銆戠殑鍨嬪彿鍚庡啀褰曞叆鏁伴噺");
+    ErrorCode WM_ITEM_UNIT_CONVERT_RATE_INVALID = new ErrorCode(1_040_703_033,
+            "鍨嬪彿銆恵}銆戠殑鎹㈢畻姣旂巼涓恒�恵}銆戜笉鍚堢悊锛�1 涓瀷鍙峰崟浣嶅繀椤诲搴斿ぇ浜� 0 鐨勪富鍗曚綅鏁伴噺锛岃鍒般�愬熀纭�鏁版嵁-鐗╂枡涓绘暟鎹�-鍨嬪彿銆戜慨姝h鍨嬪彿鐨勬崲绠楁瘮鐜�");
 
     // ========== MES 浠撳簱绠$悊-鍒拌揣閫氱煡鍗曪紙1-040-704-000锛� ==========
     ErrorCode WM_ARRIVAL_NOTICE_NOT_EXISTS = new ErrorCode(1_040_704_000, "鍒拌揣閫氱煡鍗曚笉瀛樺湪");
@@ -513,6 +556,8 @@
             "鍏ュ簱鍗曞叧鑱斾簡鍒拌揣閫氱煡鍗曪紝蹇呴』閫夋嫨鍒拌揣閫氱煡鍗曡");
     ErrorCode WM_ITEM_RECEIPT_LINE_ARRIVAL_NOTICE_LINE_NOT_ALLOWED = new ErrorCode(1_040_705_102,
             "鍏ュ簱鍗曟湭鍏宠仈鍒拌揣閫氱煡鍗曪紝涓嶈兘閫夋嫨鍒拌揣閫氱煡鍗曡");
+    ErrorCode WM_ITEM_RECEIPT_LINE_QUANTITY_REQUIRED = new ErrorCode(1_040_705_103,
+            "璇峰~鍐欏叆搴撴暟閲忥紝鎴栭�夋嫨褰曞叆鍗曚綅骞跺~鍐欏綍鍏ユ暟閲忓悗鐢辩郴缁熻嚜鍔ㄦ崲绠�");
     ErrorCode WM_ITEM_RECEIPT_DETAIL_NOT_EXISTS = new ErrorCode(1_040_705_200, "閲囪喘鍏ュ簱鏄庣粏涓嶅瓨鍦�");
     ErrorCode WM_ITEM_RECEIPT_DETAIL_QUANTITY_EXCEED = new ErrorCode(1_040_705_202, "涓婃灦鏄庣粏鎬绘暟閲忎笉鑳借秴杩囪鍏ュ簱鏁伴噺");
     ErrorCode WM_ITEM_RECEIPT_BATCH_REQUIRED = new ErrorCode(1_040_705_203, "鐗╂枡銆恵}-{}銆戝凡寮�鍚壒娆$鐞嗭紝涓婃灦鏄庣粏鐨勬壒娆″彿涓嶈兘涓虹┖");
@@ -533,6 +578,8 @@
     ErrorCode WM_OUTSOURCE_ISSUE_CANCEL_NOT_ALLOWED = new ErrorCode(1_040_707_007, "宸插畬鎴愭垨宸插彇娑堢殑鍙戞枡鍗曚笉鍏佽鍙栨秷");
     ErrorCode WM_OUTSOURCE_ISSUE_LINE_NOT_EXISTS = new ErrorCode(1_040_707_100, "澶栧崗鍙戞枡鍗曡涓嶅瓨鍦�");
     ErrorCode WM_OUTSOURCE_ISSUE_LINE_ITEM_NOT_IN_BOM = new ErrorCode(1_040_707_101, "鍙戞枡鍗曡瀵瑰簲鐨勭墿鏂欎笉鍦ㄥ綋鍓嶅伐鍗曠殑 BOM 鍒楄〃涓�");
+    ErrorCode WM_OUTSOURCE_ISSUE_LINE_QUANTITY_REQUIRED = new ErrorCode(1_040_707_102,
+            "璇峰~鍐欏嚭搴撴暟閲忥紝鎴栭�夋嫨褰曞叆鍗曚綅骞跺~鍐欏綍鍏ユ暟閲忓悗鐢辩郴缁熻嚜鍔ㄦ崲绠�");
     ErrorCode WM_OUTSOURCE_ISSUE_DETAIL_NOT_EXISTS = new ErrorCode(1_040_707_200, "澶栧崗鍙戞枡鍗曟槑缁嗕笉瀛樺湪");
     ErrorCode WM_OUTSOURCE_ISSUE_DETAIL_LINE_NOT_MATCH = new ErrorCode(1_040_707_201, "鎷h揣鏄庣粏涓嶅睘浜庢寚瀹氱殑澶栧崗鍙戞枡鍗�");
     ErrorCode WM_OUTSOURCE_ISSUE_DETAIL_ITEM_MISMATCH = new ErrorCode(1_040_707_202, "鎷h揣鏄庣粏鐨勭墿鏂欎笌澶栧崗鍙戞枡鍗曡鐨勭墿鏂欎笉涓�鑷�");
@@ -549,6 +596,8 @@
     ErrorCode WM_PRODUCT_ISSUE_LINE_NOT_EXISTS = new ErrorCode(1_040_708_100, "鐢熶骇棰嗘枡鍑哄簱鍗曡涓嶅瓨鍦�");
     ErrorCode WM_PRODUCT_ISSUE_LINE_ITEM_NOT_IN_BOM = new ErrorCode(1_040_708_101, "褰撳墠鐗╂枡涓嶅湪鐢熶骇宸ュ崟鐨� BOM 鐗╂枡娓呭崟涓�");
     ErrorCode WM_PRODUCT_ISSUE_CODE_DUPLICATE = new ErrorCode(1_040_708_102, "棰嗘枡鍑哄簱鍗曠紪鐮佸凡瀛樺湪");
+    ErrorCode WM_PRODUCT_ISSUE_LINE_QUANTITY_REQUIRED = new ErrorCode(1_040_708_103,
+            "璇峰~鍐欏嚭搴撴暟閲忥紝鎴栭�夋嫨褰曞叆鍗曚綅骞跺~鍐欏綍鍏ユ暟閲忓悗鐢辩郴缁熻嚜鍔ㄦ崲绠�");
     ErrorCode WM_PRODUCT_ISSUE_DETAIL_NOT_EXISTS = new ErrorCode(1_040_708_200, "鐢熶骇棰嗘枡鍑哄簱鍗曟槑缁嗕笉瀛樺湪");
     ErrorCode WM_PRODUCT_ISSUE_DETAIL_ITEM_MISMATCH = new ErrorCode(1_040_708_201, "鎷h揣鏄庣粏鐨勭墿鏂欎笌棰嗘枡鍗曡鐨勭墿鏂欎笉涓�鑷�");
     ErrorCode WM_PRODUCT_ISSUE_DETAIL_LINE_NOT_MATCH = new ErrorCode(1_040_708_202, "鎷h揣鏄庣粏涓嶅睘浜庢寚瀹氱殑棰嗘枡鍑哄簱鍗�");
@@ -609,9 +658,14 @@
     ErrorCode WM_RETURN_VENDOR_NO_DETAIL = new ErrorCode(1_040_711_006, "渚涘簲鍟嗛��璐у崟娌℃湁鎷h揣鏄庣粏锛屾棤娉曟墽琛岄��璐�");
     ErrorCode WM_RETURN_VENDOR_DETAIL_ITEM_MISMATCH = new ErrorCode(1_040_711_007, "鎷h揣鏄庣粏鐨勭墿鏂欎笌閫�璐у崟琛岀殑鐗╂枡涓嶄竴鑷�");
     ErrorCode WM_RETURN_VENDOR_LINE_NOT_EXISTS = new ErrorCode(1_040_711_100, "渚涘簲鍟嗛��璐у崟琛屼笉瀛樺湪");
+    ErrorCode WM_RETURN_VENDOR_LINE_QUANTITY_REQUIRED = new ErrorCode(1_040_711_101,
+            "璇峰~鍐欓��璐ф暟閲忥紝鎴栭�夋嫨褰曞叆鍗曚綅骞跺~鍐欏綍鍏ユ暟閲忓悗鐢辩郴缁熻嚜鍔ㄦ崲绠�");
     ErrorCode WM_RETURN_VENDOR_DETAIL_NOT_EXISTS = new ErrorCode(1_040_711_200, "渚涘簲鍟嗛��璐у崟鏄庣粏涓嶅瓨鍦�");
     ErrorCode WM_RETURN_VENDOR_DETAIL_QUANTITY_INVALID = new ErrorCode(1_040_711_201, "閫�璐ф槑缁嗘暟閲忓繀椤诲ぇ浜� 0");
     ErrorCode WM_RETURN_VENDOR_DETAIL_LINE_NOT_MATCH = new ErrorCode(1_040_711_202, "鎷h揣鏄庣粏涓嶅睘浜庢寚瀹氱殑渚涘簲鍟嗛��璐у崟");
+    ErrorCode WM_RETURN_VENDOR_PURCHASE_ORDER_REQUIRED = new ErrorCode(1_040_711_008, "璇峰厛閫夋嫨閲囪喘璁㈠崟");
+    ErrorCode WM_RETURN_VENDOR_PURCHASE_ORDER_NO_ITEM = new ErrorCode(1_040_711_009, "閲囪喘璁㈠崟鏃犳槑缁嗘暟鎹紝鏃犳硶甯﹀叆鐗╂枡");
+    ErrorCode WM_RETURN_VENDOR_ITEM_NOT_IN_PURCHASE_ORDER = new ErrorCode(1_040_711_010, "閫�璐х墿鏂欎笉鍦ㄦ墍鍏宠仈閲囪喘璁㈠崟鍐咃紝鏃犳硶娣诲姞");
 
     // ========== MES 浠撳簱绠$悊-浜у搧鏀惰揣鍗曪紙1-040-712-000锛� ==========
     ErrorCode WM_PRODUCT_RECPT_NOT_EXISTS = new ErrorCode(1_040_712_000, "浜у搧鏀惰揣鍗曚笉瀛樺湪");
@@ -702,6 +756,8 @@
             "鍑哄簱琛屾壒娆″彿涓庡彂璐ч�氱煡鍗曡鎵规鍙蜂笉涓�鑷�");
     ErrorCode WM_PRODUCT_SALES_LINE_NOTICE_LINE_OQC_MISMATCH = new ErrorCode(1_040_714_033,
             "鍑哄簱琛� OQC 妫�楠屾爣璇嗕笌鍙戣揣閫氱煡鍗曡涓嶄竴鑷�");
+    ErrorCode WM_PRODUCT_SALES_LINE_QUANTITY_REQUIRED = new ErrorCode(1_040_714_034,
+            "璇峰~鍐欏嚭搴撴暟閲忥紝鎴栭�夋嫨褰曞叆鍗曚綅骞跺~鍐欏綍鍏ユ暟閲忓悗鐢辩郴缁熻嚜鍔ㄦ崲绠�");
 
     // ========== MES 浠撳簱绠$悊-鏉傞」鍑哄簱鍗曪紙1-040-715-000锛� ==========
     ErrorCode WM_MISC_ISSUE_NOT_EXISTS = new ErrorCode(1_040_715_000, "鏉傞」鍑哄簱鍗曚笉瀛樺湪");
@@ -711,6 +767,8 @@
     ErrorCode WM_MISC_ISSUE_CANCEL_NOT_ALLOWED = new ErrorCode(1_040_715_004, "鏉傞」鍑哄簱鍗曞凡瀹屾垚鎴栧凡鍙栨秷锛屾棤娉曞彇娑�");
     ErrorCode WM_MISC_ISSUE_DETAIL_QUANTITY_MISMATCH = new ErrorCode(1_040_715_005, "鏉傞」鍑哄簱鍗曡鏁伴噺涓庢槑缁嗘暟閲忎笉涓�鑷�");
     ErrorCode WM_MISC_ISSUE_LINE_NOT_EXISTS = new ErrorCode(1_040_715_100, "鏉傞」鍑哄簱鍗曡涓嶅瓨鍦�");
+    ErrorCode WM_MISC_ISSUE_LINE_QUANTITY_REQUIRED = new ErrorCode(1_040_715_101,
+            "璇峰~鍐欏嚭搴撴暟閲忥紝鎴栭�夋嫨褰曞叆鍗曚綅骞跺~鍐欏綍鍏ユ暟閲忓悗鐢辩郴缁熻嚜鍔ㄦ崲绠�");
     ErrorCode WM_MISC_ISSUE_DETAIL_NOT_EXISTS = new ErrorCode(1_040_715_200, "鏉傞」鍑哄簱鍗曟槑缁嗕笉瀛樺湪");
 
     // ========== MES 浠撳簱绠$悊-鏉傞」鍏ュ簱鍗曪紙1-040-716-000锛� ==========
@@ -773,6 +831,9 @@
     ErrorCode PD_PROJECT_NOT_UPLOAD_FOR_AUDIT = new ErrorCode(1_040_800_005, "鍙湁寰呭鏍哥姸鎬佺殑璁捐椤圭洰鎵嶈兘瀹℃牳");
     ErrorCode PD_PROJECT_NOT_AUDIT_FOR_ARCHIVE = new ErrorCode(1_040_800_006, "鍙湁寰呭綊妗g姸鎬佺殑璁捐椤圭洰鎵嶈兘褰掓。");
     ErrorCode PD_PROJECT_AUDIT_NOT_FINISHED = new ErrorCode(1_040_800_007, "璇ラ」鐩笅瀛樺湪鏈鏍哥殑璧勬枡锛岃鍏堝畬鎴愭墍鏈夎祫鏂欏鏍�");
+    ErrorCode PD_PROJECT_NOT_UPLOAD_FOR_APPROVAL = new ErrorCode(1_040_800_008, "鍙湁寰呭鏍哥姸鎬佺殑璁捐椤圭洰鎵嶈兘鎻愪氦瀹℃壒");
+    ErrorCode PD_PROJECT_NOT_APPROVING = new ErrorCode(1_040_800_009, "璁捐椤圭洰涓嶅浜庡鎵逛腑鐘舵��");
+    ErrorCode PD_PROJECT_BPM_CATEGORY_NOT_EXISTS = new ErrorCode(1_040_800_010, "璁捐椤圭洰瀹℃壒鍒嗙被涓嶅瓨鍦紝璇峰厛閰嶇疆 BPM 瀹℃壒娴佺▼");
 
     // ========== MES 浜у搧璁捐-璧勬枡瀛愯〃锛�1-040-801-000锛� ==========
     ErrorCode PD_DOCUMENT_NOT_EXISTS = new ErrorCode(1_040_801_000, "璁捐璧勬枡涓嶅瓨鍦�");

--
Gitblit v1.9.3