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 22ce9eb4..ed6e896b 100644 --- a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java +++ b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java @@ -148,7 +148,10 @@ public class WmsDeliveryWaybillDetailController extends BaseController { return new TableDataInfo<>(); } bo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(java.util.stream.Collectors.joining(","))); - bo.setStatusFirst(true); // 未发货的排在前面 + bo.setStatusFirst(true); + if (planId == null) { + bo.setOrderByPlanDesc(true); + } return iWmsMaterialCoilService.queryPageListWithBindInfo(bo, pageQuery); } diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java index be9b965c..2ca363f0 100644 --- a/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java @@ -396,5 +396,11 @@ public class WmsMaterialCoilBo extends BaseEntity { * 镀铬卷号 */ private String chromePlateCoilNo; + + /** + * 是否按计划创建时间倒序排序(已绑定钢卷列表无planId时,按计划新旧排列) + */ + @TableField(exist = false) + private Boolean orderByPlanDesc; } diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsMaterialCoilMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsMaterialCoilMapper.java index f893c0cf..ddb0f0de 100644 --- a/klp-wms/src/main/java/com/klp/mapper/WmsMaterialCoilMapper.java +++ b/klp-wms/src/main/java/com/klp/mapper/WmsMaterialCoilMapper.java @@ -45,6 +45,11 @@ public interface WmsMaterialCoilMapper extends BaseMapperPlus selectVoPagePlusOrderBy(Page build, @Param("ew") QueryWrapper lqw); + /** + * orderByPlanDesc=true 时使用:包含发货计划 join,支持按计划创建时间排序 + */ + Page selectVoPagePlusPlanOrder(Page build, @Param("ew") QueryWrapper lqw); + List selectVoListWithDynamicJoin(@Param("ew")QueryWrapper lqw); Map selectCountForSpecSync(@Param("ew") QueryWrapper qw); @@ -91,7 +96,7 @@ public interface WmsMaterialCoilMapper extends BaseMapperPlus selectDeliveryExportListByCoilIds(@Param("coilIds") java.util.Collection coilIds); + List selectDeliveryExportListByCoilIds(@Param("coilIds") java.util.Collection coilIds); /** * 退火报表导出:按钢卷ID列表联查(钢卷 + 退火计划 + 退火计划钢卷关系) diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java index 7018d87b..f64ce531 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java @@ -487,7 +487,9 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { private Page queryMaterialCoilPage(WmsMaterialCoilBo bo, PageQuery pageQuery) { QueryWrapper qw = buildQueryWrapperPlus(bo); Page result; - if (Boolean.TRUE.equals(bo.getOrderBy())) { + if (Boolean.TRUE.equals(bo.getOrderByPlanDesc())) { + result = baseMapper.selectVoPagePlusPlanOrder(pageQuery.build(), qw); + } else if (Boolean.TRUE.equals(bo.getOrderBy())) { result = baseMapper.selectVoPagePlusOrderBy(pageQuery.build(), qw); } else { result = baseMapper.selectVoPagePlus(pageQuery.build(), qw); @@ -933,6 +935,10 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { qw.apply("COALESCE(ca.abnormal_count, 0) >= {0}", bo.getMinAbnormalCount()); } // 排序: + // 按计划创建时间倒序(已绑定钢卷列表无planId时优先按计划排序) + if (Boolean.TRUE.equals(bo.getOrderByPlanDesc())) { + qw.orderByDesc("pl.create_time"); + } // 已绑定钢卷列表中,未发货(status=0)的排在前面 if (Boolean.TRUE.equals(bo.getStatusFirst())) { qw.orderByAsc("mc.status = 1"); diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index 3c119a78..3c19110b 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -82,90 +82,91 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY w.warehouse_id, w.warehouse_name ORDER BY w.warehouse_id - + SELECT + ${ew.customSqlSegment} - + + +