From b3fe06c151dc8455649bf0a46e481ceb83e3ea2a Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期六, 07 十一月 2026 13:37:54 +0800
Subject: [PATCH] feat: 完成好水川 MOM 需求1/2/4/5/8(装箱、BOM成本、销售合同、劳动合同、留样)

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java |   23 +++++++++++++++++++++++
 1 files changed, 23 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..7b2fb8a 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
@@ -282,6 +282,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_RETENTION_SAMPLE_REQUIRED = new ErrorCode(1_040_502_007, "鐢熶骇宸ュ崟銆恵}銆戝皻鏈櫥璁扮暀鏍疯褰曪紝鏃犳硶瀹屾垚锛涜鍏堝湪銆愯川閲忕鐞� 鈫� 鐣欐牱绠$悊銆戜腑鏂板璇ュ伐鍗曠殑鐣欐牱璁板綍");
+    ErrorCode PRO_WORK_ORDER_NO_PRODUCED_QUANTITY = new ErrorCode(1_040_502_008, "鐢熶骇宸ュ崟銆恵}銆戝凡鐢熶骇鏁伴噺涓� 0锛屾棤娉曞畬鎴愶紱璇峰厛鍦ㄦ渶鍚庝竴閬撳伐搴忓畬鎴愭姤宸ュ苟瀹℃壒閫氳繃锛屽緟宸ュ崟宸茬敓浜ф暟閲忓ぇ浜� 0 鍚庡啀瀹屾垚宸ュ崟");
     ErrorCode PRO_WORK_ORDER_BOM_NOT_EXISTS = new ErrorCode(1_040_502_100, "鐢熶骇宸ュ崟BOM涓嶅瓨鍦�");
 
     // ========== MES 鐢熶骇绠$悊-鐢熶骇宸ュ崟宸ュ簭锛�1-040-502-300锛� ==========
@@ -460,6 +462,21 @@
     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, "鍙湁宸插缃姸鎬佺殑涓嶅悎鏍煎搧澶勭悊鍗曟墠鍙叧闂�");
+
+    // ========== MES 璐ㄩ噺绠$悊-鐣欐牱绠$悊锛�1-040-610-000锛� ==========
+    ErrorCode QC_RETENTION_SAMPLE_NOT_EXISTS = new ErrorCode(1_040_610_000, "鐣欐牱璁板綍涓嶅瓨鍦�");
+    ErrorCode QC_RETENTION_SAMPLE_CODE_DUPLICATE = new ErrorCode(1_040_610_001, "鐣欐牱缂栧彿銆恵}銆戝凡瀛樺湪锛岃鍒锋柊椤甸潰鍚庨噸璇�");
+    ErrorCode QC_RETENTION_SAMPLE_WORK_ORDER_NOT_EXISTS = new ErrorCode(1_040_610_002, "鐢熶骇宸ュ崟涓嶅瓨鍦紝璇烽噸鏂伴�夋嫨宸ュ崟");
+    ErrorCode QC_RETENTION_SAMPLE_WORK_ORDER_DUPLICATE = new ErrorCode(1_040_610_003, "鐢熶骇宸ュ崟銆恵}銆戝凡鐧昏鐣欐牱璁板綍锛堢暀鏍风紪鍙枫�恵}銆戯級锛屾瘡寮犲伐鍗曞彧鑳界櫥璁颁竴鏉$暀鏍凤紱濡傞渶璋冩暣璇蜂慨鏀瑰師鐣欐牱璁板綍");
+    ErrorCode QC_RETENTION_SAMPLE_WORK_ORDER_CANCELED = new ErrorCode(1_040_610_004, "鐢熶骇宸ュ崟銆恵}銆戝凡鍙栨秷锛屼笉鑳界櫥璁扮暀鏍�");
+    ErrorCode QC_RETENTION_SAMPLE_QUANTITY_INVALID = new ErrorCode(1_040_610_005, "鐣欐牱鏁伴噺蹇呴』澶т簬 0锛岃濉啓瀹為檯鐣欐牱浠舵暟");
+    ErrorCode QC_RETENTION_SAMPLE_SALE_ORDER_REQUIRED = new ErrorCode(1_040_610_006, "鐢熶骇宸ュ崟銆恵}銆戞潵婧愰攢鍞鍗曘�恵}銆戯紝璇烽�夋嫨瀵瑰簲鐨勯攢鍞鍗曞悗鍐嶇櫥璁扮暀鏍�");
+    ErrorCode QC_RETENTION_SAMPLE_SALE_ORDER_MISMATCH = new ErrorCode(1_040_610_007, "鎵�閫夐攢鍞鍗曚笌宸ュ崟涓嶄竴鑷达細宸ュ崟銆恵}銆戝搴旈攢鍞鍗曚负銆恵}銆戯紝鎻愪氦鐨勯攢鍞鍗曚负銆恵}銆戯紱璇烽噸鏂伴�夋嫨璇ュ伐鍗曞搴旂殑閿�鍞鍗�");
+    ErrorCode QC_RETENTION_SAMPLE_SALE_ORDER_NOT_EXISTS = new ErrorCode(1_040_610_008, "鎵�閫夐攢鍞鍗曚笉瀛樺湪锛坽}锛夛紝璇烽噸鏂伴�夋嫨");
+    ErrorCode QC_RETENTION_SAMPLE_WORK_ORDER_CHANGED = new ErrorCode(1_040_610_009, "鐣欐牱璁板綍涓嶅厑璁镐慨鏀规墍灞炵敓浜у伐鍗曪紱濡傞渶鏇存崲宸ュ崟锛岃鍒犻櫎鏈潯璁板綍鍚庨噸鏂扮櫥璁�");
+    ErrorCode QC_RETENTION_SAMPLE_FINISHED_DELETE = new ErrorCode(1_040_610_010, "鐢熶骇宸ュ崟銆恵}銆戝凡瀹屾垚锛岀暀鏍疯褰曚笉鍏佽鍒犻櫎锛涘闇�璋冩暣璇疯仈绯荤鐞嗗憳");
+    ErrorCode QC_RETENTION_SAMPLE_SALE_ORDER_AMBIGUOUS = new ErrorCode(1_040_610_011, "鐢熶骇宸ュ崟銆恵}銆戠敱澶氬紶閿�鍞鍗曞悎骞朵笅鍙戯紙{}锛夛紝璇烽�夋嫨鏈鐣欐牱瀵瑰簲鐨勯攢鍞鍗�");
+    ErrorCode QC_RETENTION_SAMPLE_MPS_SALE_ORDER_NOT_EXISTS = new ErrorCode(1_040_610_012, "鐢熶骇宸ュ崟銆恵}銆戠敱 MPS 涓嬪彂锛屼絾 MPS 璁板綍鐨勯攢鍞鍗曘�恵}銆戯紙ID={}锛夊湪閿�鍞鍗曚腑涓嶅瓨鍦紝鏃犳硶鐧昏鐣欐牱锛涜鍏堜慨姝h MPS 鐨勯攢鍞鍗曚俊鎭悗鍐嶇櫥璁�");
 
     // ========== MES 浠撳簱绠$悊-浠撳簱锛�1-040-700-000锛� ==========
     ErrorCode WM_WAREHOUSE_NOT_EXISTS = new ErrorCode(1_040_700_000, "浠撳簱涓嶅瓨鍦�");
