From eca2c176a2617bee2d36316d6bc17bd3e38281cc Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 4 Apr 2026 00:54:39 +0800 Subject: [PATCH] ✨ feat(mes): 新增维修工单确认完成请求及相关逻辑 --- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/MesDvRepairController.java | 5 ++--- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairConfirmReqVO.java | 21 +++++++++++++++++++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairSaveReqVO.java | 3 ++- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairService.java | 6 +++--- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairServiceImpl.java | 10 +++++----- 5 files changed, 33 insertions(+), 12 deletions(-) create mode 100644 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairConfirmReqVO.java diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/MesDvRepairController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/MesDvRepairController.java index 8ff2f02..7b958ce 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/MesDvRepairController.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/MesDvRepairController.java @@ -125,10 +125,9 @@ public class MesDvRepairController { @PutMapping("/confirm") @Operation(summary = "确认维修完成(维修中→待验收)") - @Parameter(name = "id", description = "编号", required = true) @PreAuthorize("@ss.hasPermission('mes:dv-repair:update')") - public CommonResult confirmRepair(@RequestParam("id") Long id) { - repairService.confirmRepair(id); + public CommonResult confirmRepair(@Valid @RequestBody cn.iocoder.yudao.module.mes.controller.admin.dv.repair.vo.MesDvRepairConfirmReqVO confirmReqVO) { + repairService.confirmRepair(confirmReqVO); return success(true); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairConfirmReqVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairConfirmReqVO.java new file mode 100644 index 0000000..c707ef4 --- /dev/null +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairConfirmReqVO.java @@ -0,0 +1,21 @@ +package cn.iocoder.yudao.module.mes.controller.admin.dv.repair.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import jakarta.validation.constraints.NotNull; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - MES 维修工单确认完成 Request VO") +@Data +public class MesDvRepairConfirmReqVO { + + @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") + @NotNull(message = "维修工单编号不能为空") + private Long id; + + @Schema(description = "维修完成日期", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "维修完成日期不能为空") + private LocalDateTime finishDate; + +} diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairSaveReqVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairSaveReqVO.java index 9dbbdc3..d841153 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairSaveReqVO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/dv/repair/vo/MesDvRepairSaveReqVO.java @@ -18,7 +18,8 @@ public class MesDvRepairSaveReqVO { @NotBlank(message = "维修工单编码不能为空") private String code; - @Schema(description = "维修工单名称", example = "注塑机液压系统维修") + @Schema(description = "维修工单名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "注塑机液压系统维修") + @NotBlank(message = "维修工单名称不能为空") private String name; @Schema(description = "设备编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairService.java index 41b4517..8e002a2 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairService.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairService.java @@ -1,10 +1,10 @@ package cn.iocoder.yudao.module.mes.service.dv.repair; import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.module.mes.controller.admin.dv.repair.vo.MesDvRepairConfirmReqVO; import cn.iocoder.yudao.module.mes.controller.admin.dv.repair.vo.MesDvRepairPageReqVO; import cn.iocoder.yudao.module.mes.controller.admin.dv.repair.vo.MesDvRepairSaveReqVO; import cn.iocoder.yudao.module.mes.dal.dataobject.dv.repair.MesDvRepairDO; - import jakarta.validation.Valid; /** @@ -78,9 +78,9 @@ public interface MesDvRepairService { /** * 确认维修完成(维修中→待验收) * - * @param id 编号 + * @param confirmReqVO 确认信息 */ - void confirmRepair(Long id); + void confirmRepair(@Valid MesDvRepairConfirmReqVO confirmReqVO); /** * 完成验收(待验收→已确认) diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairServiceImpl.java index 91fd0b0..ea4d90a 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/dv/repair/MesDvRepairServiceImpl.java @@ -144,16 +144,16 @@ public class MesDvRepairServiceImpl implements MesDvRepairService { } @Override - public void confirmRepair(Long id) { + public void confirmRepair(cn.iocoder.yudao.module.mes.controller.admin.dv.repair.vo.MesDvRepairConfirmReqVO confirmReqVO) { // 1. 校验存在,且状态为维修中 - MesDvRepairDO repair = validateRepairExists(id); + MesDvRepairDO repair = validateRepairExists(confirmReqVO.getId()); if (ObjUtil.notEqual(MesDvRepairStatusEnum.CONFIRMED.getStatus(), repair.getStatus())) { throw exception(DV_REPAIR_NOT_CONFIRMED); } - // 2. 更新状态为待验收,自动设置维修完成日期 - repairMapper.updateById(new MesDvRepairDO().setId(id) - .setStatus(MesDvRepairStatusEnum.APPROVING.getStatus()).setFinishDate(LocalDateTime.now())); + // 2. 更新状态为待验收,设置维修完成日期 + repairMapper.updateById(new MesDvRepairDO().setId(confirmReqVO.getId()) + .setStatus(MesDvRepairStatusEnum.APPROVING.getStatus()).setFinishDate(confirmReqVO.getFinishDate())); } @Override -- libgit2 0.21.4