From 481d8165f26fc7e37f0e87f6444ac0340bb563a3 Mon Sep 17 00:00:00 2001
From: xiaoyi <908147524@qq.com>
Date: 星期二, 03 十一月 2026 18:53:22 +0800
Subject: [PATCH] fix: 移植长辉已验证的四类接口 500/体验问题(不含物料颜色字段)
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java | 20 +++++++++++++-------
1 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
index 5a46e79..b43e40f 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
@@ -80,6 +80,12 @@
updateItem(createReqVO);
return createReqVO.getId();
}
+ // 瀛樺湪閫昏緫鍒犻櫎璁板綍锛堝彇娑堝悓姝ュ悗閲嶆柊鍚屾锛夛細鎭㈠璇ヨ褰曞悗璧版洿鏂帮紝閬垮厤涓婚敭鍐茬獊
+ if (itemMapper.selectAnyById(createReqVO.getId()) != null) {
+ itemMapper.restoreById(createReqVO.getId());
+ updateItem(createReqVO);
+ return createReqVO.getId();
+ }
}
// 鎻掑叆
@@ -129,8 +135,10 @@
private void validateItemSaveData(MesMdItemSaveReqVO reqVO) {
// 鏍¢獙鐗╂枡缂栫爜鐨勫敮涓�鎬�
validateItemCodeUnique(reqVO.getId(), reqVO.getCode());
- // 鏍¢獙鐗╂枡鍚嶇О鐨勫敮涓�鎬�
- validateItemNameUnique(reqVO.getId(), reqVO.getName());
+ // 鏍¢獙鐗╂枡鍚嶇О鐨勫敮涓�鎬э細MDM 涓绘暟鎹互缂栫爜涓哄敮涓�鏍囪瘑锛屽厑璁稿悓鍚嶄笉鍚岃鏍�
+ if (reqVO.getMdmItemId() == null) {
+ validateItemNameUnique(reqVO.getId(), reqVO.getName());
+ }
// 鏍¢獙鐗╂枡鍒嗙被瀛樺湪
validateItemTypeExists(reqVO.getItemTypeId());
// 鏍¢獙璁¢噺鍗曚綅瀛樺湪
@@ -206,11 +214,9 @@
}
private void validateItemNameUnique(Long id, String name) {
- MesMdItemDO item = itemMapper.selectByName(name);
- if (item == null) {
- return;
- }
- if (ObjUtil.notEqual(item.getId(), id)) {
+ // 浣跨敤鍒楄〃鏌ヨ锛氬瓨閲忔暟鎹彲鑳藉瓨鍦ㄥ悓鍚嶇墿鏂欙紝閬垮厤 selectOne 鐩存帴鎶涘紓甯�
+ List<MesMdItemDO> items = itemMapper.selectList(MesMdItemDO::getName, name);
+ if (items.stream().anyMatch(item -> ObjUtil.notEqual(item.getId(), id))) {
throw exception(MD_ITEM_NAME_DUPLICATE);
}
}
--
Gitblit v1.9.3