From ffca46b39d25439a06a27cafda2ec523a3fb67cf Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 27 十月 2026 17:53:02 +0800
Subject: [PATCH] feat(mes): 增加盘号字段支持和优化报工质检流程
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java | 19 +++++++++++++++++--
1 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java
index f537261..3905288 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchServiceImpl.java
@@ -84,11 +84,16 @@
}
@Override
+ public List<MesWmBatchDO> getBatchList(java.util.Collection<Long> ids) {
+ return CollUtil.isEmpty(ids) ? java.util.Collections.emptyList() : batchMapper.selectByIds(ids);
+ }
+
+ @Override
@Transactional(rollbackFor = Exception.class)
public MesWmBatchDO getOrGenerateBatchCode(MesWmBatchGenerateReqVO reqVO) {
// 1.1 鏌ヨ鐗╂枡淇℃伅锛屾鏌ユ槸鍚﹀惎鐢ㄦ壒娆$鐞�
MesMdmItemDO item = mdmItemService.validateItemExists(reqVO.getItemId());
- if (Boolean.FALSE.equals(item.getIsBatchManaged())) {
+ if (Boolean.FALSE.equals(item.getIsBatchManaged()) && StrUtil.isBlank(reqVO.getReelNo())) {
// 鏈惎鐢ㄦ壒娆$鐞嗭紝杩斿洖 null
return null;
}
@@ -101,7 +106,8 @@
MdmItemBatchConfigRespDTO config = itemBatchConfigApi.getItemBatchConfig(reqVO.getItemId());
// 2. 鏍规嵁閰嶇疆鏍¢獙蹇呭~鍙傛暟骞舵竻绌轰笉闇�瑕佺殑鍙傛暟
- MesWmBatchDO batch = MesWmBatchDO.builder().itemId(reqVO.getItemId()).build();
+ String reelNo = StrUtil.isBlank(reqVO.getReelNo()) ? null : reqVO.getReelNo();
+ MesWmBatchDO batch = MesWmBatchDO.builder().itemId(reqVO.getItemId()).reelNo(reelNo).build();
if (config != null) {
// ========== 蹇呭~鏍¢獙锛坒lag=true 琛ㄧず璇ュ瓧娈典负蹇呭~锛� ==========
// 鐢熶骇鏃ユ湡
@@ -214,6 +220,15 @@
if (!existingBatch.getItemId().equals(reqVO.getItemId())) {
throw exception(WM_BATCH_ITEM_MISMATCH);
}
+ // 宸叉湁鎵规涓嶈兘鏀瑰彉鐩樺彿锛岄伩鍏嶅巻鍙插簱瀛樿璇爣鎴栦笉鍚岀洏鍙锋贩鍚堛��
+ String existingReelNo = StrUtil.isBlank(existingBatch.getReelNo()) ? null : existingBatch.getReelNo();
+ if (!ObjUtil.equal(existingReelNo, reelNo)) {
+ throw exception(WM_BATCH_REEL_MISMATCH);
+ }
+ if (existingReelNo != null && !ObjUtil.equal(existingBatch.getWorkOrderId(), reqVO.getWorkOrderId())) {
+ // 宸叉湁杩芥函鎵规涓嶈兘琚彟涓�宸ュ崟澶嶇敤骞惰鐩栨潵婧愩��
+ throw exception(WM_BATCH_REEL_MISMATCH);
+ }
// 鏇存柊鎵规灞炴�э紙浠呮洿鏂颁紶鍏ョ殑闈炵┖鍊硷級
updateBatchProperties(existingBatch, batch);
return existingBatch;
--
Gitblit v1.9.3