From 332c735d010e34f1734dfc9eb1e3c3b9b5e50cec Mon Sep 17 00:00:00 2001 From: kkk-ops <1050738955@qq.com> Date: Sun, 4 Jan 2026 15:04:30 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E8=AE=A1=E5=88=92=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/plan/vo/PlanPageReqVO.java | 7 ++++ .../controller/admin/plan/vo/PlanRespVO.java | 10 ++++++ .../admin/plan/vo/PlanSaveReqVO.java | 7 ++++ .../admin/plan/vo/PlanStatusEnum.java | 2 +- .../controller/admin/task/TaskController.java | 2 +- .../admin/task/vo/TaskStatusEnum.java | 4 +-- .../mes/dal/dataobject/plan/PlanDO.java | 4 +++ .../module/mes/dal/mysql/plan/PlanMapper.java | 2 +- .../mes/service/plan/PlanServiceImpl.java | 36 ++++++++++++++++--- 9 files changed, 64 insertions(+), 10 deletions(-) diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanPageReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanPageReqVO.java index d1e7c6be9..814c532be 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanPageReqVO.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanPageReqVO.java @@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode; import lombok.ToString; import org.springframework.format.annotation.DateTimeFormat; +import java.math.BigDecimal; import java.time.LocalDateTime; import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; @@ -73,4 +74,10 @@ public class PlanPageReqVO extends PageParam { private String feedingPipeline; @Schema(description = "组别", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") private Integer groupType; + + @Schema(description = "是否试生产") + private BigDecimal isPreProduction; + + @Schema(description = "领料人ID", example = "10640") + private Long workerId; } \ No newline at end of file diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanRespVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanRespVO.java index 3b6660eaf..584575d65 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanRespVO.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanRespVO.java @@ -7,6 +7,7 @@ import com.alibaba.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; +import java.math.BigDecimal; import java.time.LocalDateTime; @Schema(description = "管理后台 - 生产计划 Response VO") @@ -79,6 +80,11 @@ public class PlanRespVO { @ExcelProperty("生产主管") private String productionManager; + @Schema(description = "领料人ID", example = "10640") + private Long workerId; + @Schema(description = "领料人", example = "10640") + private String worker; + @Schema(description = "备注", example = "你说的对") @ExcelProperty("备注") private String remark; @@ -112,4 +118,8 @@ public class PlanRespVO { @ExcelProperty(value = "组别", converter = DictConvert.class) @DictFormat("mes_group_type") private Integer groupType; + + @Schema(description = "是否试生产") + @ExcelProperty("是否试生产") + private BigDecimal isPreProduction; } \ No newline at end of file diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanSaveReqVO.java index 53220c284..fddb5e80e 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanSaveReqVO.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanSaveReqVO.java @@ -5,6 +5,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.NotNull; +import java.math.BigDecimal; import java.time.LocalDateTime; @Schema(description = "管理后台 - 生产计划新增/修改 Request VO") @@ -73,4 +74,10 @@ public class PlanSaveReqVO { @Schema(description = "组别", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") private Integer groupType; + + @Schema(description = "是否试生产") + private BigDecimal isPreProduction; + + @Schema(description = "领料人ID", example = "10640") + private Long workerId; } \ No newline at end of file diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanStatusEnum.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanStatusEnum.java index b65e9e3b6..06d35ba37 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanStatusEnum.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/vo/PlanStatusEnum.java @@ -8,7 +8,7 @@ import lombok.Getter; public enum PlanStatusEnum { 计划(0), - 派工(1), + 已排产(1), 开工(2), 暂停(3), 完工(4), diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/TaskController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/TaskController.java index 1877c0cf7..f8f04dd75 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/TaskController.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/TaskController.java @@ -93,7 +93,7 @@ public class TaskController { public CommonResult> getPlanTaskList() { List statusList = new ArrayList<>(); statusList.add(TaskStatusEnum.下达.getValue()); - statusList.add(TaskStatusEnum.计划.getValue()); + statusList.add(TaskStatusEnum.已排产.getValue()); statusList.add(TaskStatusEnum.开工.getValue()); List taskDOList = taskService.selectList(statusList); diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskStatusEnum.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskStatusEnum.java index 8de18e6fe..1e428c1ea 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskStatusEnum.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskStatusEnum.java @@ -13,7 +13,7 @@ public enum TaskStatusEnum { 草稿(0), 送审(1), 下达(2), - 计划(3), + 已排产(3), 开工(4), 完工(5), 入库(6); @@ -33,7 +33,7 @@ public enum TaskStatusEnum { public static List getEnablePlanStatus(){ List statusList = new ArrayList<>(); statusList.add(TaskStatusEnum.下达.getValue()); - statusList.add(TaskStatusEnum.计划.getValue()); + statusList.add(TaskStatusEnum.已排产.getValue()); statusList.add(TaskStatusEnum.开工.getValue()); statusList.add(TaskStatusEnum.完工.getValue()); statusList.add(TaskStatusEnum.入库.getValue()); diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/plan/PlanDO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/plan/PlanDO.java index 6f20bb6ad..5f99638dd 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/plan/PlanDO.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/plan/PlanDO.java @@ -110,4 +110,8 @@ public class PlanDO extends BaseDO { //@Schema(description = "组别", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") private Integer groupType; + /** + * 是否试生产 + */ + private Boolean isPreProduction; } \ No newline at end of file diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/plan/PlanMapper.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/plan/PlanMapper.java index cf9a25b13..e0b0307ce 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/plan/PlanMapper.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/plan/PlanMapper.java @@ -71,7 +71,7 @@ public interface PlanMapper extends BaseMapperX { default PlanDO selectLastOne() { List status = new ArrayList<>(); status.add(PlanStatusEnum.计划.getValue()); - status.add(PlanStatusEnum.派工.getValue()); + status.add(PlanStatusEnum.已排产.getValue()); status.add(PlanStatusEnum.开工.getValue()); return selectOne(new QueryWrapper() .eq("is_enable", true) diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImpl.java index 6d9341a86..2cb853bd2 100644 --- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImpl.java +++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImpl.java @@ -82,13 +82,39 @@ public class PlanServiceImpl implements PlanService { } if (plan.getIsEnable() == null) plan.setIsEnable(true); if(plan.getPriorityNum()==null) plan.setPriorityNum(1L); - planMapper.insert(plan); + // todo + // planMapper.insert(plan); // 返回 TaskDO taskDO = taskService.getTask(plan.getTaskId()); if(taskDO!=null && taskDO.getStatus().equals(TaskStatusEnum.下达.getValue())) { - taskDO.setStatus(TaskStatusEnum.计划.getValue()); + taskDO.setStatus(TaskStatusEnum.已排产.getValue()); taskService.updateTask(taskDO); } + +// List itemRequisitionDetails = new ArrayList<>(); +// for (ItemRequisitionAndStock item : list) { +// ItemRequisitionDetailDO detailDO = new ItemRequisitionDetailDO() +// .setProductId(item.getItemId()) +// .setUnitId(item.getUnitId()) +// .setNumber(item.getNumber()) +// .setIsEnable(true); +// itemRequisitionDetails.add(detailDO); +// } +// saveReqVO.setItemRequisitionDetails(itemRequisitionDetails); +// saveReqVO.setStatus(ItemRequisitionStatusEnum.下达.getValue()); +// if (saveReqVO.getRequisitionDate() == null) +// saveReqVO.setRequisitionDate(LocalDateTime.now()); +// // 创建领料单 +// Long id = itemRequisitionService.createItemRequisition(saveReqVO); + //更新计划状态 + plan.setStatus(PlanStatusEnum.已排产.getValue()); + plan.setIsEnable(true); + plan.setProductionManagerId(createReqVO.getWorkerId()); + plan.setFeedingPipeline(createReqVO.getFeedingPipeline()); + plan.setStartTime(LocalDateTime.now()); + //plan.setRequisitionId(id); + planMapper.insert(plan); + return plan.getId(); } @@ -185,7 +211,7 @@ public class PlanServiceImpl implements PlanService { if(planDOList!=null && planDOList.size()>0){ TaskDO taskDO = taskService.getTask(planDOList.get(0).getTaskId()); if(taskDO!=null && taskDO.getStatus().equals(TaskStatusEnum.下达.getValue())) { - taskDO.setStatus(TaskStatusEnum.计划.getValue()); + taskDO.setStatus(TaskStatusEnum.已排产.getValue()); taskService.updateTask(taskDO); } return planMapper.insertBatch(planDOList); @@ -216,7 +242,7 @@ public class PlanServiceImpl implements PlanService { // 创建领料单 Long id = itemRequisitionService.createItemRequisition(saveReqVO); //更新计划状态 - planDO.setStatus(PlanStatusEnum.派工.getValue()); + planDO.setStatus(PlanStatusEnum.已排产.getValue()); planDO.setIsEnable(true); planDO.setProductionManagerId(saveReqVO.getWorkerId()); planDO.setFeedingPipeline(saveReqVO.getFeedingPipeline()); @@ -266,7 +292,7 @@ public class PlanServiceImpl implements PlanService { if(status.equals(PlanStatusEnum.开工.getValue())){ PlanDO plan = planMapper.selectById(id); TaskDO taskDO = taskService.getTask(plan.getTaskId()); - if( taskDO.getStatus().equals(TaskStatusEnum.计划.getValue())) { + if( taskDO.getStatus().equals(TaskStatusEnum.已排产.getValue())) { taskDO.setStatus(TaskStatusEnum.开工.getValue()); taskService.updateTask(taskDO); }