diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java index 44cca859d..29d41d0ce 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java @@ -16,10 +16,10 @@ import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH public class GoodsPageReqVO extends PageParam { @Schema(description = "生产单号") - private Long orderNo; + private Long orderId; @Schema(description = "商品 ID", example = "18975") - private Long goodsId; + private String goodsId; @Schema(description = "商品 ID", example = "王五") private String goodsName; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java index 8f8800ed1..bbbbab3ae 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java @@ -23,7 +23,7 @@ public class GoodsRespVO { @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18975") @ExcelProperty("商品 ID") - private Long goodsId; + private String goodsId; @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") @ExcelProperty("商品名称") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java index 500597b7b..a6fcb0a64 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java @@ -18,7 +18,7 @@ public class GoodsSaveReqVO { @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18975") @NotNull(message = "商品 ID不能为空") - private Long goodsId; + private String goodsId; @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") @NotEmpty(message = "商品名称不能为空") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsPageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsPageReqVO.java index 6e4192b6e..3d81d9ee9 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsPageReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsPageReqVO.java @@ -19,7 +19,7 @@ public class OrderPartsPageReqVO extends PageParam { private Long orderNo; @Schema(description = "商品ID", example = "1195") - private Long goodsId; + private String goodsId; @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/orderParts/vo/OrderPartsRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsRespVO.java index f0b12852c..e51f865eb 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsRespVO.java @@ -23,7 +23,7 @@ public class OrderPartsRespVO { @Schema(description = "商品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1195") @ExcelProperty("商品ID") - private Long goodsId; + private String goodsId; @Schema(description = "配件名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰") @ExcelProperty("配件名称") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsSaveReqVO.java index acaadacc0..9d588bc1a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsSaveReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderParts/vo/OrderPartsSaveReqVO.java @@ -18,7 +18,7 @@ public class OrderPartsSaveReqVO { @Schema(description = "商品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1195") @NotNull(message = "商品ID不能为空") - private Long goodsId; + private String goodsId; @Schema(description = "配件名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰") @NotEmpty(message = "配件名称不能为空") 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 f4944b4ab..1f39b24f0 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 @@ -93,6 +93,13 @@ public class PlanController { return success(planService.getNotPlanPlateListPage(pageVO)); } + @PostMapping("addPlate") + @Operation(summary = "添加板材") + @PreAuthorize("@ss.hasPermission('executor:plan:update')") + public CommonResult addPlate(@Valid @RequestBody AddPlateReq req) { + return success(planService.addPlate(req)); + } + @GetMapping("/export-excel") @Operation(summary = "导出排单 Excel") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddPlateReq.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddPlateReq.java new file mode 100644 index 000000000..d815df117 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/AddPlateReq.java @@ -0,0 +1,37 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.NonNull; + +import javax.validation.Valid; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.util.List; + +/** + * @author there + */ +@Data +public class AddPlateReq { + + @NotNull(message = "排单id") + @Schema(description = "排单id") + private Long planId; + + @NotEmpty(message = "列表不能空") + @JsonProperty("list") + private List list; + + @Valid + @Data + public static class Obj { + @NotNull(message = "生产单id不能空") + @Schema(description = "生产单id") + private Long orderId; + @NotNull(message = "板材id不能空") + @Schema(description = "板材id") + private Long plateId; + } +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderPageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderPageReqVO.java index 41e1b6975..3528fb4c7 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderPageReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderPageReqVO.java @@ -22,7 +22,7 @@ public class OrderPageReqVO extends PageParam { @Schema(description = "生产单id") private Long orderId; @Schema(description = "商品id") - private Long goodsId; + private String goodsId; @Schema(description = "自定义id") private String defaultId; @Schema(description = "客户") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderRespVO.java index 59c165cda..0486992f3 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/OrderRespVO.java @@ -38,7 +38,7 @@ public class OrderRespVO { @Schema(description = "平方") private BigDecimal area = new BigDecimal("0"); @Schema(description = "商品id") - private Long goodsId; + private String goodsId; @Schema(description = "商品名称") private String goodsName; @Schema(description = "颜色") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateInfoVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateInfoVO.java index 13ebf05df..f20c42a65 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateInfoVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateInfoVO.java @@ -8,6 +8,7 @@ import lombok.NoArgsConstructor; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; +import java.math.BigDecimal; /** * @author there @@ -21,17 +22,17 @@ public class PlateInfoVO { private String material; @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED) - private Double width; + private BigDecimal width; @Schema(description = "高度", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "高度不能为空") - private Double height; + private BigDecimal height; @Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED) - private Double thickness; + private BigDecimal thickness; @Schema(description = "面积") - private Double area; + private BigDecimal area; @Schema(description = "数量") private Integer count; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlatePage.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlatePage.java index d34fad788..16fa077ed 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlatePage.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlatePage.java @@ -15,7 +15,7 @@ public class PlatePage { @Schema(description = "生产单id") private Long orderId; @Schema(description = "商品id") - private Long goodsId; + private String goodsId; @Schema(description = "板名称") private String name; @Schema(description = "商品名称") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateReqPageVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateReqPageVO.java index 8c898571f..a0ac8dc78 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateReqPageVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateReqPageVO.java @@ -12,5 +12,5 @@ public class PlateReqPageVO extends PageParam { @Schema(description = "生产单id") private Long orderId; @Schema(description = "商品id") - private Long goodsId; + private String goodsId; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlatePageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlatePageReqVO.java index b5a280319..1ebbfe19f 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlatePageReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlatePageReqVO.java @@ -25,7 +25,7 @@ public class PlatePageReqVO extends PageParam { private Integer type; @Schema(description = "商品 ID", example = "28756") - private Long goodsId; + private String goodsId; @Schema(description = "宽度") private Double width; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java index 36b45846d..43e60615f 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java @@ -31,7 +31,7 @@ public class PlateRespVO { @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28756") @ExcelProperty("商品 ID") - private Long goodsId; + private String goodsId; @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("宽度") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateSaveReqVO.java index 1f5251616..fd33237cd 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateSaveReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateSaveReqVO.java @@ -26,7 +26,7 @@ public class PlateSaveReqVO { @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28756") @NotNull(message = "商品 ID不能为空") - private Long goodsId; + private String goodsId; @Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "宽度不能为空") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/goods/GoodsDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/goods/GoodsDO.java index d5a0282f0..dcd643e2c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/goods/GoodsDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/goods/GoodsDO.java @@ -1,6 +1,8 @@ package com.cf.imes.module.executor.dal.dataobject.goods; import lombok.*; + +import java.math.BigDecimal; import java.util.*; import java.time.LocalDateTime; import java.time.LocalDateTime; @@ -30,11 +32,11 @@ public class GoodsDO extends BaseDO { /** * 生产单号 */ - private Long orderNo; + private Long orderId; /** * 商品 ID */ - private Long goodsId; + private String goodsId; /** * 商品名称 */ @@ -50,19 +52,19 @@ public class GoodsDO extends BaseDO { /** * 宽度 */ - private Double width; + private BigDecimal width; /** * 高度 */ - private Double height; + private BigDecimal height; /** * 厚度 */ - private Double thickness; + private BigDecimal thickness; /** * 价格 */ - private Double price; + private BigDecimal price; /** * 品牌 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderParts/OrderPartsDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderParts/OrderPartsDO.java index d736b1545..a83cab877 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderParts/OrderPartsDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderParts/OrderPartsDO.java @@ -34,7 +34,7 @@ public class OrderPartsDO extends BaseDO { /** * 商品ID */ - private Long goodsId; + private String goodsId; /** * 配件名称 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java index 3ea2d77f1..82926ba9d 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/plate/PlateDO.java @@ -53,7 +53,7 @@ public class PlateDO extends BaseDO { /** * 商品 ID */ - private Long goodsId; + private String goodsId; /** * 宽度 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java index bb1b90d2e..ec3d20782 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java @@ -19,7 +19,7 @@ public interface GoodsMapper extends BaseMapperX { default PageResult selectPage(GoodsPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() - .eqIfPresent(GoodsDO::getOrderNo, reqVO.getOrderNo()) + .eqIfPresent(GoodsDO::getOrderId, reqVO.getOrderId()) .eqIfPresent(GoodsDO::getGoodsId, reqVO.getGoodsId()) .likeIfPresent(GoodsDO::getGoodsName, reqVO.getGoodsName()) .eqIfPresent(GoodsDO::getMaterial, reqVO.getMaterial()) 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 8fca4d76e..111cddb07 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 @@ -60,6 +60,6 @@ public interface PlateMapper extends BaseMapperX { .orderByDesc(PlateDO::getId)); } - IPage selectPlatePage(@Param("page") IPage page, @Param("orderId")Long organId, @Param("goodsId") Long goodsId); + IPage selectPlatePage(@Param("page") IPage page, @Param("orderId")Long organId, @Param("goodsId") String goodsId); } \ 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 5fb3c3152..a95229bc4 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 @@ -55,4 +55,6 @@ public interface PlanService { PageResult getOrderPage(OrderPageReqVO pageReqVO); PageResult getNotPlanPlateListPage(PlateReqPageVO pageVO); + + Boolean addPlate(AddPlateReq req); } \ 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 8341978a3..6f4cf8d05 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 @@ -74,6 +74,7 @@ public class PlanServiceImpl implements PlanService { @Resource private PlateMapper plateMapper; + @Override @Transactional(rollbackFor = Exception.class) public Long createPlan(PlanSaveReqVO createReqVO) { @@ -165,14 +166,22 @@ public class PlanServiceImpl implements PlanService { @Override public PlanRespVO getPlan(Long id) { PlanDO planDO = planMapper.selectById(id); + Set orderIds = planOrderMapper.selectList(new LambdaQueryWrapperX().eq(PlanOrderDO::getPlanId, planDO.getPlanNo())) + .stream() + .map(e -> e.getOrderId()) + .collect(Collectors.toSet()); PlanRespVO respVO = BeanUtils.toBean(planDO, PlanRespVO.class); - List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX().eq(GoodsDO::getOrderNo, planDO.getId())); + List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX().in(GoodsDO::getOrderId, orderIds)); + List plateDOS = plateMapper.selectList(new LambdaQueryWrapperX().in(PlateDO::getGoodsId, goodsDOS.stream().map(e -> e.getGoodsId()).collect(Collectors.toSet()))); List plateInfoVOS = goodsDOS.stream().map(e -> PlateInfoVO.builder() - .width(e.getWidth()) - .height(e.getHeight()) - .thickness(e.getThickness()) - .area(e.getHeight() * e.getWidth()) - .build()).collect(Collectors.toList()); + .material(e.getMaterial()) + .width(e.getWidth()) + .height(e.getHeight()) + .thickness(e.getThickness()) + .area(e.getHeight().multiply(e.getWidth()).setScale(2, RoundingMode.HALF_UP)) + .count(plateDOS.stream().filter(f -> Objects.equals(f.getGoodsId(), e.getGoodsId())).collect(Collectors.toSet()).size()) + .build()) + .collect(Collectors.toList()); respVO.setPlateInfoList(plateInfoVOS); return respVO; } @@ -180,17 +189,22 @@ public class PlanServiceImpl implements PlanService { @Override public PageResult getPlanPage(PlanPageReqVO pageReqVO) { PageResult planDOPageResult = planMapper.selectPage(pageReqVO); + if (CollectionUtil.isEmpty(planDOPageResult.getList())) { + return new PageResult<>(); + } Set ids = planDOPageResult.getList().stream().map(e -> e.getId()).collect(Collectors.toSet()); - List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX().in(GoodsDO::getOrderNo, ids)); + List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX().in(GoodsDO::getOrderId, ids)); + List plateDOS = plateMapper.selectList(new LambdaQueryWrapperX().in(PlateDO::getGoodsId, goodsDOS.stream().map(e -> e.getGoodsId()).collect(Collectors.toSet()))); PageResult planRespVOPageResult = BeanUtils.toBean(planDOPageResult, PlanRespVO.class); planRespVOPageResult.getList().stream().forEach(e -> { e.setPlateInfoList(goodsDOS.stream() - .filter(f -> Objects.equals(f.getOrderNo(), e.getId())) + .filter(f -> Objects.equals(f.getOrderId(), e.getId())) .map(p -> PlateInfoVO.builder() .width(p.getWidth()) .height(p.getHeight()) .thickness(p.getThickness()) - .area(p.getHeight() * p.getWidth()) + .area(p.getHeight().multiply(p.getWidth()).setScale(2, RoundingMode.HALF_UP)) + .count(plateDOS.stream().filter(f -> Objects.equals(f.getGoodsId(), p.getGoodsId())).collect(Collectors.toSet()).size()) .build()) .collect(Collectors.toList())); }); @@ -206,7 +220,7 @@ public class PlanServiceImpl implements PlanService { .eqIfPresent("customer", pageReqVO.getConsignee()) .eqIfPresent("address", pageReqVO.getConsigneeAddress()) .eqIfPresent("custom_order_no", pageReqVO.getDefaultId()) - .betweenIfPresent("delivery_date" ,new Date[]{pageReqVO.getBeginDate(), pageReqVO.getEndDate()}) + .betweenIfPresent("delivery_date", new Date[]{pageReqVO.getBeginDate(), pageReqVO.getEndDate()}) .isNull("d.order_id") ; @@ -215,8 +229,7 @@ public class PlanServiceImpl implements PlanService { .eqIfPresent(OrderDO::getCustomer, pageReqVO.getConsignee()) .eqIfPresent(OrderDO::getAddress, pageReqVO.getConsigneeAddress()) .eqIfPresent(OrderDO::getCustomOrderNo, pageReqVO.getDefaultId()) - .betweenIfPresent(OrderDO::getDeliveryDate, new Date[]{pageReqVO.getBeginDate(), pageReqVO.getEndDate()}) - ; + .betweenIfPresent(OrderDO::getDeliveryDate, new Date[]{pageReqVO.getBeginDate(), pageReqVO.getEndDate()}); IPage orderDOPageResult = orderMapper.selectOrderPage(page, queryWrapperX); if (CollectionUtil.isEmpty(orderDOPageResult.getRecords())) { @@ -227,10 +240,32 @@ public class PlanServiceImpl implements PlanService { @Override public PageResult getNotPlanPlateListPage(PlateReqPageVO pageVO) { - //todo 获取未排单的板材分页列表 PageDTO page = new PageDTO<>(pageVO.getPageNo(), pageVO.getPageSize()); IPage pageRes = plateMapper.selectPlatePage(page, pageVO.getOrderId(), pageVO.getGoodsId()); return new PageResult(pageRes.getRecords(), pageRes.getTotal()); } + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean addPlate(AddPlateReq req) { + List orderItemDOS = new ArrayList<>(); + List planItemDOS = new ArrayList<>(); + for (AddPlateReq.Obj obj : req.getList()) { + orderItemDOS.add(OrderItemDO.builder() + .planId(req.getPlanId()) + .orderId(obj.getOrderId()) + .dataId(obj.getPlateId()) + .type(1) + .build()); + + planItemDOS.add(PlanItemDO.builder() + .planId(req.getPlanId()) + .itemId(obj.getPlateId()) + .build()); + } + orderItemMapper.insertBatch(orderItemDOS); + planItemMapper.insertBatch(planItemDOS); + return Boolean.TRUE; + } + } \ 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 e1db92408..9225c5a34 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 @@ -14,7 +14,7 @@ and a.order_id = #{orderId} - + and c.id = #{goodsId}