From f90d9f53beb844265c4153159aadb0baf81bafdb Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期四, 30 七月 2026 18:07:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_business' into dev_business
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/productsales/MesWmProductSalesLineMapper.java | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/productsales/MesWmProductSalesLineMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/productsales/MesWmProductSalesLineMapper.java
index 9dcc9e4..6068a10 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/productsales/MesWmProductSalesLineMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/productsales/MesWmProductSalesLineMapper.java
@@ -1,11 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.mysql.wm.productsales;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.wm.productsales.MesWmProductSalesLineDO;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
+import java.util.Map;
/**
* MES 閿�鍞嚭搴撳崟琛� Mapper
@@ -31,6 +33,26 @@
.orderByDesc(MesWmProductSalesLineDO::getId));
}
+ /**
+ * 鏍规嵁閿�鍞鍗曟槑缁� ID 鍒楄〃鏌ヨ鍑哄簱琛岋紝鎸� saleOrderItemId 鍒嗙粍杩斿洖鎵瑰彿
+ */
+ default Map<Long, String> selectBatchCodesBySaleOrderItemIds(java.util.Collection<Long> saleOrderItemIds) {
+ if (saleOrderItemIds == null || saleOrderItemIds.isEmpty()) {
+ return java.util.Collections.emptyMap();
+ }
+ List<MesWmProductSalesLineDO> lines = selectList(new LambdaQueryWrapperX<MesWmProductSalesLineDO>()
+ .in(MesWmProductSalesLineDO::getSaleOrderItemId, saleOrderItemIds));
+ return lines.stream()
+ .filter(l -> l.getBatchCode() != null && !l.getBatchCode().isEmpty())
+ .collect(java.util.stream.Collectors.groupingBy(
+ MesWmProductSalesLineDO::getSaleOrderItemId,
+ java.util.LinkedHashMap::new,
+ java.util.stream.Collectors.collectingAndThen(
+ java.util.stream.Collectors.mapping(MesWmProductSalesLineDO::getBatchCode,
+ java.util.stream.Collectors.toSet()),
+ codes -> String.join("銆�", codes))));
+ }
+
default void updateQualityStatusByIds(List<Long> ids, Integer qualityStatus) {
update(new MesWmProductSalesLineDO().setQualityStatus(qualityStatus),
new LambdaUpdateWrapper<MesWmProductSalesLineDO>().in(MesWmProductSalesLineDO::getId, ids));
--
Gitblit v1.9.3