From 45119358d75b4b714c797a33ce30ebb071ceb1b0 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 12 Jan 2026 09:21:11 +0800 Subject: [PATCH 1/4] =?UTF-8?q?feat(wms):=20=E6=9B=B4=E6=96=B0=E7=89=A9?= =?UTF-8?q?=E6=96=99=E5=8D=B7=E6=9F=A5=E8=AF=A2=E4=B8=AD=E7=9A=84=E5=8F=91?= =?UTF-8?q?=E8=B4=A7=E6=97=B6=E9=97=B4=E7=AD=9B=E9=80=89=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除原有的简单发货时间范围筛选条件 - 添加复杂的OR条件分组处理发货时间筛选 - 实现两种情况的发货时间匹配:发货时间不为空的时间范围筛选 - 实现状态为1且发货时间为null时使用更新时间匹配发货时间范围 --- .../impl/WmsMaterialCoilServiceImpl.java | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) 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 33799888..be3957b4 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 @@ -472,9 +472,34 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { qw.ge(bo.getByCreateTimeStart() != null, "mc.create_time", bo.getByCreateTimeStart()); qw.le(bo.getByCreateTimeEnd() != null, "mc.create_time", bo.getByCreateTimeEnd()); - // 根据发货开始和结束筛选发货时间 - qw.ge(bo.getByExportTimeStart() != null, "mc.export_time", bo.getByExportTimeStart()); - qw.le(bo.getByExportTimeEnd() != null, "mc.export_time", bo.getByExportTimeEnd()); + // 处理发货时间筛选逻辑(核心修改部分) + if (bo.getByExportTimeStart() != null || bo.getByExportTimeEnd() != null) { + // 开启OR条件分组:满足情况1 或 情况2 + qw.and(w -> { + // 情况1:发货时间不为null且满足时间范围 + w.nested(n -> { + n.isNotNull("mc.export_time"); + if (bo.getByExportTimeStart() != null) { + n.ge("mc.export_time", bo.getByExportTimeStart()); + } + if (bo.getByExportTimeEnd() != null) { + n.le("mc.export_time", bo.getByExportTimeEnd()); + } + }); + // 情况2:状态为1且发货时间为null,用更新时间匹配发货时间范围 + w.or(); + w.nested(n -> { + n.eq("mc.status", 1); + n.isNull("mc.export_time"); + if (bo.getByExportTimeStart() != null) { + n.ge("mc.update_time", bo.getByExportTimeStart()); + } + if (bo.getByExportTimeEnd() != null) { + n.le("mc.update_time", bo.getByExportTimeEnd()); + } + }); + }); + } //根据异常数量筛选(大于等于指定值) if (bo.getMinAbnormalCount() != null) { From 09f8d5c6118d4f61816bfe08fe223eca90313e55 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 12 Jan 2026 09:38:07 +0800 Subject: [PATCH 2/4] =?UTF-8?q?feat(wms):=20=E6=9B=B4=E6=96=B0=E6=9D=90?= =?UTF-8?q?=E6=96=99=E5=8D=B7=E5=AF=BC=E5=87=BAVO=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将qualityStatusDesc字段名更改为qualityStatus - 将packingStatusDesc字段名更改为packingStatus - 新增length字段用于存储长度信息 --- .../java/com/klp/domain/vo/WmsMaterialCoilExportVo.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java index 1c3b77f5..4b7da43c 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java @@ -91,13 +91,13 @@ public class WmsMaterialCoilExportVo { * 产品状态 */ @ExcelProperty(value = "产品状态") - private String qualityStatusDesc; + private String qualityStatus; /** * 打包状态 */ @ExcelProperty(value = "打包状态") - private String packingStatusDesc; + private String packingStatus; /** * 库存状态 @@ -123,6 +123,10 @@ public class WmsMaterialCoilExportVo { @ExcelProperty(value = "规格") private String specification; + + @ExcelProperty(value = "长度") + private BigDecimal length; + /** * 材质 */ From 4f3b662b72af43252e9d6aa6067543a35aef90e2 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 12 Jan 2026 09:55:24 +0800 Subject: [PATCH 3/4] =?UTF-8?q?feat(WmsMaterialCoil):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8F=91=E8=B4=A7=E6=97=B6=E9=97=B4=E5=AD=97=E6=AE=B5=E5=B9=B6?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在WmsMaterialCoilExportVo中新增exportTime字段用于临时存储发货时间 - 在数据库查询映射中添加export_time字段映射 - 将库存状态描述从"在途"修改为"已发货" - 实现导出时根据状态动态设置时间字段的逻辑 - 当状态为已发货时使用发货时间,否则保持创建时间不变 --- .../com/klp/domain/vo/WmsMaterialCoilExportVo.java | 5 +++++ .../klp/service/impl/WmsMaterialCoilServiceImpl.java | 12 +++++++++++- .../resources/mapper/klp/WmsMaterialCoilMapper.xml | 4 +++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java index 4b7da43c..a655fd82 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java @@ -156,4 +156,9 @@ public class WmsMaterialCoilExportVo { */ @ExcelProperty(value = "物品ID") private Long itemId; + + /** + * 发货时间(仅临时存储,不导出) + */ + private Date exportTime; } 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 be3957b4..a678ea7e 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 @@ -1861,7 +1861,17 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { @Override public List queryExportList(WmsMaterialCoilBo bo) { QueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectExportList(lqw); + List wmsMaterialCoilExportVos = baseMapper.selectExportList(lqw); + // 遍历数据,根据状态替换日期字段 + wmsMaterialCoilExportVos.stream().forEach(vo -> { + // 判断查询条件中的status是否为1(已发货) + if (bo.getStatus() != null && bo.getStatus() == 1) { + // 已发货时,将展示的日期替换为export_time + vo.setCreateTime(vo.getExportTime()); + } + // 非1的情况,保持原有create_time不变 + }); + return wmsMaterialCoilExportVos; } /** diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index 5e655e61..643ba376 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -361,6 +361,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mc.current_coil_no AS currentCoilNo, -- 日期 mc.create_time AS createTime, + -- 发货时间 + mc.export_time AS exportTime, -- 重量 mc.net_weight AS netWeight, -- 长度 @@ -378,7 +380,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" -- 库存状态(中文显示) CASE WHEN mc.status = 0 THEN '在库' - WHEN mc.status = 1 THEN '在途' + WHEN mc.status = 1 THEN '已发货' ELSE CAST(mc.status AS CHAR) END AS statusDesc, -- 备注 From db95dd3a67823b8cb6e0ff61e4788f005511e8c8 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 12 Jan 2026 10:01:59 +0800 Subject: [PATCH 4/4] =?UTF-8?q?feat(material):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9D=90=E6=96=99=E5=8D=B7=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E9=97=B4=E5=AD=97=E6=AE=B5=E5=85=9C=E5=BA=95?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 WmsMaterialCoilExportVo 中新增 updateTime 字段用于时间兜底 - 在数据库查询映射中添加 update_time 字段的查询支持 - 实现发货时间为空时的时间字段处理逻辑,按优先级选择时间 - 优化导出列表的时间字段赋值策略,确保日期字段不为空 --- .../domain/vo/WmsMaterialCoilExportVo.java | 5 +++++ .../impl/WmsMaterialCoilServiceImpl.java | 19 ++++++++++++++++--- .../mapper/klp/WmsMaterialCoilMapper.xml | 2 ++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java index a655fd82..4a316468 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilExportVo.java @@ -161,4 +161,9 @@ public class WmsMaterialCoilExportVo { * 发货时间(仅临时存储,不导出) */ private Date exportTime; + + /** + * 更新时间(仅临时存储,不导出,用于发货时间为空时兜底) + */ + private Date updateTime; } 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 a678ea7e..e092ffbb 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 @@ -1862,12 +1862,25 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { public List queryExportList(WmsMaterialCoilBo bo) { QueryWrapper lqw = buildQueryWrapper(bo); List wmsMaterialCoilExportVos = baseMapper.selectExportList(lqw); - // 遍历数据,根据状态替换日期字段 + // 遍历数据,根据状态替换日期字段,并处理空值兜底 wmsMaterialCoilExportVos.stream().forEach(vo -> { // 判断查询条件中的status是否为1(已发货) if (bo.getStatus() != null && bo.getStatus() == 1) { - // 已发货时,将展示的日期替换为export_time - vo.setCreateTime(vo.getExportTime()); + Date finalDate = null; + // 1. 优先使用发货时间 + if (vo.getExportTime() != null) { + finalDate = vo.getExportTime(); + } + // 2. 发货时间为空时,使用更新时间兜底 + else if (vo.getUpdateTime() != null) { + finalDate = vo.getUpdateTime(); + } + // 3. 若更新时间也为空,保留原有createTime(避免日期字段为空) + else { + finalDate = vo.getCreateTime(); + } + // 赋值最终的日期 + vo.setCreateTime(finalDate); } // 非1的情况,保持原有create_time不变 }); diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index 643ba376..69c2f123 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -363,6 +363,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mc.create_time AS createTime, -- 发货时间 mc.export_time AS exportTime, + -- 新增:更新时间(用于发货时间为空时兜底) + mc.update_time AS updateTime, -- 重量 mc.net_weight AS netWeight, -- 长度