From e85a60b1778ed442545c00e14bbfe4f8d33c68ac Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 31 八月 2026 16:09:09 +0800
Subject: [PATCH] fix(mes): 解决生产反馈和物料消耗服务中的潜在异常问题
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemconsume/MesWmItemConsumeServiceImpl.java | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemconsume/MesWmItemConsumeServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemconsume/MesWmItemConsumeServiceImpl.java
index 51bf769..48994c6 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemconsume/MesWmItemConsumeServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemconsume/MesWmItemConsumeServiceImpl.java
@@ -27,6 +27,7 @@
import cn.iocoder.yudao.module.mes.service.wm.warehouse.MesWmWarehouseLocationService;
import cn.iocoder.yudao.module.mes.service.wm.warehouse.MesWmWarehouseService;
import jakarta.annotation.Resource;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
@@ -48,6 +49,7 @@
*/
@Service
@Validated
+@Slf4j
public class MesWmItemConsumeServiceImpl implements MesWmItemConsumeService {
@Resource
@@ -181,6 +183,11 @@
// 2. 閬嶅巻鏄庣粏锛屽垱寤哄簱瀛樹簨鍔★紙鎸夋壒娆$簿纭墸鍑忕嚎杈瑰簱锛�
for (MesWmItemConsumeDetailDO detail : details) {
MesMdItemDO item = mesMdItemService.getItem(detail.getItemId());
+ // 鐗╂枡涓绘暟鎹己澶憋紙BOM 寮曠敤浜嗗凡鍒犻櫎/鏈悓姝ョ殑鐗╂枡锛夋椂璺宠繃璇ヨ锛岄伩鍏� NPE 闃绘柇鎶ュ伐
+ if (item == null || item.getMdmItemId() == null) {
+ log.warn("[finishItemConsume] 娑堣�楁槑缁�({}) 鐗╂枡({}) 鍦� mes_md_item 涓笉瀛樺湪锛岃烦杩囨墸搴�", detail.getId(), detail.getItemId());
+ continue;
+ }
wmTransactionService.createTransaction(new MesWmTransactionSaveReqDTO()
.setType(MesWmTransactionTypeEnum.OUT.getType())
.setItemId(item.getMdmItemId())
--
Gitblit v1.9.3