From c47c8647f514eaa8c6a7624185b55738e8625c2c Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 05 十一月 2026 13:37:31 +0800
Subject: [PATCH] feat(product-issue): 支持按任务工序校验和选择领料物料

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java |  111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 110 insertions(+), 1 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 95286cd..16601b4 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, "璁¢噺鍗曚綅涓嶅瓨鍦�");
@@ -82,12 +83,14 @@
     ErrorCode MD_WORKSHOP_CODE_DUPLICATE = new ErrorCode(1_040_105_001, "杞﹂棿缂栫爜宸插瓨鍦�");
     ErrorCode MD_WORKSHOP_NAME_DUPLICATE = new ErrorCode(1_040_105_002, "杞﹂棿鍚嶇О宸插瓨鍦�");
     ErrorCode MD_WORKSHOP_HAS_WORKSTATION = new ErrorCode(1_040_105_003, "杞﹂棿涓嬪瓨鍦ㄥ伐浣滅珯锛屾棤娉曞垹闄�");
+    ErrorCode MD_WORKSHOP_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_105_004, "瀵煎叆杞﹂棿鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 鍩虹鏁版嵁-宸ヤ綔绔欙紙1-040-106-000锛� ==========
     ErrorCode MD_WORKSTATION_NOT_EXISTS = new ErrorCode(1_040_106_000, "宸ヤ綔绔欎笉瀛樺湪");
     ErrorCode MD_WORKSTATION_CODE_DUPLICATE = new ErrorCode(1_040_106_001, "宸ヤ綔绔欑紪鐮佸凡瀛樺湪");
     ErrorCode MD_WORKSTATION_NAME_DUPLICATE = new ErrorCode(1_040_106_002, "宸ヤ綔绔欏悕绉板凡瀛樺湪");
     ErrorCode MD_WORKSTATION_IS_DISABLE = new ErrorCode(1_040_106_003, "宸ヤ綔绔欏凡绂佺敤");
+    ErrorCode MD_WORKSTATION_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_106_004, "瀵煎叆宸ヤ綔绔欐暟鎹笉鑳戒负绌�");
     // ========== MES 鍩虹鏁版嵁-璁惧璧勬簮锛�1-040-106-100锛� ==========
     ErrorCode MD_WORKSTATION_MACHINE_NOT_EXISTS = new ErrorCode(1_040_106_100, "璁惧璧勬簮璁板綍涓嶅瓨鍦�");
     ErrorCode MD_WORKSTATION_MACHINE_EXISTS = new ErrorCode(1_040_106_101, "璇ヨ澶囧凡鍒嗛厤鑷冲伐浣滅珯锛歿}");
@@ -119,6 +122,7 @@
     ErrorCode AUTO_CODE_REDIS_ERROR = new ErrorCode(1_040_110_003, "缂栫爜鐢熸垚鏈嶅姟涓嶅彲鐢紝璇风◢鍚庨噸璇�");
     ErrorCode AUTO_CODE_GENERATE_FAILED = new ErrorCode(1_040_110_004, "缂栫爜鐢熸垚澶辫触");
     ErrorCode AUTO_CODE_PART_SERIAL_NUMBER_DUPLICATE = new ErrorCode(1_040_110_005, "娴佹按鍙峰垎娈靛彧鑳藉瓨鍦ㄤ竴涓�");
+    ErrorCode AUTO_CODE_RULE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_110_006, "瀵煎叆缂栫爜瑙勫垯鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 鏃ュ巻鎺掔彮-璁″垝鐝锛�1-040-200-000锛� ==========
     ErrorCode CAL_PLAN_SHIFT_NOT_EXISTS = new ErrorCode(1_040_200_000, "璁″垝鐝涓嶅瓨鍦�");
@@ -127,6 +131,7 @@
     // ========== MES 鏃ュ巻鎺掔彮-鐝粍锛�1-040-201-000锛� ==========
     ErrorCode CAL_TEAM_NOT_EXISTS = new ErrorCode(1_040_201_000, "鐝粍涓嶅瓨鍦�");
     ErrorCode CAL_TEAM_CODE_DUPLICATE = new ErrorCode(1_040_201_001, "鐝粍缂栫爜宸插瓨鍦�");
+    ErrorCode CAL_TEAM_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_201_002, "瀵煎叆鐝粍鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 鏃ュ巻鎺掔彮-鐝粍鎴愬憳锛�1-040-201-100锛� ==========
     ErrorCode CAL_TEAM_MEMBER_NOT_EXISTS = new ErrorCode(1_040_201_100, "鐝粍鎴愬憳涓嶅瓨鍦�");
     ErrorCode CAL_TEAM_MEMBER_USER_DUPLICATE = new ErrorCode(1_040_201_101, "璇ョ敤鎴峰凡鍒嗛厤鍒板叾浠栫彮缁�");
@@ -144,6 +149,7 @@
     ErrorCode CAL_PLAN_CODE_DUPLICATE = new ErrorCode(1_040_202_001, "鎺掔彮璁″垝缂栫爜宸插瓨鍦�");
     ErrorCode CAL_PLAN_NOT_PREPARE = new ErrorCode(1_040_202_002, "鎺掔彮璁″垝宸茬‘璁わ紝涓嶅厑璁镐慨鏀规垨鍒犻櫎");
     ErrorCode CAL_PLAN_TEAM_COUNT_NOT_MATCH = new ErrorCode(1_040_202_003, "纭鎺掔彮璁″垝鏃讹紝鍒嗛厤鐨勭彮缁勬暟閲忎笌杞彮鏂瑰紡涓嶅尮閰�");
+    ErrorCode CAL_PLAN_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_202_004, "瀵煎叆鎺掔彮璁″垝鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 鏃ュ巻鎺掔彮-璁″垝鐝粍鍏宠仈锛�1-040-202-100锛� ==========
     ErrorCode CAL_PLAN_TEAM_NOT_EXISTS = new ErrorCode(1_040_202_100, "璁″垝鐝粍鍏宠仈涓嶅瓨鍦�");
     ErrorCode CAL_PLAN_TEAM_DUPLICATE = new ErrorCode(1_040_202_101, "璇ョ彮缁勫凡鍒嗛厤鍒版璁″垝");
@@ -160,6 +166,7 @@
     ErrorCode DV_MACHINERY_TYPE_CODE_DUPLICATE = new ErrorCode(1_040_300_005, "璁惧绫诲瀷缂栫爜宸插瓨鍦�");
     ErrorCode DV_MACHINERY_TYPE_PARENT_IS_CHILD = new ErrorCode(1_040_300_006, "涓嶈兘璁剧疆鑷繁鐨勫瓙绫诲瀷涓虹埗绫诲瀷");
     ErrorCode DV_MACHINERY_TYPE_HAS_MACHINERY = new ErrorCode(1_040_300_007, "璇ョ被鍨嬩笅瀛樺湪璁惧锛屾棤娉曞垹闄�");
+    ErrorCode DV_MACHINERY_TYPE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_300_008, "瀵煎叆璁惧绫诲瀷鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 璁惧绠$悊-璁惧鍙拌处锛�1-040-301-000锛� ==========
     ErrorCode DV_MACHINERY_NOT_EXISTS = new ErrorCode(1_040_301_000, "璁惧涓嶅瓨鍦�");
