From 741610ad8c0372854c521e58a484d8f0ae522b9b Mon Sep 17 00:00:00 2001 From: yangshb Date: Thu, 7 Mar 2024 16:29:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=A0=B9=E6=8D=AE=E6=8E=92?= =?UTF-8?q?=E5=8D=95id=E8=8E=B7=E5=8F=96=E6=9D=BF=E6=9D=90=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/module/vo/ModulePageReqVO.java | 2 +- .../controller/admin/plan/PlanController.java | 8 +++++ .../admin/plan/vo/PlateResList.java | 35 +++++++++++++++++++ .../dal/dataobject/module/ModuleDO.java | 4 +-- .../dal/mysql/module/ModuleMapper.java | 2 +- .../executor/dal/mysql/plate/PlateMapper.java | 2 ++ .../executor/service/plan/PlanService.java | 2 ++ .../service/plan/PlanServiceImpl.java | 22 ++++++++++++ .../resources/mapper/module/ModuleMapper.xml | 5 +++ .../resources/mapper/plate/PlateMapper.xml | 9 +++++ 10 files changed, 87 insertions(+), 4 deletions(-) create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateResList.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/module/ModuleMapper.xml diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/module/vo/ModulePageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/module/vo/ModulePageReqVO.java index 138e7a456..7775e4f09 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/module/vo/ModulePageReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/module/vo/ModulePageReqVO.java @@ -16,7 +16,7 @@ import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH public class ModulePageReqVO extends PageParam { @Schema(description = "生产单号") - private Long orderNo; + private Long orderId; @Schema(description = "模块名称", example = "张三") private String name; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java index 67ecb3b33..21e9e9666 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java @@ -78,6 +78,14 @@ public class PlanController { return success(BeanUtils.toBean(plan, PlanRespVO.class)); } + @GetMapping("getPlateByPlanId") + @Operation(summary = "根据排单id获取板材列表") + @Parameter(name = "id", description = "排单id", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('executor:plan:query')") + public CommonResult> getPlateByPlanId(@RequestParam("id") Long id) { + return success(planService.getPlateByPlanId(id)); + } + @GetMapping("/page") @Operation(summary = "获得排单分页") @PreAuthorize("@ss.hasPermission('executor:plan:query')") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateResList.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateResList.java new file mode 100644 index 000000000..31d30c34c --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateResList.java @@ -0,0 +1,35 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Data +public class PlateResList { + + @Schema(description = "生产单id") + private Long orderId; + @Schema(description = "房间id") + private Long roomId; + @Schema(description = "房间名称") + private String roomName; + @Schema(description = "柜体Id") + private Long bodyId; + @Schema(description = "柜体名称") + private String bodyName; + @Schema(description = "自定义板材编号") + private String plateNo; + @Schema(description = "板材名称") + private String plateName; + @Schema(description = "商品颜色") + private String color; + @Schema(description = "商品宽") + private String width; + @Schema(description = "商品高") + private String height; + @Schema(description = "商品厚") + private String thickness; + @Schema(description = "是否异形") + private Boolean specialShaped; + @Schema(description = "是否造型") + private Boolean sculpt; +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/module/ModuleDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/module/ModuleDO.java index 18d3447be..dad92729f 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/module/ModuleDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/module/ModuleDO.java @@ -12,7 +12,7 @@ import com.cf.imes.framework.mybatis.core.dataobject.BaseDO; * * @author 晨丰科技 */ -@TableName("order_module_n") +@TableName("order_module") @KeySequence("order_module_n_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 @Data @EqualsAndHashCode(callSuper = true) @@ -30,7 +30,7 @@ public class ModuleDO extends BaseDO { /** * 生产单号 */ - private Long orderNo; + private Long orderId; /** * 模块名称 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/module/ModuleMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/module/ModuleMapper.java index dfd133918..8a2b28d70 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/module/ModuleMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/module/ModuleMapper.java @@ -19,7 +19,7 @@ public interface ModuleMapper extends BaseMapperX { default PageResult selectPage(ModulePageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() - .eqIfPresent(ModuleDO::getOrderNo, reqVO.getOrderNo()) + .eqIfPresent(ModuleDO::getOrderId, reqVO.getOrderId()) .likeIfPresent(ModuleDO::getName, reqVO.getName()) .eqIfPresent(ModuleDO::getParentId, reqVO.getParentId()) .eqIfPresent(ModuleDO::getGroupId, reqVO.getGroupId()) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java index 111cddb07..b489f289c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java @@ -9,6 +9,7 @@ import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.module.executor.controller.admin.plan.vo.PlatePage; +import com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList; import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO; import org.apache.ibatis.annotations.Mapper; import com.cf.imes.module.executor.controller.admin.plate.vo.*; @@ -62,4 +63,5 @@ public interface PlateMapper extends BaseMapperX { IPage selectPlatePage(@Param("page") IPage page, @Param("orderId")Long organId, @Param("goodsId") String goodsId); + List selectPlateByPlanId(Long id); } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java index 2da49c4b8..562fc4c01 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java @@ -59,4 +59,6 @@ public interface PlanService { Boolean addPlate(AddPlateReq req); Boolean cancellation(Long id); + + List getPlateByPlanId(Long id); } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java index 7ebd3993a..2088840fd 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java @@ -12,12 +12,14 @@ import com.cf.imes.framework.common.util.date.LocalDateTimeUtils; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.query.QueryWrapperX; import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO; +import com.cf.imes.module.executor.dal.dataobject.module.ModuleDO; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; import com.cf.imes.module.executor.dal.dataobject.planitem.PlanItemDO; import com.cf.imes.module.executor.dal.dataobject.planorder.PlanOrderDO; import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO; import com.cf.imes.module.executor.dal.mysql.goods.GoodsMapper; +import com.cf.imes.module.executor.dal.mysql.module.ModuleMapper; import com.cf.imes.module.executor.dal.mysql.order.OrderMapper; import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper; import com.cf.imes.module.executor.dal.mysql.planitem.PlanItemMapper; @@ -81,6 +83,9 @@ public class PlanServiceImpl implements PlanService { @Resource private MachineApi machineApi; + @Resource + private ModuleMapper moduleMapper; + @Override @Transactional(rollbackFor = Exception.class) @@ -217,6 +222,7 @@ public class PlanServiceImpl implements PlanService { e.setPlateInfoList(goodsDOS.stream() .filter(f -> Objects.equals(f.getOrderId(), e.getId())) .map(p -> PlateInfoVO.builder() + .material(p.getMaterial()) .width(p.getWidth()) .height(p.getHeight()) .thickness(p.getThickness()) @@ -307,4 +313,20 @@ public class PlanServiceImpl implements PlanService { return Boolean.TRUE; } + @Override + public List getPlateByPlanId(Long id) { + validatePlanExists(id); + List list = plateMapper.selectPlateByPlanId(id); + Set bodyIds = list.stream().map(e -> e.getBodyId()).collect(Collectors.toSet()); + Set roomIds = list.stream().map(e -> e.getRoomId()).collect(Collectors.toSet()); + List moduleDOS = moduleMapper.selectList(new LambdaQueryWrapperX().in(ModuleDO::getId, bodyIds).eq(ModuleDO::getType, 2) + .or().in(ModuleDO::getId, roomIds).eq(ModuleDO::getType, 1) + ); + for (PlateResList resList : list) { + resList.setBodyName(moduleDOS.stream().filter(e->Objects.equals(e.getId(), resList.getBodyId())).map(e->e.getName()).findAny().orElse(null)); + resList.setRoomName(moduleDOS.stream().filter(e->Objects.equals(e.getId(), resList.getRoomId())).map(e->e.getName()).findAny().orElse(null)); + } + return list; + } + } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/module/ModuleMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/module/ModuleMapper.xml new file mode 100644 index 000000000..69fdf6b29 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/module/ModuleMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml index 4b2ceacf0..d013fb662 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml @@ -20,4 +20,13 @@ + \ No newline at end of file