From 1b07c5a278e4433c276f960a57f2837b968d5262 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Fri, 12 Sep 2025 17:53:23 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms):=20=E6=96=B0=E5=A2=9E=E5=BA=93?= =?UTF-8?q?=E5=AD=98=E6=89=B9=E6=AC=A1=E5=8F=B7=E6=9F=A5=E8=AF=A2=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 IWmsStockIoDetailService 接口中添加 batchQuery 方法 - 在 WmsStockIoDetailController 中添加 batchQuery 接口 - 在 WmsStockIoDetailMapper 接口中添加 batchQuery 方法 - 在 WmsStockIoDetailMapper.xml 中添加对应的 SQL 查询语句 - 在 WmsStockIoDetailServiceImpl 中实现 batchQuery 方法 - 在 WmsStockIoDetailVo 中添加主表的 stockIoCode、ioType 和 bizType 字段 --- .../klp/controller/WmsStockController.java | 1 + .../WmsStockIoDetailController.java | 8 ++++++ .../com/klp/domain/vo/WmsStockIoDetailVo.java | 5 ++++ .../klp/mapper/WmsStockIoDetailMapper.java | 6 +++++ .../java/com/klp/mapper/WmsStockMapper.java | 5 ++++ .../klp/service/IWmsStockIoDetailService.java | 4 +++ .../com/klp/service/IWmsStockService.java | 2 ++ .../impl/WmsStockIoDetailServiceImpl.java | 14 +++++++--- .../klp/service/impl/WmsStockServiceImpl.java | 7 +++-- .../mapper/klp/WmsStockIoDetailMapper.xml | 26 ++++++++++++++++++- 10 files changed, 69 insertions(+), 9 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/controller/WmsStockController.java b/klp-wms/src/main/java/com/klp/controller/WmsStockController.java index 467f6902..d0726a16 100644 --- a/klp-wms/src/main/java/com/klp/controller/WmsStockController.java +++ b/klp-wms/src/main/java/com/klp/controller/WmsStockController.java @@ -108,4 +108,5 @@ public class WmsStockController extends BaseController { List list = iWmsStockService.queryList(bo); return R.ok("查询到 " + list.size() + " 条库存记录,仓库ID: " + warehouseId); } + } diff --git a/klp-wms/src/main/java/com/klp/controller/WmsStockIoDetailController.java b/klp-wms/src/main/java/com/klp/controller/WmsStockIoDetailController.java index adea991a..ef0ca4d4 100644 --- a/klp-wms/src/main/java/com/klp/controller/WmsStockIoDetailController.java +++ b/klp-wms/src/main/java/com/klp/controller/WmsStockIoDetailController.java @@ -3,6 +3,8 @@ package com.klp.controller; import java.util.List; import java.util.Arrays; +import com.klp.domain.bo.WmsStockBo; +import com.klp.domain.vo.WmsStockVo; import lombok.RequiredArgsConstructor; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.*; @@ -97,4 +99,10 @@ public class WmsStockIoDetailController extends BaseController { @PathVariable Long[] detailIds) { return toAjax(iWmsStockIoDetailService.deleteWithValidByIds(Arrays.asList(detailIds), true)); } + //根据批次号联查出入库单主表以及明细表信息 + @PostMapping("/batch/{batchNo}") + public R batchQuery(@RequestBody WmsStockIoDetailBo bo) { + List list = iWmsStockIoDetailService.batchQuery(bo); + return R.ok("查询到 " + list.size() + " 条库存记录,批次号: " + bo.getBatchNo()); + } } diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsStockIoDetailVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsStockIoDetailVo.java index b5a6dcdf..c53a0898 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsStockIoDetailVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsStockIoDetailVo.java @@ -94,5 +94,10 @@ public class WmsStockIoDetailVo { */ private Long fromWarehouseId; + //主表的 数据号 类型以及业务类型 + private String stockIoCode; + private String ioType; + private String bizType; + } diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsStockIoDetailMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsStockIoDetailMapper.java index 7f577e70..b5852969 100644 --- a/klp-wms/src/main/java/com/klp/mapper/WmsStockIoDetailMapper.java +++ b/klp-wms/src/main/java/com/klp/mapper/WmsStockIoDetailMapper.java @@ -1,5 +1,7 @@ package com.klp.mapper; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; import com.klp.domain.WmsStockIoDetail; import com.klp.domain.vo.WmsStockIoDetailVo; import com.klp.common.core.mapper.BaseMapperPlus; @@ -9,6 +11,8 @@ import java.util.Map; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import javax.validation.constraints.NotBlank; + /** * 出入库单明细Mapper接口 * @@ -28,4 +32,6 @@ public interface WmsStockIoDetailMapper extends BaseMapperPlus */ Page selectVoPagePlus(Page page, @Param("ew") Wrapper wrapper); + + List batchQuery(@Param("batchNo") String batchNo); } diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsStockMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsStockMapper.java index d369bcb1..3cc54889 100644 --- a/klp-wms/src/main/java/com/klp/mapper/WmsStockMapper.java +++ b/klp-wms/src/main/java/com/klp/mapper/WmsStockMapper.java @@ -1,5 +1,7 @@ package com.klp.mapper; +import com.klp.common.core.validate.AddGroup; +import com.klp.common.core.validate.EditGroup; import com.klp.domain.WmsStock; import com.klp.domain.vo.WmsStockVo; import com.klp.common.core.mapper.BaseMapperPlus; @@ -8,7 +10,9 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; +import javax.validation.constraints.NotBlank; import java.math.BigDecimal; +import java.util.List; /** * 库存:原材料/产品与库区/库位的存放关系Mapper接口 @@ -24,4 +28,5 @@ public interface WmsStockMapper extends BaseMapperPlus */ Page selectVoPagePlus(Page page, @Param("ew") Wrapper wrapper); + } diff --git a/klp-wms/src/main/java/com/klp/service/IWmsStockIoDetailService.java b/klp-wms/src/main/java/com/klp/service/IWmsStockIoDetailService.java index 46862e72..cf5ba34b 100644 --- a/klp-wms/src/main/java/com/klp/service/IWmsStockIoDetailService.java +++ b/klp-wms/src/main/java/com/klp/service/IWmsStockIoDetailService.java @@ -1,10 +1,12 @@ package com.klp.service; import com.klp.domain.WmsStockIoDetail; +import com.klp.domain.bo.WmsStockBo; import com.klp.domain.vo.WmsStockIoDetailVo; import com.klp.domain.bo.WmsStockIoDetailBo; import com.klp.common.core.page.TableDataInfo; import com.klp.common.core.domain.PageQuery; +import com.klp.domain.vo.WmsStockVo; import java.util.Collection; import java.util.List; @@ -46,4 +48,6 @@ public interface IWmsStockIoDetailService { * 校验并批量删除出入库单明细信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + List batchQuery(WmsStockIoDetailBo bo); } diff --git a/klp-wms/src/main/java/com/klp/service/IWmsStockService.java b/klp-wms/src/main/java/com/klp/service/IWmsStockService.java index 2c3d8958..1a9c650b 100644 --- a/klp-wms/src/main/java/com/klp/service/IWmsStockService.java +++ b/klp-wms/src/main/java/com/klp/service/IWmsStockService.java @@ -52,4 +52,6 @@ public interface IWmsStockService { * 根据原材料ID获取库存数量 (用于生成推荐采购计划) */ BigDecimal getStockByItemId(Long rawMaterialId); + + } diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsStockIoDetailServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsStockIoDetailServiceImpl.java index ff2013f7..b8d5650b 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsStockIoDetailServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsStockIoDetailServiceImpl.java @@ -9,6 +9,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.klp.common.utils.StringUtils; import com.klp.domain.WmsProduct; import com.klp.domain.WmsRawMaterial; +import com.klp.domain.bo.WmsStockBo; +import com.klp.domain.vo.WmsStockVo; import com.klp.mapper.WmsProductMapper; import com.klp.mapper.WmsRawMaterialMapper; import lombok.RequiredArgsConstructor; @@ -22,10 +24,8 @@ import com.klp.mapper.WmsStockIoDetailMapper; import com.klp.mapper.WmsStockIoMapper; import com.klp.service.IWmsStockIoDetailService; -import java.util.List; -import java.util.Map; -import java.util.Collection; -import java.util.Date; +import java.util.*; + import com.klp.common.exception.ServiceException; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -220,4 +220,10 @@ public class WmsStockIoDetailServiceImpl implements IWmsStockIoDetailService { return baseMapper.deleteBatchIds(ids) > 0; } + + @Override + public List batchQuery(WmsStockIoDetailBo bo) { + //根据这个bo.getBatchNo()拿到这个批次号对应明细表的信息在根据明细表带的stockIoId拿到库存表信息 + return baseMapper.batchQuery(bo.getBatchNo()); + } } diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsStockServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsStockServiceImpl.java index e3370503..04832858 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsStockServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsStockServiceImpl.java @@ -23,10 +23,7 @@ import com.klp.mapper.WmsWarehouseMapper; import com.klp.service.IWmsStockService; import java.math.BigDecimal; -import java.util.List; -import java.util.Map; -import java.util.Collection; -import java.util.ArrayList; +import java.util.*; /** * 库存:原材料/产品与库区/库位的存放关系Service业务层处理 @@ -182,6 +179,8 @@ public class WmsStockServiceImpl implements IWmsStockService { return baseMapper.getStockByItemId(rawMaterialId); } + + /** * 获取指定仓库ID及其所有子仓库ID * @param warehouseId 仓库ID diff --git a/klp-wms/src/main/resources/mapper/klp/WmsStockIoDetailMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsStockIoDetailMapper.xml index 48491ce4..45b7cf44 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsStockIoDetailMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsStockIoDetailMapper.xml @@ -79,5 +79,29 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" LEFT JOIN wms_warehouse w2 ON d.from_warehouse_id = w2.warehouse_id and w2.del_flag = 0 ${ew.customSqlSegment} - +