@@ -184,6 +191,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, "鐐规璁″垝涓嶅瓨鍦�");
@@ -194,6 +202,7 @@
     ErrorCode DV_CHECK_PLAN_NOT_ENABLED = new ErrorCode(1_040_302_005, "鐐规淇濆吇鏂规鏈惎鐢紝涓嶅厑璁稿仠鐢�");
     ErrorCode DV_CHECK_PLAN_TYPE_MISMATCH = new ErrorCode(1_040_302_006, "鐐规淇濆吇鏂规绫诲瀷涓庡綋鍓嶄笟鍔′笉鍖归厤");
     ErrorCode DV_CHECK_PLAN_NOT_ENABLED_FOR_RECORD = new ErrorCode(1_040_302_007, "鐐规淇濆吇鏂规鏈惎鐢紝涓嶅厑璁稿垱寤鸿褰�");
+    ErrorCode DV_CHECK_PLAN_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_302_008, "瀵煎叆鐐规淇濆吇鏂规鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璁惧绠$悊-鐐规鏂规璁惧锛�1-040-302-100锛� ==========
     ErrorCode DV_CHECK_PLAN_MACHINERY_NOT_EXISTS = new ErrorCode(1_040_302_100, "鐐规淇濆吇鏂规璁惧涓嶅瓨鍦�");
     ErrorCode DV_CHECK_PLAN_MACHINERY_DUPLICATE = new ErrorCode(1_040_302_101, "璇ヨ澶囧凡鍏宠仈鍒板綋鍓嶆柟妗堬紝璇峰嬁閲嶅娣诲姞");
@@ -208,6 +217,7 @@
     ErrorCode DV_REPAIR_CODE_DUPLICATE = new ErrorCode(1_040_303_002, "缁翠慨宸ュ崟缂栫爜宸插瓨鍦�");
     ErrorCode DV_REPAIR_NOT_CONFIRMED = new ErrorCode(1_040_303_003, "鍙湁缁翠慨涓姸鎬佺殑缁翠慨宸ュ崟鎵嶈兘瀹屾垚缁翠慨");
     ErrorCode DV_REPAIR_NOT_APPROVING = new ErrorCode(1_040_303_004, "鍙湁寰呴獙鏀剁姸鎬佺殑缁翠慨宸ュ崟鎵嶈兘楠屾敹");
+    ErrorCode DV_REPAIR_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_303_005, "瀵煎叆缁翠慨宸ュ崟鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璁惧绠$悊-缁翠慨宸ュ崟琛岋紙1-040-303-100锛� ==========
     ErrorCode DV_REPAIR_LINE_NOT_EXISTS = new ErrorCode(1_040_303_100, "缁翠慨宸ュ崟琛屼笉瀛樺湪");
 
@@ -215,6 +225,7 @@
     ErrorCode MAINTEN_RECORD_NOT_EXISTS = new ErrorCode(1_040_305_000, "璁惧淇濆吇璁板綍涓嶅瓨鍦�");
     ErrorCode MAINTEN_RECORD_NOT_DRAFT = new ErrorCode(1_040_305_001, "璁惧淇濆吇璁板綍宸叉彁浜わ紝涓嶅厑璁镐慨鏀规垨鍒犻櫎");
     ErrorCode MAINTEN_RECORD_NO_LINE = new ErrorCode(1_040_305_002, "鎻愪氦淇濆吇璁板綍鏃讹紝鑷冲皯闇�瑕佷竴鏉′繚鍏婚」鐩�");
+    ErrorCode DV_MAINTEN_RECORD_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_305_003, "瀵煎叆璁惧淇濆吇璁板綍鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璁惧绠$悊-淇濆吇璁板綍鏄庣粏锛�1-040-305-100锛� ==========
     ErrorCode MAINTEN_RECORD_LINE_NOT_EXISTS = new ErrorCode(1_040_305_100, "璁惧淇濆吇璁板綍鏄庣粏涓嶅瓨鍦�");
 
@@ -222,6 +233,7 @@
     ErrorCode DV_CHECK_RECORD_NOT_EXISTS = new ErrorCode(1_040_306_000, "璁惧鐐规璁板綍涓嶅瓨鍦�");
     ErrorCode DV_CHECK_RECORD_NOT_DRAFT = new ErrorCode(1_040_306_001, "璁惧鐐规璁板綍宸插畬鎴愶紝涓嶅厑璁镐慨鏀规垨鍒犻櫎");
     ErrorCode DV_CHECK_RECORD_NO_LINE = new ErrorCode(1_040_306_002, "鎻愪氦鐐规璁板綍鏃讹紝鑷冲皯闇�瑕佷竴鏉$偣妫�椤圭洰");
+    ErrorCode DV_CHECK_RECORD_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_306_003, "瀵煎叆璁惧鐐规璁板綍鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璁惧绠$悊-鐐规璁板綍鏄庣粏锛�1-040-306-100锛� ==========
     ErrorCode DV_CHECK_RECORD_LINE_NOT_EXISTS = new ErrorCode(1_040_306_100, "璁惧鐐规璁板綍鏄庣粏涓嶅瓨鍦�");
 
@@ -229,10 +241,12 @@
     ErrorCode DV_METERING_NOT_EXISTS = new ErrorCode(1_040_307_000, "璁¢噺鍣ㄥ叿涓嶅瓨鍦�");
     ErrorCode DV_METERING_CODE_DUPLICATE = new ErrorCode(1_040_307_001, "璁¢噺鍣ㄥ叿缂栫爜宸插瓨鍦�");
     ErrorCode DV_METERING_HAS_CHECK_RECORD = new ErrorCode(1_040_307_002, "璁¢噺鍣ㄥ叿宸插叧鑱旀娴嬭褰曪紝鏃犳硶鍒犻櫎");
+    ErrorCode DV_METERING_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_307_003, "瀵煎叆璁¢噺鍣ㄥ叿鏁版嵁涓嶈兘涓虹┖");
 
     // ========== 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, "璁¢噺妫�娴嬬紪鍙峰凡瀛樺湪");
+    ErrorCode DV_METERING_CHECK_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_307_102, "瀵煎叆璁¢噺妫�娴嬭褰曟暟鎹笉鑳戒负绌�");
 
     // ========== MES 宸ュ叿绠$悊-宸ュ叿绫诲瀷锛�1-040-400-000锛� ==========
     ErrorCode TM_TOOL_TYPE_NOT_EXISTS = new ErrorCode(1_040_400_000, "宸ュ叿绫诲瀷涓嶅瓨鍦�");
@@ -240,11 +254,13 @@
     ErrorCode TM_TOOL_TYPE_NAME_DUPLICATE = new ErrorCode(1_040_400_002, "宸ュ叿绫诲瀷鍚嶇О宸插瓨鍦�");
     ErrorCode TM_TOOL_TYPE_HAS_TOOL = new ErrorCode(1_040_400_003, "璇ュ伐鍏风被鍨嬩笅瀛樺湪宸ュ叿锛屾棤娉曞垹闄�");
     ErrorCode TM_TOOL_TYPE_HAS_WORKSTATION_TOOL = new ErrorCode(1_040_400_004, "璇ュ伐鍏风被鍨嬪凡琚伐浣滅珯宸ヨ璧勬簮寮曠敤锛屾棤娉曞垹闄�");
