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 fba2faa8..afae1c0a 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 @@ -319,5 +319,11 @@ public class WmsMaterialCoilBo extends BaseEntity { * 钢卷异常信息列表(用于更新钢卷时同时插入异常信息) */ private List abnormals; + + /** + * 按异常数量排序(异常钢卷在前按创建时间,没异常的钢卷在后按创建时间) + */ + @TableField(exist = false) + private Boolean orderByAbnormal; } 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 d2d183e9..58d252b2 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 @@ -689,6 +689,10 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { qw.orderByAsc("aw_sort_key"); qw.orderByAsc("aw_layer_key"); qw.orderByAsc("aw_id_key"); + } else if (Boolean.TRUE.equals(bo.getOrderByAbnormal())) { + // 按异常排序:异常的钢卷在前按创建时间倒序,没异常的钢卷在后按创建时间倒序 + qw.orderByDesc("CASE WHEN COALESCE(ca.abnormal_count, 0) > 0 THEN 0 ELSE 1 END"); + qw.orderByDesc("mc.create_time"); } else { //根据创建时间倒叙 qw.orderByDesc("mc.create_time");