From dfd2ba15d9451997661a323f9d47478fdc7ef9dc Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Thu, 5 Mar 2026 09:57:00 +0800 Subject: [PATCH] =?UTF-8?q?feat(delivery):=20=E6=B7=BB=E5=8A=A0=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=B7=B2=E7=BB=91=E5=AE=9A=E9=92=A2=E5=8D=B7=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 IWmsDeliveryWaybillDetailService 中新增 getBoundCoilIds 方法 - 在 WmsDeliveryWaybillDetailController 中新增 boundCoilList 接口 - 实现 WmsDeliveryWaybillDetailServiceImpl 的 getBoundCoilIds 查询逻辑 - 集成 WmsMaterialCoilService 查询已发货绑定的钢卷信息 - 添加钢卷 ID 去重处理确保数据准确性 - 支持分页查询返回 TableDataInfo 格式数据 --- .../WmsDeliveryWaybillDetailController.java | 17 +++++++++++++++++ .../IWmsDeliveryWaybillDetailService.java | 5 +++++ .../WmsDeliveryWaybillDetailServiceImpl.java | 16 ++++++++++++++++ 3 files changed, 38 insertions(+) diff --git a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java index 7453c1e7..bf120f90 100644 --- a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java +++ b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java @@ -20,6 +20,9 @@ import com.klp.common.utils.poi.ExcelUtil; import com.klp.domain.vo.WmsDeliveryWaybillDetailVo; import com.klp.domain.bo.WmsDeliveryWaybillDetailBo; import com.klp.service.IWmsDeliveryWaybillDetailService; +import com.klp.domain.vo.WmsMaterialCoilVo; +import com.klp.domain.bo.WmsMaterialCoilBo; +import com.klp.service.IWmsMaterialCoilService; import com.klp.common.core.page.TableDataInfo; /** @@ -35,6 +38,7 @@ import com.klp.common.core.page.TableDataInfo; public class WmsDeliveryWaybillDetailController extends BaseController { private final IWmsDeliveryWaybillDetailService iWmsDeliveryWaybillDetailService; + private final IWmsMaterialCoilService iWmsMaterialCoilService; /** * 查询发货单明细列表 @@ -106,4 +110,17 @@ public class WmsDeliveryWaybillDetailController extends BaseController { @PathVariable Long[] detailIds) { return toAjax(iWmsDeliveryWaybillDetailService.deleteWithValidByIds(Arrays.asList(detailIds), true)); } + + /** + * 查询已发货绑定的钢卷列表 + */ + @GetMapping("/boundCoilList") + public TableDataInfo boundCoilList(WmsMaterialCoilBo bo, PageQuery pageQuery) { + List boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIds(); + if (boundCoilIds == null || boundCoilIds.isEmpty()) { + return new TableDataInfo<>(); + } + bo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(java.util.stream.Collectors.joining(","))); + return iWmsMaterialCoilService.queryPageList(bo, pageQuery); + } } diff --git a/klp-wms/src/main/java/com/klp/service/IWmsDeliveryWaybillDetailService.java b/klp-wms/src/main/java/com/klp/service/IWmsDeliveryWaybillDetailService.java index 9f169ebb..12aaed86 100644 --- a/klp-wms/src/main/java/com/klp/service/IWmsDeliveryWaybillDetailService.java +++ b/klp-wms/src/main/java/com/klp/service/IWmsDeliveryWaybillDetailService.java @@ -51,4 +51,9 @@ public interface IWmsDeliveryWaybillDetailService { * 校验并批量删除发货单明细信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + /** + * 查询所有已绑定的钢卷ID列表 + */ + List getBoundCoilIds(); } diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillDetailServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillDetailServiceImpl.java index 7abb8b2e..d1b1285b 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillDetailServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryWaybillDetailServiceImpl.java @@ -211,4 +211,20 @@ public class WmsDeliveryWaybillDetailServiceImpl implements IWmsDeliveryWaybillD } return baseMapper.deleteBatchIds(ids) > 0; } + + + /** + * 查询所有已绑定的钢卷 ID 列表 + */ + @Override + public List getBoundCoilIds() { + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.isNotNull(WmsDeliveryWaybillDetail::getCoilId); + lqw.eq(WmsDeliveryWaybillDetail::getDelFlag, 0); + lqw.select(WmsDeliveryWaybillDetail::getCoilId); + // Deleted:lqw.distinct(); + List list = baseMapper.selectList(lqw); + return list.stream().map(WmsDeliveryWaybillDetail::getCoilId).distinct().collect(Collectors.toList()); + } } +