+    ErrorCode TM_TOOL_TYPE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_400_005, "瀵煎叆宸ュ叿绫诲瀷鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 宸ュ叿绠$悊-宸ュ叿鍙拌处锛�1-040-401-000锛� ==========
     ErrorCode TM_TOOL_NOT_EXISTS = new ErrorCode(1_040_401_000, "宸ュ叿涓嶅瓨鍦�");
     ErrorCode TM_TOOL_CODE_DUPLICATE = new ErrorCode(1_040_401_001, "宸ュ叿缂栫爜宸插瓨鍦�");
     ErrorCode TM_TOOL_HAS_BATCH = new ErrorCode(1_040_401_002, "璇ュ伐鍏峰凡琚壒娆″紩鐢紝鏃犳硶鍒犻櫎");
+    ErrorCode TM_TOOL_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_401_003, "瀵煎叆宸ュ叿鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 鐢熶骇绠$悊-宸ュ簭锛�1-040-500-000锛� ==========
     ErrorCode PRO_PROCESS_NOT_EXISTS = new ErrorCode(1_040_500_000, "宸ュ簭涓嶅瓨鍦�");
@@ -252,6 +268,9 @@
     ErrorCode PRO_PROCESS_NAME_EXISTS = new ErrorCode(1_040_500_002, "宸ュ簭鍚嶇О宸插瓨鍦�");
     ErrorCode PRO_PROCESS_USED_BY_ROUTE = new ErrorCode(1_040_500_003, "宸ュ簭宸茶宸ヨ壓璺嚎寮曠敤锛屾棤娉曞垹闄�");
     ErrorCode PRO_PROCESS_IS_DISABLE = new ErrorCode(1_040_500_004, "宸ュ簭宸茬鐢�");
+    ErrorCode PRO_PROCESS_PARAM_CONFIG_INVALID = new ErrorCode(1_040_500_006, "鍙傛暟閲囬泦鏂瑰紡涓嶆纭�");
+    ErrorCode PRO_PROCESS_PARAM_TEMPLATE_REQUIRED = new ErrorCode(1_040_500_007, "鍚敤鍙傛暟閲囬泦鏃跺繀椤婚�夋嫨鍙傛暟妯℃澘");
+    ErrorCode PRO_PROCESS_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_500_005, "瀵煎叆宸ュ簭鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 鐢熶骇绠$悊-宸ュ簭鍐呭锛�1-040-500-100锛� ==========
     ErrorCode PRO_PROCESS_CONTENT_NOT_EXISTS = new ErrorCode(1_040_500_100, "宸ュ簭鍐呭涓嶅瓨鍦�");
 
@@ -262,6 +281,9 @@
     ErrorCode PRO_ROUTE_ENABLE_NO_KEY_PROCESS = new ErrorCode(1_040_501_003, "宸ヨ壓璺嚎蹇呴』瑕佹湁鍏抽敭宸ュ簭");
     ErrorCode PRO_ROUTE_ENABLE_PRODUCT_NO_BOM = new ErrorCode(1_040_501_004, "浜у搧 {} 鏈厤缃伐搴忕殑 BOM 娑堣��");
     ErrorCode PRO_ROUTE_IS_ENABLE = new ErrorCode(1_040_501_005, "宸ヨ壓璺嚎宸插惎鐢紝涓嶅厑璁告搷浣�");
+    ErrorCode PRO_ROUTE_TEMPLATE_REFERENCE_NOT_FINISHED = new ErrorCode(1_040_501_008, "妯℃澘寮曠敤璇烽�夋嫨鎴愬搧锛屼笉鑳介�夋嫨涓棿鍗婃垚鍝�");
+    ErrorCode PRO_ROUTE_FULL_EXCEL_INVALID = new ErrorCode(1_040_501_007, "宸ヨ壓娴佺▼妯℃澘閿欒锛歿}");
+    ErrorCode PRO_ROUTE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_501_006, "瀵煎叆宸ヨ壓璺嚎鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 鐢熶骇绠$悊-宸ヨ壓璺嚎宸ュ簭锛�1-040-501-100锛� ==========
     ErrorCode PRO_ROUTE_PROCESS_NOT_EXISTS = new ErrorCode(1_040_501_100, "宸ヨ壓璺嚎宸ュ簭涓嶅瓨鍦�");
     ErrorCode PRO_ROUTE_PROCESS_SORT_DUPLICATE = new ErrorCode(1_040_501_101, "搴忓彿宸插瓨鍦�");
@@ -271,6 +293,12 @@
     ErrorCode PRO_ROUTE_PRODUCT_NOT_EXISTS = new ErrorCode(1_040_501_200, "宸ヨ壓璺嚎浜у搧涓嶅瓨鍦�");
     ErrorCode PRO_ROUTE_PRODUCT_ITEM_DUPLICATE = new ErrorCode(1_040_501_201, "姝や骇鍝佸凡閰嶇疆浜嗗伐鑹鸿矾绾�");
     ErrorCode PRO_ROUTE_PRODUCT_ITEM_TYPE_INVALID = new ErrorCode(1_040_501_202, "宸ヨ壓璺嚎鍙兘鍏宠仈浜у搧绫诲瀷鐗╂枡");
+    ErrorCode PRO_ROUTE_PRODUCT_WAREHOUSE_REQUIRED = new ErrorCode(1_040_501_203, "浜у搧銆恵}銆戞湭閰嶇疆鎶ュ伐鍏ュ簱浠撳簱銆佸簱鍖哄拰搴撲綅");
+    ErrorCode PRO_ROUTE_PROCESS_OUTPUT_REQUIRED = new ErrorCode(1_040_501_204, "宸ュ簭銆恵}銆戞湭閰嶇疆浜у嚭浜у搧");
+    ErrorCode PRO_ROUTE_PROCESS_OUTPUT_NOT_BOUND = new ErrorCode(1_040_501_205, "宸ュ簭浜у嚭浜у搧銆恵}銆戞湭缁戝畾鍒板綋鍓嶅伐鑹鸿矾绾�");
+    ErrorCode PRO_ROUTE_MIDDLE_OUTPUT_INVALID = new ErrorCode(1_040_501_206, "涓棿宸ュ簭銆恵}銆戝彧鑳戒骇鍑哄崐鎴愬搧鍒嗙被浜у搧");
+    ErrorCode PRO_ROUTE_LAST_OUTPUT_INVALID = new ErrorCode(1_040_501_207, "鏈亾宸ュ簭銆恵}銆戝彧鑳戒骇鍑烘垚鍝佸垎绫讳骇鍝侊紝涓斿繀椤诲寘鍚叏閮ㄧ粦瀹氭垚鍝�");
+    ErrorCode PRO_ROUTE_LAST_OUTPUT_ATTRIBUTION_REQUIRED = new ErrorCode(1_040_501_208, "鏈亾宸ュ簭銆恵}銆戠殑鎴愬搧浜у嚭蹇呴』鎸変骇鍝佸綊灞為厤缃紝姣忎釜鎴愬搧褰掑睘鍒拌嚜韬紝涓嶈兘浣跨敤鈥滈�氱敤鈥�");
     // ========== MES 鐢熶骇绠$悊-宸ヨ壓璺嚎浜у搧BOM锛�1-040-501-300锛� ==========
     ErrorCode PRO_ROUTE_PRODUCT_BOM_NOT_EXISTS = new ErrorCode(1_040_501_300, "宸ヨ壓璺嚎浜у搧 BOM 涓嶅瓨鍦�");
     ErrorCode PRO_ROUTE_PRODUCT_BOM_DUPLICATE = new ErrorCode(1_040_501_301, "褰撳墠 BOM 鐗╂枡鍦ㄦ宸ュ簭宸茬粡閰嶇疆杩�");
