diff --git a/src/main/java/com/gaotao/modules/productionPicking/controller/ProductionPickingController.java b/src/main/java/com/gaotao/modules/productionPicking/controller/ProductionPickingController.java index 80579b9..a46ec93 100644 --- a/src/main/java/com/gaotao/modules/productionPicking/controller/ProductionPickingController.java +++ b/src/main/java/com/gaotao/modules/productionPicking/controller/ProductionPickingController.java @@ -145,13 +145,14 @@ public class ProductionPickingController { String buNo = (String) params.get("buNo"); String outboundNo = (String) params.get("outboundNo"); String warehouseId = (String) params.get("warehouseId"); + String relatedNo = (String) params.get("relatedNo"); if (outboundNo == null || outboundNo.trim().isEmpty()) { return R.error("出库单号不能为空"); } logger.info("获取出库单物料清单,站点: {}, 业务单元: {}, 出库单号: {}", site, buNo, outboundNo); - List> materialList = productionPickingService.getMaterialList(site, buNo, outboundNo, warehouseId); + List> materialList = productionPickingService.getMaterialList(site, buNo, outboundNo, warehouseId, relatedNo); return R.ok().put("data", materialList); } catch (Exception e) { logger.error("获取物料清单失败", e); diff --git a/src/main/java/com/gaotao/modules/productionPicking/dao/ProductionPickingMapper.java b/src/main/java/com/gaotao/modules/productionPicking/dao/ProductionPickingMapper.java index a7f1b0d..18f27cf 100644 --- a/src/main/java/com/gaotao/modules/productionPicking/dao/ProductionPickingMapper.java +++ b/src/main/java/com/gaotao/modules/productionPicking/dao/ProductionPickingMapper.java @@ -56,7 +56,8 @@ public interface ProductionPickingMapper { List> getMaterialList(@Param("site") String site, @Param("buNo") String buNo, @Param("outboundNo") String outboundNo, - @Param("warehouseId") String warehouseId); + @Param("warehouseId") String warehouseId, + @Param("relatedNo") String relatedNo); /** * 获取出库单物料明细列表 diff --git a/src/main/java/com/gaotao/modules/productionPicking/service/ProductionPickingService.java b/src/main/java/com/gaotao/modules/productionPicking/service/ProductionPickingService.java index 924762a..cb9ace8 100644 --- a/src/main/java/com/gaotao/modules/productionPicking/service/ProductionPickingService.java +++ b/src/main/java/com/gaotao/modules/productionPicking/service/ProductionPickingService.java @@ -34,7 +34,7 @@ public interface ProductionPickingService { /** * 获取出库单物料清单 */ - List> getMaterialList(String site, String buNo, String outboundNo, String warehouseId); + List> getMaterialList(String site, String buNo, String outboundNo, String warehouseId, String relatedNo); /** * 获取出库单物料明细列表 diff --git a/src/main/java/com/gaotao/modules/productionPicking/service/impl/ProductionPickingServiceImpl.java b/src/main/java/com/gaotao/modules/productionPicking/service/impl/ProductionPickingServiceImpl.java index 49f62a1..18a9947 100644 --- a/src/main/java/com/gaotao/modules/productionPicking/service/impl/ProductionPickingServiceImpl.java +++ b/src/main/java/com/gaotao/modules/productionPicking/service/impl/ProductionPickingServiceImpl.java @@ -108,11 +108,11 @@ public class ProductionPickingServiceImpl implements ProductionPickingService { } @Override - public List> getMaterialList(String site, String buNo, String outboundNo, String warehouseId) { + public List> getMaterialList(String site, String buNo, String outboundNo, String warehouseId, String relatedNo) { logger.info("获取出库单物料清单,站点: {}, 业务单元: {}, 出库单号: {}", site, buNo, outboundNo); try { - List> materialList = pickingMapper.getMaterialList(site, buNo, outboundNo, warehouseId); + List> materialList = pickingMapper.getMaterialList(site, buNo, outboundNo, warehouseId, relatedNo); if (materialList == null) { materialList = new ArrayList<>(); diff --git a/src/main/resources/mapper/productionPicking/ProductionPickingMapper.xml b/src/main/resources/mapper/productionPicking/ProductionPickingMapper.xml index 93f0daa..19e90e7 100644 --- a/src/main/resources/mapper/productionPicking/ProductionPickingMapper.xml +++ b/src/main/resources/mapper/productionPicking/ProductionPickingMapper.xml @@ -108,7 +108,8 @@ SUM(CAST(a.QtyToIssue AS float)) as requiredQty, dbo.Get_InboundQty(B.site, B.bu, B.NotifyNo, a.ComponentPartNo, 'SI') as pickedQty from SOIssueNotifyHeader B - INNER JOIN SOIssueNotifyOrderMaterialList a ON A.SITE = B.SITE AND A.NotifyNo = B.NotifyNo + INNER JOIN SOIssueNotifyOrderList C ON B.SITE = C.SITE AND B.NotifyNo = C.NotifyNo + INNER JOIN SOIssueNotifyOrderMaterialList a ON A.SITE = C.SITE AND A.NotifyNo = C.NotifyNo AND C.ItemNo = A.ItemNo INNER JOIN PART P ON A.SITE = P.SITE AND A.ComponentPartNo = P.PARTNO where a.site = #{site} @@ -116,6 +117,8 @@ AND b.Status = '待出库' AND a.warehouse_id = #{warehouseId} + AND B.NotifyNo = #{outboundNo} + AND C.SOOrderNo = #{relatedNo} GROUP BY b.site, b.NotifyNo, b.bu ,b.NotifyDate, a.ComponentPartNo, P.PartDescription