From 3edf8c4fc07f9784e2d04ee7a98692bb457749eb Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 26 十月 2026 16:28:10 +0800
Subject: [PATCH] feat(mes): 新增工艺路线完整导入功能并优化相关验证
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java | 23 +++++++++++++++++++++--
1 files changed, 21 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 34ddf34..7d567b5 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
@@ -32,6 +32,7 @@
// ========== MES 鍩虹鏁版嵁-鐗╂枡锛�1-040-102-000锛� ==========
ErrorCode MD_ITEM_NOT_EXISTS = new ErrorCode(1_040_102_000, "鐗╂枡涓嶅瓨鍦�");
ErrorCode MD_ITEM_CODE_DUPLICATE = new ErrorCode(1_040_102_001, "鐗╂枡缂栫爜宸插瓨鍦�");
+ // 1_040_102_002锛氱墿鏂欏悕绉板敮涓�鏍¢獙宸插彇娑堬紙鍏佽鍚屽悕涓嶅悓缂栫爜锛屼笌 MDM 鐗╂枡瀵归綈锛夛紝姝ょ爜浠呬繚鐣欏崰浣嶏紝璇峰嬁鍐嶇敤浜庢牎楠�
ErrorCode MD_ITEM_NAME_DUPLICATE = new ErrorCode(1_040_102_002, "鐗╂枡鍚嶇О宸插瓨鍦�");
ErrorCode MD_ITEM_BATCH_REQUIRED = new ErrorCode(1_040_102_004, "褰撳墠鐗╂枡鍚敤浜嗘壒娆$鐞嗭紝璇烽�夋嫨鎵规");
ErrorCode MD_ITEM_IS_DISABLE = new ErrorCode(1_040_102_005, "鐗╂枡宸茬鐢�");
@@ -64,7 +65,6 @@
// ========== MES 鍩虹鏁版嵁-瀹㈡埛锛�1-040-103-000锛� ==========
ErrorCode MD_CLIENT_NOT_EXISTS = new ErrorCode(1_040_103_000, "瀹㈡埛涓嶅瓨鍦�");
- ErrorCode MD_CLIENT_CODE_DUPLICATE = new ErrorCode(1_040_103_001, "瀹㈡埛缂栫爜宸插瓨鍦�");
ErrorCode MD_CLIENT_NAME_DUPLICATE = new ErrorCode(1_040_103_002, "瀹㈡埛鍚嶇О宸插瓨鍦�");
ErrorCode MD_CLIENT_NICKNAME_DUPLICATE = new ErrorCode(1_040_103_003, "瀹㈡埛绠�绉板凡瀛樺湪");
ErrorCode MD_CLIENT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_103_004, "瀵煎叆瀹㈡埛鏁版嵁涓嶈兘涓虹┖");
@@ -254,6 +254,7 @@
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_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, "搴忓彿宸插瓨鍦�");
@@ -262,6 +263,13 @@
// ========== MES 鐢熶骇绠$悊-宸ヨ壓璺嚎浜у搧锛�1-040-501-200锛� ==========
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, "鐗╂枡銆恵}銆戠殑涓绘暟鎹被鍨嬪強MES鍒嗙被鍧囬潪鎴愬搧/鍗婃垚鍝侊紝璇峰厛鏍稿鐗╂枡绫诲瀷");
+ 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 鐗╂枡鍦ㄦ宸ュ簭宸茬粡閰嶇疆杩�");
@@ -291,6 +299,8 @@
// ========== MES 鐢熶骇绠$悊-鐢熶骇浠诲姟锛�1-040-503-000锛� ==========
ErrorCode PRO_TASK_NOT_EXISTS = new ErrorCode(1_040_503_000, "鐢熶骇浠诲姟涓嶅瓨鍦�");
+ ErrorCode PRO_TASK_SCHEDULE_INVALID = new ErrorCode(1_040_503_020, "鎺掍骇鏍¢獙鏈�氳繃锛歿}");
+ ErrorCode PRO_TASK_SCHEDULE_PREVIEW_CHANGED = new ErrorCode(1_040_503_021, "鎺掍骇鏁版嵁宸插彉鍖栨垨棰勮宸茶繃鏈燂紝璇烽噸鏂扮敓鎴愰瑙堝悗纭");
ErrorCode PRO_TASK_ALREADY_FINISHED = new ErrorCode(1_040_503_001, "鐢熶骇浠诲姟宸插畬鎴愭垨宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔");
ErrorCode PRO_TASK_WORK_ORDER_MISMATCH = new ErrorCode(1_040_503_002, "鐢熶骇浠诲姟涓嶅睘浜庡綋鍓嶇敓浜у伐鍗�");
ErrorCode PRO_TASK_WORKSTATION_MISMATCH = new ErrorCode(1_040_503_003, "鐢熶骇浠诲姟涓嶅睘浜庡綋鍓嶅伐浣滅珯");
@@ -298,7 +308,7 @@
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_009, "宸ヤ綔绔欐墍灞炲伐搴忎笌褰撳墠宸ュ簭涓嶄竴鑷�"); // 淇缂栧彿鍐茬獊
- ErrorCode PRO_TASK_CANNOT_PAUSE = new ErrorCode(1_040_503_007, "鍙湁銆愮敓浜т腑銆戞垨銆愰儴鍒嗗畬鎴愩�戠殑浠诲姟鍙互鍋滃伐");
+ 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, "鐢熶骇浠诲姟鎶曟枡璁板綍涓嶅瓨鍦�");
@@ -332,6 +342,7 @@
"鎶ュ伐瀵瑰簲鐨勪骇鍑哄叆搴撳崟宸插瓨鍦ㄥ鐞嗙粨鏋滐紝鏃犳硶鑷姩琛ョ敓鎴愬緟妫�琛岋紝璇疯繍琛岃川妫�鎶ュ伐鏁版嵁淇鑴氭湰鏍稿");
ErrorCode PRO_FEEDBACK_PREV_PROCESS_NOT_FINISHED = new ErrorCode(1_040_506_016,
"涓婁竴閬撳伐搴忋�寋}銆嶅皻鏈姤宸ュ畬鎴愶紙鍓╀綑 {}锛夛紝璇峰厛瀹屾垚涓婁竴閬撳伐搴忕殑鎶ュ伐");
+ ErrorCode PRO_FEEDBACK_EQUIPMENT_INVALID = new ErrorCode(1_040_506_017, "鎶ュ伐璁惧鏍¢獙澶辫触锛歿}");
// ========== MES 鐢熶骇绠$悊-鐢熶骇娴佽浆鍗★紙1-040-507-000锛� ==========
ErrorCode PRO_CARD_NOT_EXISTS = new ErrorCode(1_040_507_000, "鐢熶骇娴佽浆鍗′笉瀛樺湪");
@@ -372,6 +383,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, "缂洪櫡绫诲瀷涓嶅瓨鍦�");
@@ -807,6 +824,8 @@
// ========== MES 浜у搧璁捐-璧勬枡瀹℃牳锛�1-040-802-000锛� ==========
ErrorCode PD_DOCUMENT_AUDIT_NOT_EXISTS = new ErrorCode(1_040_802_000, "璧勬枡瀹℃牳璁板綍涓嶅瓨鍦�");
+ ErrorCode PD_DOCUMENT_AUDIT_STATUS_REQUIRED = new ErrorCode(1_040_802_001, "瀹℃牳缁撴灉涓嶈兘涓虹┖锛氳閫夋嫨銆屽鏍搁�氳繃銆嶆垨銆屽鏍镐笉閫氳繃銆嶅悗閲嶆柊鎻愪氦");
+ ErrorCode PD_DOCUMENT_AUDIT_STATUS_INVALID = new ErrorCode(1_040_802_002, "瀹℃牳缁撴灉涓嶅悎娉曪細鍙厑璁搞�屽鏍搁�氳繃銆嶆垨銆屽鏍镐笉閫氳繃銆嶏紝璇烽噸鏂伴�夋嫨鍚庢彁浜�");
// ========== MES 浜у搧璁捐-褰掓。鍙拌处锛�1-040-803-000锛� ==========
ErrorCode PD_ARCHIVE_NOT_EXISTS = new ErrorCode(1_040_803_000, "褰掓。鍙拌处涓嶅瓨鍦�");
--
Gitblit v1.9.3