@@ -297,6 +325,7 @@
     ErrorCode PRO_WORK_ORDER_PARAM_RECORD_TEMPLATE_NO_DETAIL = new ErrorCode(1_040_502_201, "鍙傛暟妯℃澘娌℃湁鏄庣粏锛屾棤娉曞垱寤鸿褰�");
     ErrorCode PRO_WORK_ORDER_PARAM_RECORD_DETAIL_NOT_IN_TEMPLATE = new ErrorCode(1_040_502_202, "鍙傛暟鏄庣粏涓嶅睘浜庢墍閫夋ā鏉�");
     ErrorCode PRO_WORK_ORDER_PARAM_RECORD_REQUIRED_PARAM_MISSING = new ErrorCode(1_040_502_203, "蹇呭~鍙傛暟銆恵}銆戞湭濉啓");
+    ErrorCode PRO_WORK_ORDER_PARAM_RECORD_DUPLICATE_DETAIL = new ErrorCode(1_040_502_206, "鍙傛暟鏄庣粏閲嶅");
     ErrorCode PRO_WORK_ORDER_PARAM_RECORD_TEMPLATE_NOT_CHANGE = new ErrorCode(1_040_502_204, "涓嶅厑璁告洿鎹㈠弬鏁版ā鏉匡紝璇峰垹闄ゅ悗閲嶆柊鍒涘缓");
     ErrorCode PRO_WORK_ORDER_SALE_ORDER_NOT_EXISTS = new ErrorCode(1_040_502_205, "鍏宠仈鐨勮惀閿�璁㈠崟锛堥攢鍞鍗曪級涓嶅瓨鍦�");
 
@@ -339,6 +368,9 @@
     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_APPROVER_NOT_CONFIGURED = new ErrorCode(1_040_506_015, "鎶ュ伐鍗曟湭鎸囧畾瀹℃牳浜猴紝鏃犳硶瀹℃壒");
+    ErrorCode PRO_FEEDBACK_PARAM_INVALID = new ErrorCode(1_040_506_017, "鎶ュ伐鍙傛暟閿欒锛歿}");
+    ErrorCode PRO_FEEDBACK_NOT_APPROVER = new ErrorCode(1_040_506_016, "鎮ㄤ笉鏄鎶ュ伐鍗曠殑鎸囧畾瀹℃牳浜猴紝鏃犳潈瀹℃壒");
 
     // ========== MES 鐢熶骇绠$悊-鐢熶骇娴佽浆鍗★紙1-040-507-000锛� ==========
     ErrorCode PRO_CARD_NOT_EXISTS = new ErrorCode(1_040_507_000, "鐢熶骇娴佽浆鍗′笉瀛樺湪");
@@ -368,6 +400,7 @@
     // ========== MES 璐ㄩ噺绠$悊-璐ㄦ鏂规锛�1-040-600-000锛� ==========
     ErrorCode QC_TEMPLATE_NOT_EXISTS = new ErrorCode(1_040_600_000, "璐ㄦ鏂规涓嶅瓨鍦�");
     ErrorCode QC_TEMPLATE_CODE_DUPLICATE = new ErrorCode(1_040_600_001, "璐ㄦ鏂规缂栧彿宸插瓨鍦�");
+    ErrorCode QC_TEMPLATE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_600_002, "瀵煎叆璐ㄦ鏂规鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璐ㄩ噺绠$悊-璐ㄦ鏂规妫�娴嬫寚鏍囬」锛�1-040-600-100锛� ==========
     ErrorCode QC_TEMPLATE_INDICATOR_NOT_EXISTS = new ErrorCode(1_040_600_100, "璐ㄦ鏂规妫�娴嬫寚鏍囬」涓嶅瓨鍦�");
     // ========== MES 璐ㄩ噺绠$悊-璐ㄦ鏂规浜у搧鍏宠仈锛�1-040-600-200锛� ==========
@@ -379,11 +412,13 @@
     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_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_601_004, "瀵煎叆璐ㄦ鎸囨爣鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 璐ㄩ噺绠$悊-缂洪櫡绫诲瀷锛�1-040-602-000锛� ==========
     ErrorCode QC_DEFECT_NOT_EXISTS = new ErrorCode(1_040_602_000, "缂洪櫡绫诲瀷涓嶅瓨鍦�");
     ErrorCode QC_DEFECT_CODE_DUPLICATE = new ErrorCode(1_040_602_001, "缂洪櫡绫诲瀷缂栫爜宸插瓨鍦�");
     ErrorCode QC_DEFECT_NAME_DUPLICATE = new ErrorCode(1_040_602_002, "缂洪櫡绫诲瀷鍚嶇О宸插瓨鍦�");
+    ErrorCode QC_DEFECT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_602_003, "瀵煎叆缂洪櫡绫诲瀷鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 璐ㄩ噺绠$悊-鏉ユ枡妫�楠� IQC锛�1-040-603-000锛� ==========
     ErrorCode QC_IQC_NOT_EXISTS = new ErrorCode(1_040_603_000, "鏉ユ枡妫�楠屽崟涓嶅瓨鍦�");
@@ -394,6 +429,7 @@
     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_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_603_009, "瀵煎叆鏉ユ枡妫�楠屽崟鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璐ㄩ噺绠$悊-鏉ユ枡妫�楠岃锛�1-040-603-100锛� ==========
     ErrorCode QC_IQC_LINE_NOT_EXISTS = new ErrorCode(1_040_603_100, "鏉ユ枡妫�楠岃涓嶅瓨鍦�");
 
@@ -409,6 +445,7 @@
     ErrorCode QC_IPQC_SOURCE_LINE_NOT_BELONG = new ErrorCode(1_040_604_009, "鏉ユ簮鍗曟嵁琛屼笉灞炰簬璇ユ姤宸ュ崟");
     ErrorCode QC_IPQC_SOURCE_LINE_REQUIRED = new ErrorCode(1_040_604_010, "鏉ユ簮鍗曟嵁绫诲瀷涓烘姤宸ユ椂锛屾潵婧愪骇鍑鸿 ID 涓嶈兘涓虹┖");
     ErrorCode QC_IPQC_SOURCE_LINE_NOT_PENDING = new ErrorCode(1_040_604_011, "鏉ユ簮浜у嚭琛屼笉鏄緟妫�楠岀姸鎬�");
+    ErrorCode QC_IPQC_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_604_012, "瀵煎叆杩囩▼妫�楠屽崟鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璐ㄩ噺绠$悊-杩囩▼妫�楠岃锛�1-040-604-100锛� ==========
     ErrorCode QC_IPQC_LINE_NOT_EXISTS = new ErrorCode(1_040_604_100, "杩囩▼妫�楠岃涓嶅瓨鍦�");
 
@@ -430,6 +467,7 @@
     ErrorCode QC_OQC_NO_TEMPLATE = new ErrorCode(1_040_607_005, "褰撳墠浜у搧鏈厤缃� OQC 妫�娴嬫ā鏉�");
     ErrorCode QC_OQC_CHECK_RESULT_EMPTY = new ErrorCode(1_040_607_006, "瀹屾垚妫�楠屽崟鍓嶏紝妫�娴嬬粨鏋滃繀椤诲~鍐�");
     ErrorCode QC_OQC_SOURCE_DOC_TYPE_UNKNOWN = new ErrorCode(1_040_607_007, "鏈煡鐨� OQC 鏉ユ簮鍗曟嵁绫诲瀷");
