From cea8396d93b31fe6037a0558febcabb2169363a8 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期三, 14 十月 2026 14:02:25 +0800
Subject: [PATCH] feat(wm): 入库单和领料单支持手工填写关联信息

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/itemreceipt/MesWmItemReceiptController.java |   24 +++++++++++++++---------
 1 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/itemreceipt/MesWmItemReceiptController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/itemreceipt/MesWmItemReceiptController.java
index deb0f72..de53d77 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/itemreceipt/MesWmItemReceiptController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/itemreceipt/MesWmItemReceiptController.java
@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.mes.controller.admin.wm.itemreceipt;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
 import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageParam;
@@ -17,8 +18,8 @@
 import cn.iocoder.yudao.module.mes.service.qc.iqc.MesQcIqcService;
 import cn.iocoder.yudao.module.mes.service.wm.arrivalnotice.MesWmArrivalNoticeService;
 import cn.iocoder.yudao.module.mes.service.wm.itemreceipt.MesWmItemReceiptService;
-import cn.iocoder.yudao.module.erp.api.purchase.ErpSupplierApi;
-import cn.iocoder.yudao.module.erp.api.purchase.dto.ErpSupplierRespDTO;
+import cn.iocoder.yudao.module.srm.api.supplier.SrmSupplierApi;
+import cn.iocoder.yudao.module.srm.api.supplier.dto.SrmSupplierRespDTO;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -47,7 +48,7 @@
     @Resource
     private MesWmItemReceiptService itemReceiptService;
     @Resource
-    private ErpSupplierApi supplierApi;
+    private SrmSupplierApi srmSupplierApi;
     @Resource
     private MesQcIqcService iqcService;
     @Resource
@@ -172,21 +173,26 @@
             return Collections.emptyList();
         }
         // 1. 鑾峰緱鍏宠仈鏁版嵁锛堥噰璐叆搴撲娇鐢� ERP 渚涘簲鍟嗭級
-        Map<Long, ErpSupplierRespDTO> supplierMap = supplierApi.getSupplierList(
+        Map<Long, SrmSupplierRespDTO> supplierMap = srmSupplierApi.getSupplierList(
                 convertSet(list, MesWmItemReceiptDO::getVendorId)).getCheckedData().stream()
-                .collect(java.util.stream.Collectors.toMap(ErpSupplierRespDTO::getId, v -> v, (a, b) -> a));
+                .collect(java.util.stream.Collectors.toMap(SrmSupplierRespDTO::getId, v -> v, (a, b) -> a));
         Map<Long, MesQcIqcDO> iqcMap = iqcService.getIqcMap(
                 convertSet(list, MesWmItemReceiptDO::getIqcId));
         Map<Long, MesWmArrivalNoticeDO> noticeMap = arrivalNoticeService.getArrivalNoticeMap(
                 convertSet(list, MesWmItemReceiptDO::getNoticeId));
         // 2. 鏋勫缓缁撴灉
         return BeanUtils.toBean(list, MesWmItemReceiptRespVO.class, vo -> {
-            MapUtils.findAndThen(supplierMap, vo.getVendorId(),
-                    supplier -> vo.setVendorName(supplier.getName()));
+            // 渚涘簲鍟嗗悕绉般�佸埌璐ч�氱煡鍗曠紪鐮佷互鍗曟嵁涓婄殑鏂囨湰涓哄噯锛堟敮鎸佹墜宸ュ~鍐欙級锛涗负绌烘椂鎵嶅洖閫�鍒版寜缂栧彿鍙嶆煡锛屽吋瀹瑰巻鍙叉暟鎹�
+            if (StrUtil.isEmpty(vo.getVendorName())) {
+                MapUtils.findAndThen(supplierMap, vo.getVendorId(),
+                        supplier -> vo.setVendorName(supplier.getName()));
+            }
             MapUtils.findAndThen(iqcMap, vo.getIqcId(),
                     iqc -> vo.setIqcCode(iqc.getCode()));
-            MapUtils.findAndThen(noticeMap, vo.getNoticeId(), notice ->
-                    vo.setNoticeCode(notice.getCode()));
+            if (StrUtil.isEmpty(vo.getNoticeCode())) {
+                MapUtils.findAndThen(noticeMap, vo.getNoticeId(), notice ->
+                        vo.setNoticeCode(notice.getCode()));
+            }
         });
     }
 

--
Gitblit v1.9.3