From 21a662d7d80d41a925fbe6b1955307a473cd0ab3 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 25 Nov 2025 16:26:17 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat(wms):=20=E6=89=A9=E5=B1=95=E5=8F=91?= =?UTF-8?q?=E8=B4=A7=E7=9B=B8=E5=85=B3VO=E7=B1=BB=E7=BB=A7=E6=89=BFBaseEnt?= =?UTF-8?q?ity=E5=B9=B6=E6=96=B0=E5=A2=9E=E5=85=B3=E8=81=94=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - WmsDeliveryPlanVo类继承BaseEntity基类 - WmsDeliveryWaybillDetailVo类继承BaseEntity基类 - WmsDeliveryWaybillVo类继承BaseEntity基类 - WmsDeliveryPlanVo新增waybills字段用于关联发货单列表 - 各VO类添加必要的导入依赖包 --- .../main/java/com/klp/domain/vo/WmsDeliveryPlanVo.java | 9 ++++++++- .../com/klp/domain/vo/WmsDeliveryWaybillDetailVo.java | 3 ++- .../java/com/klp/domain/vo/WmsDeliveryWaybillVo.java | 3 ++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanVo.java index 87f0716d..63c35993 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanVo.java @@ -1,11 +1,14 @@ package com.klp.domain.vo; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.klp.common.annotation.ExcelDictFormat; import com.klp.common.convert.ExcelDictConvert; +import com.klp.common.core.domain.BaseEntity; import lombok.Data; @@ -17,7 +20,7 @@ import lombok.Data; */ @Data @ExcelIgnoreUnannotated -public class WmsDeliveryPlanVo { +public class WmsDeliveryPlanVo extends BaseEntity { private static final long serialVersionUID = 1L; @@ -46,5 +49,9 @@ public class WmsDeliveryPlanVo { @ExcelProperty(value = "备注") private String remark; + /** + * 关联的发货单列表 + */ + private List waybills; } diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillDetailVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillDetailVo.java index e89d106c..1d5c6864 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillDetailVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillDetailVo.java @@ -5,6 +5,7 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.klp.common.annotation.ExcelDictFormat; import com.klp.common.convert.ExcelDictConvert; +import com.klp.common.core.domain.BaseEntity; import lombok.Data; @@ -16,7 +17,7 @@ import lombok.Data; */ @Data @ExcelIgnoreUnannotated -public class WmsDeliveryWaybillDetailVo { +public class WmsDeliveryWaybillDetailVo extends BaseEntity { private static final long serialVersionUID = 1L; diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillVo.java index ac8120e3..3a3e5e04 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryWaybillVo.java @@ -6,6 +6,7 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.klp.common.annotation.ExcelDictFormat; import com.klp.common.convert.ExcelDictConvert; +import com.klp.common.core.domain.BaseEntity; import lombok.Data; @@ -17,7 +18,7 @@ import lombok.Data; */ @Data @ExcelIgnoreUnannotated -public class WmsDeliveryWaybillVo { +public class WmsDeliveryWaybillVo extends BaseEntity { private static final long serialVersionUID = 1L; From 5591d702d7cf1c56959c6ec2b1d49ccdd4ecb5b2 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 25 Nov 2025 16:58:47 +0800 Subject: [PATCH 2/2] =?UTF-8?q?feat(wms):=20=E6=96=B0=E5=A2=9E=E5=8F=91?= =?UTF-8?q?=E8=B4=A7=E8=AE=A1=E5=88=92=E7=BB=9F=E8=AE=A1=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 IWmsDeliveryPlanService 接口中新增 getDeliveryPlanStatistics 方法 - 在 WmsDeliveryPlanController 中添加 /statistics 接口用于获取统计信息 - 在 WmsDeliveryPlanMapper 中新增 selectDeliveryPlanStatistics 查询方法 - 在 WmsDeliveryPlanMapper.xml 中编写对应的 SQL 查询语句 - 在 WmsDeliveryPlanServiceImpl 中实现统计方法调用 Mapper 层 - 新增 WmsDeliveryPlanStatisticsVo 类用于封装统计结果数据 - 引入相关类导入依赖以支持新功能开发 --- .../controller/WmsDeliveryPlanController.java | 12 +++++ .../vo/WmsDeliveryPlanStatisticsVo.java | 46 +++++++++++++++++++ .../com/klp/mapper/WmsDeliveryPlanMapper.java | 4 ++ .../klp/service/IWmsDeliveryPlanService.java | 3 ++ .../impl/WmsDeliveryPlanServiceImpl.java | 13 ++++++ .../mapper/klp/WmsDeliveryPlanMapper.xml | 41 +++++++++++++++++ 6 files changed, 119 insertions(+) create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanStatisticsVo.java diff --git a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryPlanController.java b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryPlanController.java index 7abe32ca..427c2298 100644 --- a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryPlanController.java +++ b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryPlanController.java @@ -3,6 +3,7 @@ package com.klp.controller; import java.util.List; import java.util.Arrays; +import com.klp.domain.vo.WmsDeliveryPlanStatisticsVo; import lombok.RequiredArgsConstructor; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.*; @@ -96,4 +97,15 @@ public class WmsDeliveryPlanController extends BaseController { @PathVariable Long[] planIds) { return toAjax(iWmsDeliveryPlanService.deleteWithValidByIds(Arrays.asList(planIds), true)); } + + /** + * 获取发货计划统计信息 + * + * @param planId 计划ID,可选 + */ + @GetMapping("/statistics") + public R> getStatistics(@RequestParam(required = false) Long planId) { + List statistics = iWmsDeliveryPlanService.getDeliveryPlanStatistics(planId); + return R.ok(statistics); + } } diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanStatisticsVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanStatisticsVo.java new file mode 100644 index 00000000..3997531c --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsDeliveryPlanStatisticsVo.java @@ -0,0 +1,46 @@ +package com.klp.domain.vo; + + +import lombok.Data; +import java.math.BigDecimal; + +/** + * 发货计划统计信息VO + */ +@Data +public class WmsDeliveryPlanStatisticsVo { + /** + * 计划ID + */ + private Long planId; + + /** + * 计划名称 + */ + private String planName; + + /** + * 发货单数量 + */ + private Integer waybillCount = 0; + + /** + * 总卷数 + */ + private Integer totalCoilCount = 0; + + /** + * 总吨数(吨) + */ + private BigDecimal totalWeight = BigDecimal.ZERO; + + /** + * 完成进度(百分比) + */ + private BigDecimal completionRate = BigDecimal.ZERO; + + /** + * 已完成发货单数量 + */ + private Integer completedWaybillCount = 0; +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsDeliveryPlanMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsDeliveryPlanMapper.java index 472d5aac..9ba52ad2 100644 --- a/klp-wms/src/main/java/com/klp/mapper/WmsDeliveryPlanMapper.java +++ b/klp-wms/src/main/java/com/klp/mapper/WmsDeliveryPlanMapper.java @@ -1,9 +1,12 @@ package com.klp.mapper; import com.klp.domain.WmsDeliveryPlan; +import com.klp.domain.vo.WmsDeliveryPlanStatisticsVo; import com.klp.domain.vo.WmsDeliveryPlanVo; import com.klp.common.core.mapper.BaseMapperPlus; +import java.util.List; + /** * 发货计划Mapper接口 * @@ -12,4 +15,5 @@ import com.klp.common.core.mapper.BaseMapperPlus; */ public interface WmsDeliveryPlanMapper extends BaseMapperPlus { + List selectDeliveryPlanStatistics(Long planId); } diff --git a/klp-wms/src/main/java/com/klp/service/IWmsDeliveryPlanService.java b/klp-wms/src/main/java/com/klp/service/IWmsDeliveryPlanService.java index 3eb01ebe..0b8ff7e2 100644 --- a/klp-wms/src/main/java/com/klp/service/IWmsDeliveryPlanService.java +++ b/klp-wms/src/main/java/com/klp/service/IWmsDeliveryPlanService.java @@ -1,6 +1,7 @@ package com.klp.service; import com.klp.domain.WmsDeliveryPlan; +import com.klp.domain.vo.WmsDeliveryPlanStatisticsVo; import com.klp.domain.vo.WmsDeliveryPlanVo; import com.klp.domain.bo.WmsDeliveryPlanBo; import com.klp.common.core.page.TableDataInfo; @@ -46,4 +47,6 @@ public interface IWmsDeliveryPlanService { * 校验并批量删除发货计划信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + List getDeliveryPlanStatistics(Long planId); } diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryPlanServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryPlanServiceImpl.java index c08b1163..a3d15177 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryPlanServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsDeliveryPlanServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.klp.common.utils.StringUtils; +import com.klp.domain.vo.WmsDeliveryPlanStatisticsVo; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import com.klp.domain.bo.WmsDeliveryPlanBo; @@ -15,6 +16,7 @@ import com.klp.domain.WmsDeliveryPlan; import com.klp.mapper.WmsDeliveryPlanMapper; import com.klp.service.IWmsDeliveryPlanService; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Collection; @@ -107,4 +109,15 @@ public class WmsDeliveryPlanServiceImpl implements IWmsDeliveryPlanService { } return baseMapper.deleteBatchIds(ids) > 0; } + + + /** + * 获取发货计划统计信息 + * + * @param planId 计划ID,可选 + * @return 统计信息列表 + */ + public List getDeliveryPlanStatistics(Long planId) { + return baseMapper.selectDeliveryPlanStatistics(planId); + } } diff --git a/klp-wms/src/main/resources/mapper/klp/WmsDeliveryPlanMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsDeliveryPlanMapper.xml index 341782bd..cebdcad3 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsDeliveryPlanMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsDeliveryPlanMapper.xml @@ -16,5 +16,46 @@ + + +