+    ErrorCode QC_OQC_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_607_008, "瀵煎叆鍑鸿揣妫�楠屽崟鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 璐ㄩ噺绠$悊-鍑鸿揣妫�楠岃锛�1-040-607-100锛� ==========
     ErrorCode QC_OQC_LINE_NOT_EXISTS = new ErrorCode(1_040_607_100, "鍑鸿揣妫�楠岃涓嶅瓨鍦�");
@@ -441,6 +479,7 @@
     ErrorCode QC_RQC_QUANTITY_MISMATCH = new ErrorCode(1_040_608_004, "鍚堟牸鍝佷笌涓嶅悎鏍煎搧鏁伴噺涔嬪拰椤荤瓑浜庢娴嬫暟閲�");
     ErrorCode QC_RQC_NO_TEMPLATE = new ErrorCode(1_040_608_005, "褰撳墠浜у搧鏈厤缃� RQC 妫�娴嬫ā鏉�");
     ErrorCode QC_RQC_CHECK_RESULT_EMPTY = new ErrorCode(1_040_608_006, "瀹屾垚妫�楠屽崟鍓嶏紝妫�娴嬬粨鏋滃繀椤诲~鍐�");
+    ErrorCode QC_RQC_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_608_007, "瀵煎叆閫�璐ф楠屽崟鏁版嵁涓嶈兘涓虹┖");
     // ========== MES 璐ㄩ噺绠$悊-閫�璐ф楠岃锛�1-040-608-100锛� ==========
     ErrorCode QC_RQC_LINE_NOT_EXISTS = new ErrorCode(1_040_608_100, "閫�璐ф楠岃涓嶅瓨鍦�");
 
@@ -450,6 +489,10 @@
     ErrorCode QC_NCR_NOT_PENDING_REVIEW = new ErrorCode(1_040_609_002, "鍙湁寰呰瘎瀹$姸鎬佺殑涓嶅悎鏍煎搧澶勭悊鍗曟墠鍙搷浣�");
     ErrorCode QC_NCR_NOT_REVIEWED = new ErrorCode(1_040_609_003, "鍙湁宸茶瘎瀹$姸鎬佺殑涓嶅悎鏍煎搧澶勭悊鍗曟墠鍙墽琛屽缃�");
     ErrorCode QC_NCR_NOT_DISPOSED = new ErrorCode(1_040_609_004, "鍙湁宸插缃姸鎬佺殑涓嶅悎鏍煎搧澶勭悊鍗曟墠鍙叧闂�");
+    ErrorCode QC_NCR_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_609_005, "瀵煎叆涓嶅悎鏍煎搧澶勭悊鍗曟暟鎹笉鑳戒负绌�");
+
+    // ========== MES 璐ㄩ噺绠$悊-濮斿妫�娴�/璇曢獙鍗曪紙1-040-610-000锛� ==========
+    ErrorCode QC_OUTSOURCE_TEST_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_610_000, "瀵煎叆濮斿妫�娴�/璇曢獙鍗曟暟鎹笉鑳戒负绌�");
 
     // ========== MES 浠撳簱绠$悊-浠撳簱锛�1-040-700-000锛� ==========
     ErrorCode WM_WAREHOUSE_NOT_EXISTS = new ErrorCode(1_040_700_000, "浠撳簱涓嶅瓨鍦�");
@@ -459,6 +502,7 @@
     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_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_700_007, "瀵煎叆浠撳簱鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 浠撳簱绠$悊-搴撳尯锛�1-040-701-000锛� ==========
     ErrorCode WM_WAREHOUSE_LOCATION_NOT_EXISTS = new ErrorCode(1_040_701_000, "搴撳尯涓嶅瓨鍦�");
@@ -470,6 +514,7 @@
     ErrorCode WM_WAREHOUSE_LOCATION_RELATION_INVALID = new ErrorCode(1_040_701_006, "搴撳尯涓嶅睘浜庢墍閫変粨搴�");
     ErrorCode WM_WAREHOUSE_LOCATION_HAS_MATERIAL_STOCK = new ErrorCode(1_040_701_007, "搴撳尯涓嬫湁搴撳瓨璁板綍锛屾棤娉曞垹闄�");
     ErrorCode WM_WAREHOUSE_LOCATION_IS_VIRTUAL = new ErrorCode(1_040_701_008, "铏氭嫙搴撳尯涓嶅厑璁告搷浣�");
+    ErrorCode WM_WAREHOUSE_LOCATION_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_701_009, "瀵煎叆搴撳尯鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 浠撳簱绠$悊-搴撲綅锛�1-040-702-000锛� ==========
     ErrorCode WM_WAREHOUSE_AREA_NOT_EXISTS = new ErrorCode(1_040_702_000, "搴撲綅涓嶅瓨鍦�");
@@ -481,8 +526,10 @@
     ErrorCode WM_WAREHOUSE_AREA_HAS_MATERIAL_STOCK = new ErrorCode(1_040_702_006, "搴撲綅涓嬫湁搴撳瓨璁板綍锛屾棤娉曞垹闄�");
     ErrorCode WM_WAREHOUSE_AREA_WAREHOUSE_MISMATCH = new ErrorCode(1_040_702_007, "搴撲綅涓嶅睘浜庢墍閫変粨搴�");
     ErrorCode WM_WAREHOUSE_AREA_IS_VIRTUAL = new ErrorCode(1_040_702_008, "铏氭嫙搴撲綅涓嶅厑璁告搷浣�");
+    ErrorCode WM_WAREHOUSE_AREA_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_702_009, "瀵煎叆搴撲綅鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 浠撳簱绠$悊-搴撳瓨锛�1-040-703-000锛� ==========
+    ErrorCode WM_STOCK_IMPORT_INVALID = new ErrorCode(1_040_703_017, "搴撳瓨瀵煎叆鏁版嵁鏃犳晥锛歿}");
     ErrorCode WM_MATERIAL_STOCK_NOT_EXISTS = new ErrorCode(1_040_703_000, "搴撳瓨璁板綍涓嶅瓨鍦�");
     ErrorCode WM_MATERIAL_STOCK_INSUFFICIENT = new ErrorCode(1_040_703_001, "搴撳瓨鏁伴噺涓嶈冻");
     ErrorCode WM_TRANSACTION_TYPE_NOT_EXISTS = new ErrorCode(1_040_703_002, "搴撳瓨浜嬪姟绫诲瀷涓嶅瓨鍦�");
@@ -525,6 +572,7 @@
     ErrorCode WM_ITEM_RECEIPT_ALREADY_EXISTS = new ErrorCode(1_040_705_007, "璇ュ埌璐ч�氱煡鍗曞凡鐢熸垚鍏ュ簱鍗曪紝涓嶈兘閲嶅鐢熸垚");
     ErrorCode WM_ITEM_RECEIPT_NOT_APPROVING = new ErrorCode(1_040_705_008, "鍙湁寰呬笂鏋剁姸鎬佺殑閲囪喘鍏ュ簱鍗曟墠鑳藉鏍�");
     ErrorCode WM_ITEM_RECEIPT_REJECT_REASON_REQUIRED = new ErrorCode(1_040_705_009, "瀹℃牳涓嶉�氳繃鏃跺繀椤诲~鍐欎笉閫氳繃鍘熷洜");