@@ -805,6 +822,12 @@
     ErrorCode WM_PACKAGE_CHILD_NOT_FINISHED = new ErrorCode(1_040_740_007, "瀛愮蹇呴』鏄凡瀹屾垚鐘舵�佹墠鑳芥坊鍔�");
     ErrorCode WM_PACKAGE_HAS_CHILDREN = new ErrorCode(1_040_740_008, "瀛樺湪瀛愮锛屼笉鍏佽鍒犻櫎");
     ErrorCode WM_PACKAGE_LINE_NOT_EXISTS = new ErrorCode(1_040_740_100, "瑁呯鏄庣粏涓嶅瓨鍦�");
+    ErrorCode WM_PACKAGE_LINE_ITEM_NOT_FINISHED = new ErrorCode(1_040_740_101, "瑁呯鐗╂枡銆恵}銆戞墍灞炲垎绫讳笉鏄垚鍝佸垎绫伙紝涓嶈兘瑁呯锛涜閫夋嫨鎴愬搧鍒嗙被涓嬬殑鐗╂枡");
+    ErrorCode WM_PACKAGE_LINE_BOX_QUANTITY_NOT_CONFIGURED = new ErrorCode(1_040_740_102, "瑁呯鐗╂枡銆恵}銆戞湭閰嶇疆姣忕鏁伴噺锛屾棤娉曡嚜鍔ㄨ绠楃鏁帮紱璇峰厛鍦ㄧ墿鏂欐。妗堜腑缁存姢姣忕鏁伴噺");
+    ErrorCode WM_PACKAGE_LINE_WORK_ORDER_PRODUCT_MISMATCH = new ErrorCode(1_040_740_103, "瑁呯鐗╂枡銆恵}銆戜笌鐢熶骇宸ュ崟銆恵}銆戠殑浜у搧銆恵}銆戜笉涓�鑷达紝璇烽�夋嫨璇ュ伐鍗曞搴旂殑浜у搧瑁呯");
+    ErrorCode WM_PACKAGE_LINE_WORK_ORDER_QUANTITY_EXCEED = new ErrorCode(1_040_740_104, "鐢熶骇宸ュ崟銆恵}銆戣绠辨暟閲忚秴闄愶細宸ュ崟鏁伴噺 {}锛屽凡瑁呯/宸茶鍒� {}锛屾湰娆¤绠� {}锛涜璋冩暣瑁呯鏁伴噺");
+    ErrorCode WM_PACKAGE_LINE_ASSEMBLY_PROCESS_NOT_FOUND = new ErrorCode(1_040_740_105, "鐢熶骇宸ュ崟銆恵}銆戞湭閰嶇疆銆愮粍瑁呫�戝伐搴忥紝涓嶈兘瑁呯锛涜鍏堝湪璇ュ伐鍗曠殑銆屽伐鍗曞伐搴忋�嶄腑娣诲姞鍚嶇О涓恒�岀粍瑁呫�嶏紙缂栫爜 PRO-ASSEMBLY锛夌殑宸ュ簭锛屽苟瀹屾垚鎶ュ伐");
+    ErrorCode WM_PACKAGE_LINE_ASSEMBLY_NOT_COMPLETED = new ErrorCode(1_040_740_106, "鐢熶骇宸ュ崟銆恵}銆戠粍瑁呭伐搴忔姤宸ュ悎鏍兼暟閲忎笉瓒筹細宸插畬鎴愮粍瑁呭悎鏍� {}锛屾湰娆¤绠卞悗绱瑁呯 {}锛堝凡瑁呯/宸茶鍒� {} + 鏈 {}锛夛紱璇峰厛瀹屾垚缁勮宸ュ簭鎶ュ伐锛屾垨璋冨皬鏈瑁呯鏁伴噺");
 
     // ========== MES 浜у搧璁捐-璁捐椤圭洰锛�1-040-800-000锛� ==========
     ErrorCode PD_PROJECT_NOT_EXISTS = new ErrorCode(1_040_800_000, "璁捐椤圭洰涓嶅瓨鍦�");

--
Gitblit v1.9.3