From 8767289e4d1284192e6a5d7b406dafe88aed3607 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Tue, 14 Oct 2025 10:19:38 +0800 Subject: [PATCH] =?UTF-8?q?2025-10-14=20=E9=94=80=E5=94=AE=E5=8F=91?= =?UTF-8?q?=E8=B4=A7=E8=A3=85=E7=AE=B1=E6=96=B0=E5=A2=9E=E7=9B=92=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BoxForNotificationController.java | 15 +++ .../dao/BoxForNotificationMapper.java | 11 ++ .../service/BoxForNotificationService.java | 7 ++ .../impl/BoxForNotificationServiceImpl.java | 13 +- .../entity/vo/OutboundNotificationHeadVo.java | 16 ++- .../boxManage/BoxForNotificationMapper.xml | 111 +++++++++++++++++- 6 files changed, 167 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/gaotao/modules/boxManage/controller/BoxForNotificationController.java b/src/main/java/com/gaotao/modules/boxManage/controller/BoxForNotificationController.java index 9ace40d..7a6d604 100644 --- a/src/main/java/com/gaotao/modules/boxManage/controller/BoxForNotificationController.java +++ b/src/main/java/com/gaotao/modules/boxManage/controller/BoxForNotificationController.java @@ -156,4 +156,19 @@ public class BoxForNotificationController { srmSupplierService.saveCaseRollList(dataList); return R.ok(); } + + /** + * 查询出库通知单主记录(关联明细) + * @description 用于销售发货装箱查询,单独查询出库通知单主记录并关联明细 + * @author AI + * @date 2025/10/14 + * @param data 查询条件 + * @return R + */ + @PostMapping(value="/searchOutboundNotificationWithDetail") + @ResponseBody + public R searchOutboundNotificationWithDetail(@RequestBody OutboundNotificationHeadVo data) { + List rows = srmSupplierService.searchOutboundNotificationWithDetail(data); + return R.ok().put("rows", rows); + } } diff --git a/src/main/java/com/gaotao/modules/boxManage/dao/BoxForNotificationMapper.java b/src/main/java/com/gaotao/modules/boxManage/dao/BoxForNotificationMapper.java index 852190e..9decb36 100644 --- a/src/main/java/com/gaotao/modules/boxManage/dao/BoxForNotificationMapper.java +++ b/src/main/java/com/gaotao/modules/boxManage/dao/BoxForNotificationMapper.java @@ -30,6 +30,10 @@ public interface BoxForNotificationMapper { @Param("site") String site, @Param("buNo") String buNo); + List selectByRollNo2(@Param("rollNo") String rollNo, + @Param("site") String site, + @Param("buNo") String buNo); + void updateStockParentRollNo(@Param("rollNo") String rollNo,@Param("parentRollNo")String parentRollNo,@Param("site")String site,@Param("buNo")String buNo); void addBoxRoll(SoReceiveBoxRollsData data); @@ -45,4 +49,11 @@ public interface BoxForNotificationMapper { SoReceiveCasesData validateCaseRoll(@Param("site") String site, @Param("partNo") String partNo, @Param("rollNo") String rollNo, @Param("casesNo") String casesNo); void saveSoReceiveCases(SoReceiveCasesData data); void updateStockParentRollType(@Param("rollNo") String rollNo, @Param("parentRollNo") String parentRollNo, @Param("parentRollType") String parentRollType, @Param("site") String site, @Param("buNo") String buNo); + + /** + * 查询出库通知单主记录(关联明细) + * @param data 查询条件 + * @return 出库通知单主记录列表 + */ + List searchOutboundNotificationWithDetail(OutboundNotificationHeadVo data); } diff --git a/src/main/java/com/gaotao/modules/boxManage/service/BoxForNotificationService.java b/src/main/java/com/gaotao/modules/boxManage/service/BoxForNotificationService.java index 85215c0..fe845c1 100644 --- a/src/main/java/com/gaotao/modules/boxManage/service/BoxForNotificationService.java +++ b/src/main/java/com/gaotao/modules/boxManage/service/BoxForNotificationService.java @@ -30,4 +30,11 @@ public interface BoxForNotificationService { void deleteSoReceiveCasesData(SoReceiveCasesData data); SoReceiveCasesData validateAndScanCaseRoll(SoReceiveCasesData data); void saveCaseRollList(List dataList); + + /** + * 查询出库通知单主记录(关联明细) + * @param data 查询条件 + * @return 出库通知单主记录列表(包含明细信息) + */ + List searchOutboundNotificationWithDetail(OutboundNotificationHeadVo data); } diff --git a/src/main/java/com/gaotao/modules/boxManage/service/impl/BoxForNotificationServiceImpl.java b/src/main/java/com/gaotao/modules/boxManage/service/impl/BoxForNotificationServiceImpl.java index 3b73d97..2e9c774 100644 --- a/src/main/java/com/gaotao/modules/boxManage/service/impl/BoxForNotificationServiceImpl.java +++ b/src/main/java/com/gaotao/modules/boxManage/service/impl/BoxForNotificationServiceImpl.java @@ -10,7 +10,6 @@ import com.gaotao.modules.outboundNotification.entity.vo.OutboundNotificationHea import com.gaotao.modules.sys.entity.SysUserEntity; import com.gaotao.modules.trans.entity.TransNoControl; import com.gaotao.modules.trans.service.TransNoControlService; -import com.gaotao.modules.inventoryStock.dao.InventoryStockMapper; import com.gaotao.modules.inventoryStock.entity.InventoryStock; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -117,11 +116,14 @@ public class BoxForNotificationServiceImpl implements BoxForNotificationService throw new RuntimeException("箱子不在仓库中,无法操作"); } // 2. 查卷状态 - InventoryStock stock = boxForNotificationMapper.selectByRollNo( + List stocks = boxForNotificationMapper.selectByRollNo2( data.getFinalRollNo(), data.getSite(), data.getBuNo()); - if(stock == null) { + if(stocks.isEmpty()) { throw new RuntimeException("卷不存在"); } + + // 多个卷取第一个做校验 + InventoryStock stock = stocks.get(0); if(!"在库".equals(stock.getStatus())) { throw new RuntimeException("卷状态不是在库,无法操作"); } @@ -335,4 +337,9 @@ public class BoxForNotificationServiceImpl implements BoxForNotificationService boxForNotificationMapper.updateStockParentRollType(data.getRollNo(), data.getCasesNo(), "盒标签", data.getSite(), data.getBuNo()); } } + + @Override + public List searchOutboundNotificationWithDetail(OutboundNotificationHeadVo data) { + return boxForNotificationMapper.searchOutboundNotificationWithDetail(data); + } } diff --git a/src/main/java/com/gaotao/modules/outboundNotification/entity/vo/OutboundNotificationHeadVo.java b/src/main/java/com/gaotao/modules/outboundNotification/entity/vo/OutboundNotificationHeadVo.java index c3f78d9..6219b19 100644 --- a/src/main/java/com/gaotao/modules/outboundNotification/entity/vo/OutboundNotificationHeadVo.java +++ b/src/main/java/com/gaotao/modules/outboundNotification/entity/vo/OutboundNotificationHeadVo.java @@ -1,13 +1,14 @@ package com.gaotao.modules.outboundNotification.entity.vo; -import com.gaotao.modules.inboundNotification.entity.InboundNotificationHeadEntity; import com.gaotao.modules.outboundNotification.entity.OutboundNotificationHeadEntity; import lombok.Data; +import lombok.EqualsAndHashCode; import java.util.Date; import java.util.List; @Data +@EqualsAndHashCode(callSuper=false) public class OutboundNotificationHeadVo extends OutboundNotificationHeadEntity { private String bu; private Date startDate; @@ -16,4 +17,17 @@ public class OutboundNotificationHeadVo extends OutboundNotificationHeadEntity { private String customerName; private List submitList; private String[] statusArr; + + // 出库单明细信息字段 + private String partNo; // 物料编码 + private String partDesc; // 物料名称 + private String unit; // 单位 + private Double requiredQty; // 要求发货数量 + private String outBatchNo; // 合约号 + private Double orderQty; // 销售订单数量 + private String detailOutWarehouse; // 明细出库仓库 + private String detailRelatedOrderNo; // 明细关联订单号 + private String detailRelatedOrderLineNo; // 明细关联订单行号 + private Double rollQty; // 已扫描数量 + private Double unScanQty; // 未扫描数量 } \ No newline at end of file diff --git a/src/main/resources/mapper/boxManage/BoxForNotificationMapper.xml b/src/main/resources/mapper/boxManage/BoxForNotificationMapper.xml index 15414a9..e2390de 100644 --- a/src/main/resources/mapper/boxManage/BoxForNotificationMapper.xml +++ b/src/main/resources/mapper/boxManage/BoxForNotificationMapper.xml @@ -70,13 +70,20 @@ set [status]=#{status} where id=#{id} - SELECT * FROM inventory_stock WHERE roll_no = #{rollNo} AND site = #{site} AND bu_no = #{buNo} + + @@ -99,7 +106,7 @@ and bu_no = #{buNo} - select site,bu_no,order_no,part_no,part_desc,unit,required_qty,out_warehouse,out_batch_no,created_by,created_date,updated_by, updated_date,order_qty,related_order_no,related_order_line_no from outbound_notification_detail @@ -227,4 +234,104 @@ AND site = #{site} AND bu_no = #{buNo} + + + \ No newline at end of file