+    ErrorCode WM_PURCHASE_ORDER_NOT_APPROVED = new ErrorCode(1_040_705_009, "鍙湁宸插鏍哥殑閲囪喘璁㈠崟鎵嶈兘鐢熸垚鍒拌揣閫氱煡鍗�");
     ErrorCode WM_PURCHASE_ORDER_NOT_EXISTS = new ErrorCode(1_040_705_008, "閲囪喘璁㈠崟涓嶅瓨鍦�");
     ErrorCode WM_PURCHASE_ORDER_NO_ITEM = new ErrorCode(1_040_705_008, "閲囪喘璁㈠崟鏃犳槑缁嗘暟鎹�");
     ErrorCode WM_ITEM_RECEIPT_LINE_NOT_EXISTS = new ErrorCode(1_040_705_100, "閲囪喘鍏ュ簱鍗曡涓嶅瓨鍦�");
@@ -566,7 +614,7 @@
     ErrorCode WM_PRODUCT_ISSUE_WORKSTATION_NOT_EXISTS = new ErrorCode(1_040_708_005, "宸ヤ綔绔欎笉瀛樺湪");
     ErrorCode WM_PRODUCT_ISSUE_CANCEL_NOT_ALLOWED = new ErrorCode(1_040_708_006, "鐢熶骇棰嗘枡鍑哄簱鍗曞凡瀹屾垚鎴栧凡鍙栨秷锛屾棤娉曞彇娑�");
     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_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_DETAIL_NOT_EXISTS = new ErrorCode(1_040_708_200, "鐢熶骇棰嗘枡鍑哄簱鍗曟槑缁嗕笉瀛樺湪");
     ErrorCode WM_PRODUCT_ISSUE_DETAIL_ITEM_MISMATCH = new ErrorCode(1_040_708_201, "鎷h揣鏄庣粏鐨勭墿鏂欎笌棰嗘枡鍗曡鐨勭墿鏂欎笉涓�鑷�");
@@ -666,6 +714,8 @@
     ErrorCode WM_RETURN_SALES_NO_LINE = new ErrorCode(1_040_713_005, "閿�鍞��璐у崟鑷冲皯闇�瑕佷竴鏉¤鏁版嵁");
     ErrorCode WM_RETURN_SALES_DETAIL_QUANTITY_MISMATCH = new ErrorCode(1_040_713_006, "閿�鍞��璐у崟琛屾暟閲忎笌鏄庣粏鏁伴噺涓嶄竴鑷�");
     ErrorCode WM_RETURN_SALES_CANCEL_NOT_ALLOWED = new ErrorCode(1_040_713_007, "閿�鍞��璐у崟宸插畬鎴愭垨宸插彇娑堬紝鏃犳硶鍙栨秷");
+    ErrorCode WM_RETURN_SALES_AFTERSALE_LINKED = new ErrorCode(1_040_713_008, "璇ラ攢鍞��璐у崟鍏宠仈鍞悗鐢宠锛屼笉鑳界洿鎺ヤ慨鏀瑰崟澶存垨鍒犻櫎锛涢渶瑕佸彇娑堟椂璇疯蛋鍙栨秷娴佺▼");
+    ErrorCode WM_RETURN_SALES_RQC_SOURCE_INVALID = new ErrorCode(1_040_713_009, "閫�璐ф楠屽崟鏉ユ簮琛屼笌閿�鍞��璐у崟涓嶄竴鑷达紝鎴栬琛屽凡瀹屾垚妫�楠�");
     ErrorCode WM_RETURN_SALES_LINE_NOT_EXISTS = new ErrorCode(1_040_713_100, "閿�鍞��璐у崟琛屼笉瀛樺湪");
     ErrorCode WM_RETURN_SALES_DETAIL_NOT_EXISTS = new ErrorCode(1_040_713_200, "閿�鍞��璐у崟鏄庣粏涓嶅瓨鍦�");
     ErrorCode WM_RETURN_SALES_DETAIL_QUANTITY_EXCEED = new ErrorCode(1_040_713_201, "涓婃灦鏄庣粏鎬绘暟閲忎笉鑳借秴杩囬��璐ц鏁伴噺");
@@ -697,6 +747,8 @@
     ErrorCode WM_STOCK_TAKING_TASK_ALREADY_SUBMIT_APPROVAL = new ErrorCode(1_040_714_123, "鐩樼偣缁撴灉瀹℃壒宸叉彁浜わ紝璇峰嬁閲嶅鎻愪氦");
     ErrorCode WM_STOCK_TAKING_TASK_RESULT_NOT_SUBMITTED = new ErrorCode(1_040_714_124, "鍙湁宸叉彁浜ょ粨鏋滃鎵圭殑鐩樼偣浠诲姟鎵嶈兘瀹℃牳");
     ErrorCode WM_STOCK_TAKING_TASK_REJECT_REASON_REQUIRED = new ErrorCode(1_040_714_125, "瀹℃牳涓嶉�氳繃鏃跺繀椤诲~鍐欎笉閫氳繃鍘熷洜");
+    ErrorCode WM_STOCK_TAKING_TASK_RESULT_APPROVAL_PENDING = new ErrorCode(1_040_714_126, "鐩樼偣缁撴灉瀹℃壒宸叉彁浜わ紝瀹℃牳瀹屾垚鍓嶄笉鍏佽淇敼鐩樼偣缁撴灉");
+    ErrorCode WM_STOCK_TAKING_TASK_LINE_NOT_MATCH = new ErrorCode(1_040_714_127, "鐩樼偣浠诲姟琛屼笉灞炰簬鎸囧畾鐨勭洏鐐逛换鍔�");
 
     // ========== MES 浠撳簱绠$悊-閿�鍞嚭搴撳崟锛�1-040-714-000锛� ==========
     ErrorCode WM_PRODUCT_SALES_NOT_EXISTS = new ErrorCode(1_040_714_000, "閿�鍞嚭搴撳崟涓嶅瓨鍦�");
@@ -742,6 +794,7 @@
     ErrorCode WM_MISC_ISSUE_REJECT_REASON_REQUIRED = new ErrorCode(1_040_715_007, "瀹℃牳涓嶉�氳繃鏃跺繀椤诲~鍐欎笉閫氳繃鍘熷洜");
     ErrorCode WM_MISC_ISSUE_LINE_NOT_EXISTS = new ErrorCode(1_040_715_100, "鏉傞」鍑哄簱鍗曡涓嶅瓨鍦�");
     ErrorCode WM_MISC_ISSUE_DETAIL_NOT_EXISTS = new ErrorCode(1_040_715_200, "鏉傞」鍑哄簱鍗曟槑缁嗕笉瀛樺湪");
+    ErrorCode WM_MISC_ISSUE_QUANTITY_INVALID = new ErrorCode(1_040_715_008, "鏉傞」鍑哄簱鏁伴噺涓嶈兘涓虹┖");
 
     // ========== MES 浠撳簱绠$悊-鏉傞」鍏ュ簱鍗曪紙1-040-716-000锛� ==========
     ErrorCode WM_MISC_RECEIPT_NOT_EXISTS = new ErrorCode(1_040_716_000, "鏉傞」鍏ュ簱鍗曚笉瀛樺湪");
