From 381c1638e36246e54a043ca13964f72df0a2b6e8 Mon Sep 17 00:00:00 2001 From: zc Date: Wed, 4 Mar 2026 18:05:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=BF=BD=E6=BA=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../material/service/MaterialInfoService.java | 2 +- .../service/impl/MaterialInfoServiceImpl.java | 7 +- .../mapper/WorkOrderInfoMapper.java | 16 +++++ .../weighManage/mapper/WorkOrderMapper.java | 31 ++++++-- .../model/entity/WorkOrderInfoDO.java | 59 +++++++++++++++ .../model/query/WorkOrderQuery.java | 37 ++++++---- .../weighManage/model/req/WorkOrderReq.java | 2 - .../model/resp/WorkOrderInfoResp.java | 72 +++++++++++++++++++ .../weighManage/model/resp/WorkOrderResp.java | 22 ++++-- .../weighManage/service/WorkOrderService.java | 10 +++ .../service/impl/WorkOrderServiceImpl.java | 14 +++- .../main/resources/mapper/WorkOrderMapper.xml | 21 +++++- .../meterial/MaterialInfoController.java | 5 +- .../weighManage/WorkOrderController.java | 14 +++- 14 files changed, 269 insertions(+), 43 deletions(-) create mode 100644 wms-module-system/src/main/java/top/wms/admin/weighManage/mapper/WorkOrderInfoMapper.java create mode 100644 wms-module-system/src/main/java/top/wms/admin/weighManage/model/entity/WorkOrderInfoDO.java create mode 100644 wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderInfoResp.java diff --git a/wms-module-system/src/main/java/top/wms/admin/material/service/MaterialInfoService.java b/wms-module-system/src/main/java/top/wms/admin/material/service/MaterialInfoService.java index 1841a66..c1aaa56 100644 --- a/wms-module-system/src/main/java/top/wms/admin/material/service/MaterialInfoService.java +++ b/wms-module-system/src/main/java/top/wms/admin/material/service/MaterialInfoService.java @@ -13,5 +13,5 @@ import top.wms.admin.material.model.resp.MaterialInfoResp; * @since 2026/02/27 14:19 */ public interface MaterialInfoService extends BaseService { - public MaterialInfoDO getMaterialInfoByCode(String code); + public MaterialInfoDO getMaterialInfoByCode(String code); } diff --git a/wms-module-system/src/main/java/top/wms/admin/material/service/impl/MaterialInfoServiceImpl.java b/wms-module-system/src/main/java/top/wms/admin/material/service/impl/MaterialInfoServiceImpl.java index d0119a0..6a9dd49 100644 --- a/wms-module-system/src/main/java/top/wms/admin/material/service/impl/MaterialInfoServiceImpl.java +++ b/wms-module-system/src/main/java/top/wms/admin/material/service/impl/MaterialInfoServiceImpl.java @@ -1,9 +1,6 @@ package top.wms.admin.material.service.impl; -import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -28,9 +25,9 @@ public class MaterialInfoServiceImpl extends BaseServiceImpl { + +} \ No newline at end of file diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/mapper/WorkOrderMapper.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/mapper/WorkOrderMapper.java index 2e91972..a343752 100644 --- a/wms-module-system/src/main/java/top/wms/admin/weighManage/mapper/WorkOrderMapper.java +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/mapper/WorkOrderMapper.java @@ -8,17 +8,36 @@ import org.apache.ibatis.annotations.Param; import top.continew.starter.data.mp.base.BaseMapper; import top.wms.admin.weighManage.model.entity.WorkOrderDO; import org.springframework.stereotype.Repository; +import top.wms.admin.weighManage.model.resp.WorkOrderInfoResp; import top.wms.admin.weighManage.model.resp.WorkOrderResp; +import java.util.List; + /** -* 任务工单信息 Mapper -* -* @author zc -* @since 2026/03/03 17:09 -*/ + * 任务工单信息 Mapper + * + * @author zc + * @since 2026/03/03 17:09 + */ @Repository public interface WorkOrderMapper extends BaseMapper { - IPage selectWorkOrderPage(@Param("page") Page objectPage, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + /** + * 获取任务工单分页列表 + * + * @param objectPage 分页参数 + * @param queryWrapper 查询参数 + * @return 任务工单分页列表 + */ + IPage selectWorkOrderPage(@Param("page") Page objectPage, + @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + /** + * 获取任务工单详情信息 + * + * @param id 任务工单主键id + * @return 任务工单详情信息 + */ + List getDetail(Long id); } \ No newline at end of file diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/entity/WorkOrderInfoDO.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/entity/WorkOrderInfoDO.java new file mode 100644 index 0000000..4ba10c5 --- /dev/null +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/entity/WorkOrderInfoDO.java @@ -0,0 +1,59 @@ +package top.wms.admin.weighManage.model.entity; + +import lombok.Data; + +import com.baomidou.mybatisplus.annotation.TableName; + +import top.wms.admin.common.model.entity.BaseDO; + +import java.io.Serial; +import java.math.BigDecimal; + +/** + * 任务工单详情实体 + * + * @author zc + * @since 2026/03/04 14:16 + */ +@Data +@TableName("sys_work_order_info") +public class WorkOrderInfoDO extends BaseDO { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 工单主键id + */ + private Long workOrderId; + + /** + * 物料主键id + */ + private Long materialId; + + /** + * 称重次数 + */ + private int weightTime; + + /** + * 抓拍的图片 + */ + private String imgUrl; + + /** + * 物料数量 + */ + private BigDecimal quantity; + + /** + * 称重重量 + */ + private BigDecimal weight; + + /** + * 计算重量 + */ + private BigDecimal calculatedWeight; +} \ No newline at end of file diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/query/WorkOrderQuery.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/query/WorkOrderQuery.java index 0b50da2..85d5c73 100644 --- a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/query/WorkOrderQuery.java +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/query/WorkOrderQuery.java @@ -4,13 +4,10 @@ import lombok.Data; import io.swagger.v3.oas.annotations.media.Schema; -import top.continew.starter.data.core.annotation.Query; -import top.continew.starter.data.core.enums.QueryType; - import java.io.Serial; import java.io.Serializable; import java.time.*; -import java.math.BigDecimal; +import java.util.Date; /** * 任务工单信息查询条件 @@ -25,12 +22,6 @@ public class WorkOrderQuery implements Serializable { @Serial private static final long serialVersionUID = 1L; - /** - * 总重量 - */ - @Schema(description = "总重量") - private BigDecimal totalWeight; - /** * 任务工单号 */ @@ -43,15 +34,33 @@ public class WorkOrderQuery implements Serializable { @Schema(description = "物料名称") private String materialName; + /** + * 物料编码 + */ + @Schema(description = "物料编码") + private String encoding; + /** * 创建人 */ @Schema(description = "创建人") - private Long createUser; + private String userName; /** - * 创建时间 + * 卡号 */ - @Schema(description = "创建时间") - private LocalDateTime createTime; + @Schema(description = "卡号") + private String carNo; + + /** + * 创建开始时间 + */ + @Schema(description = "创建开始时间") + private Date startTime; + + /** + * 创建结束时间 + */ + @Schema(description = "创建结束时间") + private Date endTime; } \ No newline at end of file diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/req/WorkOrderReq.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/req/WorkOrderReq.java index 32c200a..23298ab 100644 --- a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/req/WorkOrderReq.java +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/req/WorkOrderReq.java @@ -6,8 +6,6 @@ import lombok.Data; import io.swagger.v3.oas.annotations.media.Schema; -import org.hibernate.validator.constraints.Length; - import java.io.Serial; import java.io.Serializable; import java.time.*; diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderInfoResp.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderInfoResp.java new file mode 100644 index 0000000..7214df6 --- /dev/null +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderInfoResp.java @@ -0,0 +1,72 @@ +package top.wms.admin.weighManage.model.resp; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 任务工单详情信息 + * + * @author zc + * @since 2026/03/04 14:21 + */ +@Data +@Schema(description = "任务工单详情信息") +public class WorkOrderInfoResp { + + /** + * 主键id + */ + @Schema(description = "主键id") + private Long id; + + /** + * 工单主键id + */ + @Schema(description = "工单主键id") + private Long workOrderId; + + /** + * 物料主键id + */ + @Schema(description = "物料主键id") + private Long materialId; + + /** + * 物料主键id + */ + @Schema(description = "物料主键id") + private String materialName; + + /** + * 称重次数 + */ + @Schema(description = "称重次数") + private int weightTime; + + /** + * 物料数量 + */ + @Schema(description = "物料数量") + private BigDecimal quantity; + + /** + * 称重重量 + */ + @Schema(description = "称重重量") + private BigDecimal weight; + + /** + * 计算重量 + */ + @Schema(description = "计算重量") + private BigDecimal calculatedWeight; + + /** + * 抓拍的图片 + */ + @Schema(description = "抓拍的图片") + private String imgUrl; + +} diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderResp.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderResp.java index c1c8d0b..aadf415 100644 --- a/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderResp.java +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/model/resp/WorkOrderResp.java @@ -9,6 +9,7 @@ import top.wms.admin.common.model.resp.BaseDetailResp; import java.io.Serial; import java.time.*; import java.math.BigDecimal; +import java.util.List; /** * 任务工单信息信息 @@ -23,6 +24,12 @@ public class WorkOrderResp extends BaseDetailResp { @Serial private static final long serialVersionUID = 1L; + /** + * 卡号 + */ + @Schema(description = "卡号") + private String cardNo; + /** * 标题 */ @@ -54,7 +61,7 @@ public class WorkOrderResp extends BaseDetailResp { private BigDecimal unitWeight; /** - * 物料规格 + * 物料规格 */ @Schema(description = "物料规格") private String materialSpec; @@ -72,14 +79,15 @@ public class WorkOrderResp extends BaseDetailResp { private BigDecimal totalWeight; /** - * 修改人 + * 总数量 */ - @Schema(description = "修改人") - private Long updateUser; + @Schema(description = "总数量") + private int totalCount; /** - * 修改时间 + * 任务工单详情信息列表 */ - @Schema(description = "修改时间") - private LocalDateTime updateTime; + @Schema(description = "任务工单详情信息列表") + private List workOrderInfos; + } \ No newline at end of file diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/service/WorkOrderService.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/service/WorkOrderService.java index 9b87758..a62bf13 100644 --- a/wms-module-system/src/main/java/top/wms/admin/weighManage/service/WorkOrderService.java +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/service/WorkOrderService.java @@ -3,8 +3,11 @@ package top.wms.admin.weighManage.service; import top.continew.starter.extension.crud.service.BaseService; import top.wms.admin.weighManage.model.query.WorkOrderQuery; import top.wms.admin.weighManage.model.req.WorkOrderReq; +import top.wms.admin.weighManage.model.resp.WorkOrderInfoResp; import top.wms.admin.weighManage.model.resp.WorkOrderResp; +import java.util.List; + /** * 任务工单信息业务接口 * @@ -13,4 +16,11 @@ import top.wms.admin.weighManage.model.resp.WorkOrderResp; */ public interface WorkOrderService extends BaseService { + /** + * 获取任务工单详情信息 + * + * @param id 任务工单主键id + * @return 任务工单详情信息 + */ + List getDetail(Long id); } \ No newline at end of file diff --git a/wms-module-system/src/main/java/top/wms/admin/weighManage/service/impl/WorkOrderServiceImpl.java b/wms-module-system/src/main/java/top/wms/admin/weighManage/service/impl/WorkOrderServiceImpl.java index c6d83fb..95425f4 100644 --- a/wms-module-system/src/main/java/top/wms/admin/weighManage/service/impl/WorkOrderServiceImpl.java +++ b/wms-module-system/src/main/java/top/wms/admin/weighManage/service/impl/WorkOrderServiceImpl.java @@ -15,9 +15,12 @@ import top.wms.admin.weighManage.mapper.WorkOrderMapper; import top.wms.admin.weighManage.model.entity.WorkOrderDO; import top.wms.admin.weighManage.model.query.WorkOrderQuery; import top.wms.admin.weighManage.model.req.WorkOrderReq; +import top.wms.admin.weighManage.model.resp.WorkOrderInfoResp; import top.wms.admin.weighManage.model.resp.WorkOrderResp; import top.wms.admin.weighManage.service.WorkOrderService; +import java.util.List; + /** * 任务工单信息业务实现 * @@ -29,15 +32,22 @@ import top.wms.admin.weighManage.service.WorkOrderService; public class WorkOrderServiceImpl extends BaseServiceImpl implements WorkOrderService { @Override - public PageResp page(WorkOrderQuery query, PageQuery pageQuery) { + public PageResp page(WorkOrderQuery query, PageQuery pageQuery) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.like(StrUtil.isNotBlank(query.getMaterialName()), "m.material_name", query.getMaterialName()); queryWrapper.eq(null != query.getOrderNo(), "w.order_no", query.getOrderNo()); + queryWrapper.groupBy("w.id"); this.sort(queryWrapper, pageQuery); IPage page = baseMapper.selectWorkOrderPage(new Page<>(pageQuery.getPage(), pageQuery - .getSize()), queryWrapper); + .getSize()), queryWrapper); return PageResp.build(page); } + + @Override + public List getDetail(Long id) { + return baseMapper.getDetail(id); + } + } \ No newline at end of file diff --git a/wms-module-system/src/main/resources/mapper/WorkOrderMapper.xml b/wms-module-system/src/main/resources/mapper/WorkOrderMapper.xml index a87b910..f3788f2 100644 --- a/wms-module-system/src/main/resources/mapper/WorkOrderMapper.xml +++ b/wms-module-system/src/main/resources/mapper/WorkOrderMapper.xml @@ -5,10 +5,27 @@ + + \ No newline at end of file diff --git a/wms-webapi/src/main/java/top/wms/admin/controller/meterial/MaterialInfoController.java b/wms-webapi/src/main/java/top/wms/admin/controller/meterial/MaterialInfoController.java index 380b692..f25e915 100644 --- a/wms-webapi/src/main/java/top/wms/admin/controller/meterial/MaterialInfoController.java +++ b/wms-webapi/src/main/java/top/wms/admin/controller/meterial/MaterialInfoController.java @@ -28,9 +28,8 @@ import top.wms.admin.material.service.MaterialInfoService; Api.EXPORT}) public class MaterialInfoController extends BaseController { - @GetMapping("/code/{code}") - public MaterialInfoDO getMaterialInfoByCode(@PathVariable String code) { - return baseService.getMaterialInfoByCode(code); + public MaterialInfoDO getMaterialInfoByCode(@PathVariable String code) { + return baseService.getMaterialInfoByCode(code); } } diff --git a/wms-webapi/src/main/java/top/wms/admin/controller/weighManage/WorkOrderController.java b/wms-webapi/src/main/java/top/wms/admin/controller/weighManage/WorkOrderController.java index ae1cc0d..58485fd 100644 --- a/wms-webapi/src/main/java/top/wms/admin/controller/weighManage/WorkOrderController.java +++ b/wms-webapi/src/main/java/top/wms/admin/controller/weighManage/WorkOrderController.java @@ -1,5 +1,6 @@ package top.wms.admin.controller.weighManage; +import cn.dev33.satoken.annotation.SaCheckPermission; import top.continew.starter.extension.crud.enums.Api; import io.swagger.v3.oas.annotations.tags.Tag; @@ -8,12 +9,16 @@ import org.springframework.web.bind.annotation.*; import lombok.RequiredArgsConstructor; import top.continew.starter.extension.crud.annotation.CrudRequestMapping; +import top.continew.starter.log.annotation.Log; import top.wms.admin.common.controller.BaseController; import top.wms.admin.weighManage.model.query.WorkOrderQuery; import top.wms.admin.weighManage.model.req.WorkOrderReq; +import top.wms.admin.weighManage.model.resp.WorkOrderInfoResp; import top.wms.admin.weighManage.model.resp.WorkOrderResp; import top.wms.admin.weighManage.service.WorkOrderService; +import java.util.List; + /** * 任务工单信息管理 API * @@ -23,7 +28,14 @@ import top.wms.admin.weighManage.service.WorkOrderService; @Tag(name = "任务工单信息管理 API") @RestController @RequiredArgsConstructor -@CrudRequestMapping(value = "/weighManage/workOrder", api = {Api.PAGE, Api.DETAIL, Api.ADD, Api.DELETE, Api.EXPORT}) +@CrudRequestMapping(value = "/weighManage/workOrder", api = {Api.PAGE, Api.ADD, Api.DELETE, Api.EXPORT}) public class WorkOrderController extends BaseController { + @Log(ignore = true) + @SaCheckPermission("workOrder:record:detail") + @GetMapping(value = "/{id}") + public List getDetail(@PathVariable("id") Long id) { + return baseService.getDetail(id); + } + } \ No newline at end of file