From eccad5a129106377a275be4f7cdc58e99e9b95d4 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 21 七月 2026 13:45:14 +0800
Subject: [PATCH] feat(mes): 实现库存移库功能
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java | 45 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 44 insertions(+), 1 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java
index a4256f0..23f7af4 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java
@@ -1,11 +1,15 @@
package cn.iocoder.yudao.module.mes.dal.mysql.wm.salesnotice;
+import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.wm.salesnotice.vo.MesWmSalesNoticePageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.wm.salesnotice.MesWmSalesNoticeDO;
import org.apache.ibatis.annotations.Mapper;
+
+import java.util.Collection;
+import java.util.List;
/**
* MES 鍙戣揣閫氱煡鍗� Mapper
@@ -17,14 +21,53 @@
return selectPage(reqVO, new LambdaQueryWrapperX<MesWmSalesNoticeDO>()
.likeIfPresent(MesWmSalesNoticeDO::getCode, reqVO.getCode())
.likeIfPresent(MesWmSalesNoticeDO::getName, reqVO.getName())
- .likeIfPresent(MesWmSalesNoticeDO::getSalesOrderCode, reqVO.getSalesOrderCode())
+ .likeIfPresent(MesWmSalesNoticeDO::getSaleOrderCode, reqVO.getSaleOrderCode())
.eqIfPresent(MesWmSalesNoticeDO::getClientId, reqVO.getClientId())
.eqIfPresent(MesWmSalesNoticeDO::getStatus, reqVO.getStatus())
.orderByDesc(MesWmSalesNoticeDO::getId));
}
+ /**
+ * 鍒嗛〉鏌ヨ锛堝甫瀹㈡埛鏉冮檺杩囨护锛�
+ *
+ * @param reqVO 鏌ヨ鏉′欢
+ * @param permittedClientIds 鏈夋潈闄愮殑瀹㈡埛 ID 鍒楄〃锛坣ull 琛ㄧず涓嶉檺鍒讹級
+ * @return 鍒嗛〉缁撴灉
+ */
+ default PageResult<MesWmSalesNoticeDO> selectPage(MesWmSalesNoticePageReqVO reqVO, List<Long> permittedClientIds) {
+ LambdaQueryWrapperX<MesWmSalesNoticeDO> wrapper = new LambdaQueryWrapperX<MesWmSalesNoticeDO>()
+ .likeIfPresent(MesWmSalesNoticeDO::getCode, reqVO.getCode())
+ .likeIfPresent(MesWmSalesNoticeDO::getName, reqVO.getName())
+ .likeIfPresent(MesWmSalesNoticeDO::getSaleOrderCode, reqVO.getSaleOrderCode())
+ .eqIfPresent(MesWmSalesNoticeDO::getClientId, reqVO.getClientId())
+ .eqIfPresent(MesWmSalesNoticeDO::getStatus, reqVO.getStatus())
+ .orderByDesc(MesWmSalesNoticeDO::getId);
+ // 瀹㈡埛鏉冮檺杩囨护
+ if (permittedClientIds != null) {
+ if (CollUtil.isEmpty(permittedClientIds)) {
+ // 绌哄垪琛ㄨ〃绀烘病鏈変换浣曟潈闄愶紝杩斿洖绌虹粨鏋�
+ return PageResult.empty();
+ }
+ wrapper.in(MesWmSalesNoticeDO::getClientId, permittedClientIds);
+ }
+ return selectPage(reqVO, wrapper);
+ }
+
default MesWmSalesNoticeDO selectByCode(String code) {
return selectOne(MesWmSalesNoticeDO::getCode, code);
}
+ default MesWmSalesNoticeDO selectBySaleOrderId(Long saleOrderId) {
+ return selectOne(MesWmSalesNoticeDO::getSaleOrderId, saleOrderId);
+ }
+
+ /**
+ * 鏌ヨ宸插瓨鍦ㄥ彂璐ч�氱煡鍗曠殑閿�鍞鍗� ID 鍒楄〃
+ */
+ default List<Long> selectExistingSaleOrderIds(Collection<Long> saleOrderIds) {
+ return selectObjs(new LambdaQueryWrapperX<MesWmSalesNoticeDO>()
+ .select(MesWmSalesNoticeDO::getSaleOrderId)
+ .in(MesWmSalesNoticeDO::getSaleOrderId, saleOrderIds));
+ }
+
}
--
Gitblit v1.9.3