@@ -769,12 +822,15 @@
     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_SALE_ORDER_NOT_APPROVED = new ErrorCode(1_040_720_016, "鍙湁宸插鏍搁攢鍞鍗曟墠鑳界敓鎴愬彂璐ч�氱煡鍗�");
+    ErrorCode WM_SALES_NOTICE_PRODUCTION_NOT_READY = new ErrorCode(1_040_720_017, "璁㈠崟鍏宠仈鐢熶骇璁″垝灏氭湭瀹屾垚鎴栧彇娑堬紝涓嶈兘鐢熸垚鍙戣揣閫氱煡鍗�");
     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, "鏉$爜閰嶇疆涓嶅瓨鍦�");
     ErrorCode WM_BARCODE_CONFIG_BIZ_TYPE_DUPLICATE = new ErrorCode(1_040_730_001, "璇ヤ笟鍔$被鍨嬬殑鏉$爜閰嶇疆宸插瓨鍦�");
     ErrorCode WM_BARCODE_CONFIG_HAS_BARCODE = new ErrorCode(1_040_730_002, "璇ユ潯鐮侀厤缃凡琚潯鐮佽褰曞叧鑱旓紝鏃犳硶鍒犻櫎");
+    ErrorCode WM_BARCODE_CONFIG_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_730_003, "瀵煎叆鏉$爜閰嶇疆鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 浠撳簱绠$悊-鏉$爜娓呭崟锛�1-040-731-000锛� ==========
     ErrorCode WM_BARCODE_NOT_EXISTS = new ErrorCode(1_040_731_000, "鏉$爜涓嶅瓨鍦�");
@@ -785,6 +841,7 @@
     ErrorCode BARCODE_CONFIG_NOT_EXISTS = new ErrorCode(1_040_731_005, "鏉$爜閰嶇疆涓嶅瓨鍦�");
     ErrorCode BARCODE_FORMAT_INVALID = new ErrorCode(1_040_731_006, "鏉$爜鏍煎紡涓嶆敮鎸佹覆鏌�");
     ErrorCode BARCODE_CONTENT_EMPTY = new ErrorCode(1_040_731_007, "鏉$爜鍐呭涓嶈兘涓虹┖");
+    ErrorCode WM_BARCODE_DISABLED = new ErrorCode(1_040_731_008, "鏉$爜宸插仠鐢紝鏃犳硶缁х画鎵爜浣跨敤");
 
     // ========== MES 浠撳簱绠$悊-SN 鐮侊紙1-040-732-000锛� ==========
     ErrorCode WM_SN_NOT_EXISTS = new ErrorCode(1_040_732_000, "SN 鐮佷笉瀛樺湪");
@@ -831,6 +888,8 @@
     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_AUDIT_REJECT_REASON_REQUIRED = new ErrorCode(1_040_800_010, "瀹℃牳涓嶉�氳繃鏃跺繀椤诲~鍐欎笉閫氳繃鍘熷洜");
+    ErrorCode PD_PROJECT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_800_011, "瀵煎叆璁捐椤圭洰鏁版嵁涓嶈兘涓虹┖");
+    ErrorCode PD_PROJECT_NO_DOCUMENT = new ErrorCode(1_040_800_012, "璁捐椤圭洰鑷冲皯闇�瑕佷竴浠借祫鏂欐墠鍏佽鎻愪氦瀹℃壒");
 
     // ========== MES 浜у搧璁捐-璧勬枡瀛愯〃锛�1-040-801-000锛� ==========
     ErrorCode PD_DOCUMENT_NOT_EXISTS = new ErrorCode(1_040_801_000, "璁捐璧勬枡涓嶅瓨鍦�");
@@ -845,10 +904,12 @@
     // ========== MES 浜у搧璁捐-宸ヨ壓鍙傛暟锛�1-040-804-000锛� ==========
     ErrorCode PD_PROCESS_PARAM_NOT_EXISTS = new ErrorCode(1_040_804_000, "宸ヨ壓鍙傛暟涓嶅瓨鍦�");
     ErrorCode PD_PROCESS_PARAM_CODE_DUPLICATE = new ErrorCode(1_040_804_001, "宸ヨ壓鍙傛暟缂栫爜宸插瓨鍦�");
+    ErrorCode PD_PROCESS_PARAM_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_804_002, "瀵煎叆宸ヨ壓鍙傛暟鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 浜у搧璁捐-宸ヨ壓鍙傛暟妯℃澘锛�1-040-805-000锛� ==========
     ErrorCode PD_PROCESS_PARAM_TEMPLATE_NOT_EXISTS = new ErrorCode(1_040_805_000, "宸ヨ壓鍙傛暟妯℃澘涓嶅瓨鍦�");
     ErrorCode PD_PROCESS_PARAM_TEMPLATE_CODE_DUPLICATE = new ErrorCode(1_040_805_001, "宸ヨ壓鍙傛暟妯℃澘缂栫爜宸插瓨鍦�");
+    ErrorCode PD_PROCESS_PARAM_TEMPLATE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_805_002, "瀵煎叆宸ヨ壓鍙傛暟妯℃澘鏁版嵁涓嶈兘涓虹┖");
 
     // ========== MES 浜у搧璁捐-鎹綅瀵肩嚎鎶�鏈弬鏁帮紙1-040-806-000锛� ==========
     ErrorCode PD_CTC_NOT_EXISTS = new ErrorCode(1_040_806_000, "鎹綅瀵肩嚎鎶�鏈弬鏁颁笉瀛樺湪");
@@ -866,11 +927,13 @@
     ErrorCode PD_TECH_CONFIRM_NOT_PENDING_AUDIT = new ErrorCode(1_040_808_004, "鍙湁寰呭鏍哥姸鎬佺殑鎶�鏈‘璁ゅ嚱鎵嶈兘瀹℃牳");
     ErrorCode PD_TECH_CONFIRM_REJECT_REASON_REQUIRED = new ErrorCode(1_040_808_007, "瀹℃牳涓嶉�氳繃鏃跺繀椤诲~鍐欎笉閫氳繃鍘熷洜");
     ErrorCode PD_TECH_CONFIRM_NOT_AUDITED_FOR_CUSTOMER_CONFIRM = new ErrorCode(1_040_808_008, "鍙湁宸插鏍哥姸鎬佺殑鎶�鏈‘璁ゅ嚱鎵嶈兘杩涜瀹㈡埛纭");
+    ErrorCode PD_TECH_CONFIRM_NO_REQUIRED = new ErrorCode(1_040_808_009, "纭鍑界紪鍙蜂笉鑳戒负绌�");
 
     // ========== MES 浜у搧璁捐-浜у搧妗f涓庡熀纭�鏁版嵁锛�1-040-809-000锛� ==========
     ErrorCode PD_PRODUCT_NOT_EXISTS = new ErrorCode(1_040_809_000, "浜у搧妗f涓嶅瓨鍦�");
     ErrorCode PD_PRODUCT_AUDIT_STATUS_INVALID = new ErrorCode(1_040_809_001, "浜у搧妗f鐘舵�佷笉姝g‘锛屾棤娉曟墽琛岃鎿嶄綔");
     ErrorCode PD_PRODUCT_SUBMIT_DUPLICATE = new ErrorCode(1_040_809_002, "浜у搧妗f宸叉彁浜ゅ鎵癸紝璇峰嬁閲嶅鎻愪氦");
