diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/autocode/vo/AutocodePartSaveReqVO.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/autocode/vo/AutocodePartSaveReqVO.java
index 6e0ca8e56f..e9a8073b8c 100644
--- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/autocode/vo/AutocodePartSaveReqVO.java
+++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/autocode/vo/AutocodePartSaveReqVO.java
@@ -61,7 +61,6 @@ public class AutocodePartSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
private Boolean isEnable;
}
\ No newline at end of file
diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/vo/DeviceSaveReqVO.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/vo/DeviceSaveReqVO.java
index 66cde25a08..049c11d1fb 100644
--- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/vo/DeviceSaveReqVO.java
+++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/device/vo/DeviceSaveReqVO.java
@@ -93,7 +93,7 @@ public class DeviceSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
@Schema(description = "数采设备类型", example = "2")
diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/formula/vo/FormulaSaveReqVO.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/formula/vo/FormulaSaveReqVO.java
index a432e16b62..84cbd553b5 100644
--- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/formula/vo/FormulaSaveReqVO.java
+++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/formula/vo/FormulaSaveReqVO.java
@@ -34,7 +34,7 @@ public class FormulaSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
}
\ No newline at end of file
diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/gateway/vo/GatewaySaveReqVO.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/gateway/vo/GatewaySaveReqVO.java
index d4b15462d8..f298c4a931 100644
--- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/gateway/vo/GatewaySaveReqVO.java
+++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/gateway/vo/GatewaySaveReqVO.java
@@ -28,7 +28,7 @@ public class GatewaySaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
@Schema(description = "网关编码")
diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/kanban/vo/KanbanSaveReqVO.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/kanban/vo/KanbanSaveReqVO.java
index 8ce25ff59f..735ad4eb7a 100644
--- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/kanban/vo/KanbanSaveReqVO.java
+++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/controller/admin/kanban/vo/KanbanSaveReqVO.java
@@ -30,7 +30,7 @@ public class KanbanSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
}
\ No newline at end of file
diff --git a/yudao-module-mes/yudao-module-mes-biz/pom.xml b/yudao-module-mes/yudao-module-mes-biz/pom.xml
index f281786119..c3cef72592 100644
--- a/yudao-module-mes/yudao-module-mes-biz/pom.xml
+++ b/yudao-module-mes/yudao-module-mes-biz/pom.xml
@@ -34,6 +34,11 @@
yudao-module-erp-biz
${revision}
+
+ cn.iocoder.boot
+ yudao-module-system-biz
+ ${revision}
+
cn.iocoder.boot
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/bom/vo/BomSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/bom/vo/BomSaveReqVO.java
index fbfcfe0919..6a55379ad8 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/bom/vo/BomSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/bom/vo/BomSaveReqVO.java
@@ -39,7 +39,7 @@ public class BomSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
@Schema(description = "产品BOM明细列表")
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/itemrequisition/vo/ItemRequisitionSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/itemrequisition/vo/ItemRequisitionSaveReqVO.java
index 0239b4cff9..547bff2357 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/itemrequisition/vo/ItemRequisitionSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/itemrequisition/vo/ItemRequisitionSaveReqVO.java
@@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.time.LocalDate;
+import java.time.LocalDateTime;
import java.util.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
@@ -22,10 +23,10 @@ public class ItemRequisitionSaveReqVO {
private String code;
@Schema(description = "下料时间")
- private LocalDate requisitionDate;
+ private LocalDateTime requisitionDate;
@Schema(description = "领料时间")
- private LocalDate deliveryDate;
+ private LocalDateTime deliveryDate;
@Schema(description = "状态", example = "2")
private Integer status;
@@ -41,7 +42,6 @@ public class ItemRequisitionSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
private Boolean isEnable;
@Schema(description = "领料明细列表")
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/organization/vo/OrganizationSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/organization/vo/OrganizationSaveReqVO.java
index 153d46909e..bb3d67165a 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/organization/vo/OrganizationSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/organization/vo/OrganizationSaveReqVO.java
@@ -38,7 +38,7 @@ public class OrganizationSaveReqVO {
private String email;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
@Schema(description = "组织状态", example = "1")
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/PlanController.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/PlanController.java
index 9749f0ec28..912850e7f1 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/PlanController.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/plan/PlanController.java
@@ -74,8 +74,8 @@ public class PlanController {
@Operation(summary = "获得生产计划分页")
@PreAuthorize("@ss.hasPermission('mes:plan:query')")
public CommonResult> getPlanPage(@Valid PlanPageReqVO pageReqVO) {
- PageResult pageResult = planService.getPlanPage(pageReqVO);
- return success(BeanUtils.toBean(pageResult, PlanRespVO.class));
+ PageResult pageResult = planService.getPlanPage(pageReqVO);
+ return success(pageResult);
}
@GetMapping("/export-excel")
@@ -85,10 +85,9 @@ public class PlanController {
public void exportPlanExcel(@Valid PlanPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
- List list = planService.getPlanPage(pageReqVO).getList();
+ List list = planService.getPlanPage(pageReqVO).getList();
// 导出 Excel
- ExcelUtils.write(response, "生产计划.xls", "数据", PlanRespVO.class,
- BeanUtils.toBean(list, PlanRespVO.class));
+ ExcelUtils.write(response, "生产计划.xls", "数据", PlanRespVO.class, list);
}
}
\ 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 dff017131c..4df626c186 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
@@ -24,8 +24,9 @@ public class PlanRespVO {
private String code;
@Schema(description = "产品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21176")
- @ExcelProperty("产品ID")
private Long productId;
+ @ExcelProperty("产品")
+ private String productName;
@Schema(description = "任务单明细ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18938")
@ExcelProperty("任务单明细ID")
@@ -34,6 +35,9 @@ public class PlanRespVO {
@Schema(description = "任务单ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18331")
@ExcelProperty("任务单ID")
private Long taskId;
+ @Schema(description = "任务单ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18331")
+ @ExcelProperty("任务单ID")
+ private String taskCode;
@Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("数量")
@@ -65,8 +69,10 @@ public class PlanRespVO {
private LocalDateTime endTime;
@Schema(description = "生产主管ID", example = "10640")
- @ExcelProperty("生产主管ID")
private Long productionManagerId;
+ @Schema(description = "生产主管", example = "10640")
+ @ExcelProperty("生产主管")
+ private String productionManager;
@Schema(description = "备注", example = "你说的对")
@ExcelProperty("备注")
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 7064bbbd42..6560e1e9b3 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
@@ -29,7 +29,7 @@ public class PlanSaveReqVO {
private Long taskId;
@Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "数量不能为空")
+ @NotNull(message = "计划数量不能为空")
private Long planNumber;
@Schema(description = "成品数量")
@@ -48,11 +48,9 @@ public class PlanSaveReqVO {
private LocalDateTime planEndTime;
@Schema(description = "实际开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "实际开始时间不能为空")
private LocalDateTime startTime;
@Schema(description = "实际结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "实际结束时间不能为空")
private LocalDateTime endTime;
@Schema(description = "生产主管ID", example = "10640")
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportDetailSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportDetailSaveReqVO.java
index 662d12831d..9836d93a5b 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportDetailSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportDetailSaveReqVO.java
@@ -20,7 +20,6 @@ public class ProduceReportDetailSaveReqVO {
private Long reportId;
@Schema(description = "生产计划ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "22861")
- @NotNull(message = "生产计划ID不能为空")
private Long planId;
@Schema(description = "产品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14517")
@@ -28,17 +27,15 @@ public class ProduceReportDetailSaveReqVO {
private Long productId;
@Schema(description = "用户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23386")
- @NotNull(message = "用户ID不能为空")
private Long userId;
@Schema(description = "组织ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1329")
- @NotNull(message = "组织ID不能为空")
private Long orgId;
@Schema(description = "成品率")
private BigDecimal qualityRate;
- @Schema(description = "备注", example = "不好")
+ @Schema(description = "废品原因", example = "不好")
private String wasteReason;
@Schema(description = "总时长")
@@ -51,7 +48,6 @@ public class ProduceReportDetailSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
private Boolean isEnable;
@Schema(description = "成品数量")
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportSaveReqVO.java
index c238b852de..779b04aca2 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/producereport/vo/ProduceReportSaveReqVO.java
@@ -42,7 +42,7 @@ public class ProduceReportSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
}
\ 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/task/vo/TaskSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskSaveReqVO.java
index 57eb45b125..0fb7ecda49 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/task/vo/TaskSaveReqVO.java
@@ -45,7 +45,7 @@ public class TaskSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
@Schema(description = "生产任务单明细列表")
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/workteam/vo/WorkTeamSaveReqVO.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/workteam/vo/WorkTeamSaveReqVO.java
index f62936f42a..f49d5c2f39 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/workteam/vo/WorkTeamSaveReqVO.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/workteam/vo/WorkTeamSaveReqVO.java
@@ -26,7 +26,7 @@ public class WorkTeamSaveReqVO {
private String remark;
@Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "是否启用不能为空")
+
private Boolean isEnable;
}
\ No newline at end of file
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanService.java
index 70acac1241..a3c1dc959f 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanService.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/plan/PlanService.java
@@ -49,6 +49,6 @@ public interface PlanService {
* @param pageReqVO 分页查询
* @return 生产计划分页
*/
- PageResult getPlanPage(PlanPageReqVO pageReqVO);
+ PageResult getPlanPage(PlanPageReqVO pageReqVO);
}
\ No newline at end of file
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 9ad31d2471..5bc18b3bac 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
@@ -1,5 +1,16 @@
package cn.iocoder.yudao.module.mes.service.plan;
+import cn.hutool.core.collection.CollUtil;
+import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
+import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
+import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
+import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
+import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomRespVO;
+import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO;
+import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
+import cn.iocoder.yudao.module.mes.service.task.TaskService;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
+import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
@@ -16,6 +27,7 @@ import cn.iocoder.yudao.module.mes.dal.mysql.plan.PlanMapper;
import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
/**
@@ -68,8 +80,36 @@ public class PlanServiceImpl implements PlanService {
}
@Override
- public PageResult getPlanPage(PlanPageReqVO pageReqVO) {
- return planMapper.selectPage(pageReqVO);
+ public PageResult getPlanPage(PlanPageReqVO pageReqVO) {
+ PageResult pageResult = planMapper.selectPage(pageReqVO);
+ return new PageResult<>(buildVOList(pageResult.getList()),pageResult.getTotal());
}
+ @Resource
+ private ErpProductService productService;
+ @Resource
+ private AdminUserService userService;
+ @Resource
+ private TaskService taskService;
+ private List buildVOList(List list) {
+ if (CollUtil.isEmpty(list)) {
+ return Collections.emptyList();
+ }
+ Map map = productService.getProductMap(
+ convertSet(list, PlanDO::getProductId));
+ Map userMap = userService.getUserMap(
+ convertSet(list, PlanDO::getProductionManagerId));
+ Map taskMap = taskService.getMap(
+ convertSet(list, PlanDO::getTaskId));
+ return BeanUtils.toBean(list, PlanRespVO.class, item -> {
+ MapUtils.findAndThen(map, item.getProductId(),
+ product -> item.setProductName(product.getName()));
+
+ MapUtils.findAndThen(userMap, item.getProductionManagerId(),
+ unit -> item.setProductionManager(unit.getNickname()));
+
+ MapUtils.findAndThen(taskMap, item.getTaskId(),
+ task -> item.setTaskCode(task.getCode()));
+ });
+ }
}
\ No newline at end of file
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskService.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskService.java
index 393eb7e894..e1029baf29 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskService.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskService.java
@@ -1,11 +1,15 @@
package cn.iocoder.yudao.module.mes.service.task;
import java.util.*;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
import cn.iocoder.yudao.module.mes.controller.admin.task.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import javax.validation.Valid;
@@ -45,6 +49,19 @@ public interface TaskService {
* @return 生产任务单
*/
TaskDO getTask(Long id);
+ /**
+ * 获得用户 Map
+ *
+ * @param ids 用户编号数组
+ * @return 用户 Map
+ */
+ default Map getMap(Collection ids) {
+ if (CollUtil.isEmpty(ids)) {
+ return new HashMap<>();
+ }
+ return CollectionUtils.convertMap(getTaskList(ids), TaskDO::getId);
+ }
+ List getTaskList(Collection ids);
/**
* 获得生产任务单分页
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskServiceImpl.java b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskServiceImpl.java
index 4084787921..6cf5173e4a 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskServiceImpl.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/main/java/cn/iocoder/yudao/module/mes/service/task/TaskServiceImpl.java
@@ -8,6 +8,7 @@ import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomDetailRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
@@ -86,7 +87,13 @@ public class TaskServiceImpl implements TaskService {
throw exception(TASK_NOT_EXISTS);
}
}
-
+ @Override
+ public List getTaskList(Collection ids) {
+ if (CollUtil.isEmpty(ids)) {
+ return Collections.emptyList();
+ }
+ return taskMapper.selectBatchIds(ids);
+ }
@Override
public TaskDO getTask(Long id) {
return taskMapper.selectById(id);
diff --git a/yudao-module-mes/yudao-module-mes-biz/src/test/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImplTest.java b/yudao-module-mes/yudao-module-mes-biz/src/test/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImplTest.java
index 0b1f9287f1..796a63c19d 100644
--- a/yudao-module-mes/yudao-module-mes-biz/src/test/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImplTest.java
+++ b/yudao-module-mes/yudao-module-mes-biz/src/test/java/cn/iocoder/yudao/module/mes/service/plan/PlanServiceImplTest.java
@@ -174,7 +174,7 @@ public class PlanServiceImplTest extends BaseDbUnitTest {
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
// 调用
- PageResult pageResult = planService.getPlanPage(reqVO);
+ PageResult pageResult = planService.getPlanPage(reqVO);
// 断言
assertEquals(1, pageResult.getTotal());
assertEquals(1, pageResult.getList().size());