From 3495965b99dfcbf191eefb8294a8de05bedc160a Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 04 九月 2026 13:40:34 +0800
Subject: [PATCH] feat(mes): 新增批量查询方法并优化IPQC/IQC导出功能

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/mps/MesProMpsController.java |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/mps/MesProMpsController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/mps/MesProMpsController.java
index b174b5a..45d87ba 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/mps/MesProMpsController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/mps/MesProMpsController.java
@@ -15,8 +15,10 @@
 import cn.iocoder.yudao.module.crm.api.customer.CrmCustomerApi;
 import cn.iocoder.yudao.module.crm.api.customer.dto.CrmCustomerRespDTO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO;
+import cn.iocoder.yudao.module.mes.dal.dataobject.md.unitmeasure.MesMdUnitMeasureDO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.pro.mps.MesProMpsDO;
 import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService;
+import cn.iocoder.yudao.module.mes.service.md.unitmeasure.MesMdUnitMeasureService;
 import cn.iocoder.yudao.module.mes.service.pro.mps.MesProMpsService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
@@ -47,6 +49,8 @@
     private MesProMpsService mpsService;
     @Resource
     private MesMdItemService itemService;
+    @Resource
+    private MesMdUnitMeasureService unitMeasureService;
     @Resource
     private CrmCustomerApi customerApi;
 
@@ -139,6 +143,8 @@
         // 1. 鎵归噺鑾峰彇鍏宠仈鏁版嵁
         Map<Long, MesMdItemDO> itemMap = itemService.getItemMap(
                 convertSet(list, MesProMpsDO::getProductId));
+        Map<Long, MesMdUnitMeasureDO> unitMap = unitMeasureService.getUnitMeasureMap(
+                convertSet(itemMap.values(), MesMdItemDO::getUnitMeasureId));
         Map<Long, CrmCustomerRespDTO> clientMap = customerApi.getCustomerMap(
                 convertSet(list, MesProMpsDO::getClientId));
         // 2. 鎷兼帴 VO
@@ -147,6 +153,8 @@
                 vo.setProductName(item.getName())
                         .setProductCode(item.getCode())
                         .setProductSpecification(item.getSpecification());
+                MapUtils.findAndThen(unitMap, item.getUnitMeasureId(),
+                        unit -> vo.setUnitMeasureName(unit.getName()));
             });
             MapUtils.findAndThen(clientMap, vo.getClientId(),
                     client -> vo.setClientName(client.getName()));

--
Gitblit v1.9.3