+    ErrorCode PD_PRODUCT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_809_003, "瀵煎叆浜у搧妗f鏁版嵁涓嶈兘涓虹┖");
     ErrorCode PD_ELECTRICITY_TYPE_NOT_EXISTS = new ErrorCode(1_040_809_100, "鐢ㄧ數绫诲瀷涓嶅瓨鍦�");
     ErrorCode PD_VOLTAGE_LEVEL_NOT_EXISTS = new ErrorCode(1_040_809_101, "鐢靛帇绛夌骇涓嶅瓨鍦�");
     ErrorCode PD_SERVICE_PACKAGE_NOT_EXISTS = new ErrorCode(1_040_809_102, "鏈嶅姟濂楅涓嶅瓨鍦�");
@@ -893,4 +956,50 @@
     ErrorCode MES_PRO_MAINTENANCE_CALENDAR_NOT_EXISTS = new ErrorCode(1_040_901_100, "鐢靛姏杩愮淮鏃ュ巻涓嶅瓨鍦�");
     ErrorCode MES_PRO_MAINTENANCE_CALENDAR_NOT_PREPARE = new ErrorCode(1_040_901_101, "鐢靛姏杩愮淮鏃ュ巻鐘舵�佷笉姝g‘锛屾棤娉曟墽琛岃鎿嶄綔");
 
+    // ========== MES 浠撳簱绠$悊-鍗曟嵁瀵煎叆锛�1-040-950-000锛� ==========
+    ErrorCode WM_MISC_ISSUE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_000, "瀵煎叆鏉傞」鍑哄簱鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_MISC_RECEIPT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_001, "瀵煎叆鏉傞」鍏ュ簱鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_OUTSOURCE_ISSUE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_002, "瀵煎叆澶栧崗鍙戞枡鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_OUTSOURCE_RECEIPT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_003, "瀵煎叆澶栧崗鍏ュ簱鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_PRODUCT_SALES_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_004, "瀵煎叆閿�鍞嚭搴撳崟鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode WM_PRODUCT_ISSUE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_005, "瀵煎叆鐢熶骇棰嗘枡鍑哄簱鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_PRODUCT_RECPT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_006, "瀵煎叆浜у搧鏀惰揣鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_ITEM_RECEIPT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_007, "瀵煎叆閲囪喘鍏ュ簱鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_EQUIP_RECEIPT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_008, "瀵煎叆璁惧鍏ュ簱鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_ARRIVAL_NOTICE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_009, "瀵煎叆鍒拌揣閫氱煡鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_SALES_NOTICE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_010, "瀵煎叆鍙戣揣閫氱煡鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_RETURN_ISSUE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_011, "瀵煎叆鐢熶骇閫�鏂欏崟鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode WM_RETURN_SALES_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_012, "瀵煎叆閿�鍞��璐у崟鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode WM_RETURN_VENDOR_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_013, "瀵煎叆渚涘簲鍟嗛��璐у崟鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode WM_TRANSFER_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_014, "瀵煎叆杞Щ鍗曟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode WM_PACKAGE_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_950_015, "瀵煎叆瑁呯鍗曟暟鎹笉鑳戒负绌猴紒");
+
+    // ========== MES 鑳借�楃鐞嗭紙1-040-902-000锛� ==========
+    ErrorCode EM_METER_NOT_EXISTS = new ErrorCode(1_040_902_000, "鑳借�楄閲忕偣涓嶅瓨鍦�");
+    ErrorCode EM_METER_CODE_DUPLICATE = new ErrorCode(1_040_902_001, "鑳借�楄閲忕偣缂栫爜宸插瓨鍦�");
+    ErrorCode EM_METER_HAS_RECORD = new ErrorCode(1_040_902_002, "鑳借�楄閲忕偣宸插瓨鍦ㄦ妱琛ㄨ褰曪紝鏃犳硶鍒犻櫎");
+    ErrorCode EM_METER_OBJECT_NOT_EXISTS = new ErrorCode(1_040_902_003, "璁¢噺鐐瑰叧鑱旂殑杞﹂棿/浜х嚎/璁惧涓嶅瓨鍦�");
+    ErrorCode EM_RECORD_NOT_EXISTS = new ErrorCode(1_040_902_010, "鑳借�楁妱琛ㄨ褰曚笉瀛樺湪");
+    ErrorCode EM_RECORD_DATE_DUPLICATE = new ErrorCode(1_040_902_011, "璇ヨ閲忕偣鍦ㄥ綋鏃ュ凡瀛樺湪鎶勮〃璁板綍");
+    ErrorCode EM_RECORD_READING_INVALID = new ErrorCode(1_040_902_012, "鏈熸湯璇绘暟涓嶈兘灏忎簬鏈熷垵璇绘暟");
+    ErrorCode EM_QUOTA_NOT_EXISTS = new ErrorCode(1_040_902_020, "鑳借�楄�冩牳鎸囨爣涓嶅瓨鍦�");
+    ErrorCode EM_QUOTA_OBJECT_NOT_EXISTS = new ErrorCode(1_040_902_021, "鑰冩牳瀵硅薄涓嶅瓨鍦�");
+    ErrorCode EM_ALERT_NOT_EXISTS = new ErrorCode(1_040_902_030, "鑳借�楅璀︿笉瀛樺湪");
+    ErrorCode EM_ALERT_ALREADY_HANDLED = new ErrorCode(1_040_902_031, "鑳借�楅璀﹀凡澶勭悊锛岃鍕块噸澶嶆搷浣�");
+
+    // ========== MES 鐢熶骇妯″潡-鍗曟嵁瀵煎叆锛�1-040-960-000锛� ==========
+    ErrorCode MES_PRO_WORK_ORDER_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_000, "瀵煎叆鐢熶骇宸ュ崟鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode MES_PRO_FEEDBACK_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_001, "瀵煎叆鐢熶骇鎶ュ伐鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode MES_PRO_TASK_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_002, "瀵煎叆鐢熶骇浠诲姟鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode MES_PRO_MPS_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_003, "瀵煎叆 MPS 鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode MES_PRO_CARD_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_004, "瀵煎叆鐢熶骇娴佽浆鍗℃暟鎹笉鑳戒负绌猴紒");
+    ErrorCode MES_PRO_EMERGENCY_PLAN_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_005, "瀵煎叆搴旀�ュ缃妗堟暟鎹笉鑳戒负绌猴紒");
+    ErrorCode MES_PRO_ALTERNATIVE_PLAN_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_006, "瀵煎叆浣滀笟鏇夸唬鏂规鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode MES_PRO_MAINTENANCE_PLAN_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_007, "瀵煎叆鐢靛姏浣滀笟璁″垝鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode MES_PRO_MAINTENANCE_CALENDAR_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_008, "瀵煎叆鐢靛姏杩愮淮鏃ュ巻鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode PD_CTC_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_009, "瀵煎叆鎹綅瀵肩嚎鎶�鏈弬鏁版暟鎹笉鑳戒负绌猴紒");
+    ErrorCode PD_CTC_REEL_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_010, "瀵煎叆鐩樺叿璁$畻鏁版嵁涓嶈兘涓虹┖锛�");
+    ErrorCode PD_TECH_CONFIRM_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_960_011, "瀵煎叆鎶�鏈‘璁ゅ嚱鏁版嵁涓嶈兘涓虹┖锛�");
+
+
 }

--
Gitblit v1.9.3