From 24a49e2b9796cb33518d40d56f140234d06e1a84 Mon Sep 17 00:00:00 2001 From: liuzhaotian Date: Tue, 14 May 2024 16:05:35 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E5=8D=95=E6=9D=BF?= =?UTF-8?q?=E4=BB=B6-=E9=80=A0=E5=9E=8B=E4=BF=A1=E6=81=AF=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=B3=A8=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/plate/PlateController.java | 2 +- .../admin/plate/vo/BodyPlateDetailVO.java | 1 + .../util/deviseData/dataTwo/HoleDetail.java | 24 ++++++++++++------ .../util/deviseData/dataTwo/IContourData.java | 8 ++++-- .../dataTwo/IOriginModelingData.java | 25 +++++++++++++------ .../util/deviseData/dataTwo/ModelDetail.java | 25 +++++++++++++------ .../util/deviseData/dataTwo/OffSetList.java | 19 +++++++++----- .../util/deviseData/dataTwo/PlateDetail.java | 1 + .../util/deviseData/dataTwo/PointDetail.java | 8 ++++-- .../util/deviseData/dataTwo/PointList.java | 16 ++++++++---- .../service/process/GroupServiceImplTest.java | 5 +++- 11 files changed, 94 insertions(+), 40 deletions(-) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java index 4f88f226b..8e4bfb876 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java @@ -66,7 +66,7 @@ public class PlateController { @GetMapping("/get") @Operation(summary = "获得生产单板件") - @Parameter(name = "id", description = "编号", required = true, example = "1024") + @Parameter(name = "id", description = "板件ID", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('executor:plate:query')") public CommonResult getPlate(@RequestParam("id") Long id) { PlateDO plate = plateService.getPlate(id); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/BodyPlateDetailVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/BodyPlateDetailVO.java index bf512b47f..59e736057 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/BodyPlateDetailVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/BodyPlateDetailVO.java @@ -17,6 +17,7 @@ import java.util.List; @Builder @AllArgsConstructor @NoArgsConstructor +@Schema(description = "管理后台 - 柜体对应的板件造型信息") public class BodyPlateDetailVO { @Schema(description = "模块id") private Long bodyId; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/HoleDetail.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/HoleDetail.java index 5d8db41bc..01b684a3c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/HoleDetail.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/HoleDetail.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -14,25 +15,32 @@ import lombok.NoArgsConstructor; @NoArgsConstructor public class HoleDetail { - private String holeName;// 孔名称,用于类型相同的孔,进行分组区分,一组的孔名称相同 + @Schema(description = "孔名称,用于类型相同的孔,进行分组区分,一组的孔名称相同") + private String holeName; - private Integer faceType; // 打孔面(0正面, 1反面, 2侧面) - private Integer holeType;// 孔类型(0大孔, 10小孔, 20木削, 21木削大孔, 30层板钉, 40通孔, 50连接杆, -10造型孔) + @Schema(description = "打孔面(0正面, 1反面, 2侧面)") + private Integer faceType; + @Schema(description = "孔类型(0大孔, 10小孔, 20木削, 21木削大孔, 30层板钉, 40通孔, 50连接杆, -10造型孔)") + private Integer holeType; -// 孔的起点坐标 + + @Schema(description = "孔的起点坐标") private Double startX; private Double startY; private Double startZ; -// 打孔的半径 - private Double radius; //孔半径 -// 孔的终点坐标 + @Schema(description = " 打孔的半径-孔半径") + private Double radius; + + + @Schema(description = "孔的终点坐标") private Double endX; private Double endY; private Double endZ; - private Double depth; // 深度 + @Schema(description = "深度") + private Double depth; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IContourData.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IContourData.java index 50ab11f31..6dc6a1e3b 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IContourData.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IContourData.java @@ -1,6 +1,7 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; import com.cf.imes.module.executor.controller.admin.plan.dto.Point; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -19,6 +20,9 @@ import java.util.List; @NoArgsConstructor @Accessors(chain = false) // 设置 chain = false,避免生产单导入有问 public class IContourData { - private List pts; //点集(二维向量(x,y)) - private Double[] buls; //凸度(0直线段 >0逆时针方向 <0顺时针方向) + + @Schema(description = "点集(二维向量(x,y))") + private List pts; // + @Schema(description = "凸度(0直线段 >0逆时针方向 <0顺时针方向)") + private Double[] buls; // } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IOriginModelingData.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IOriginModelingData.java index f6dcef4b5..52e92633c 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IOriginModelingData.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IOriginModelingData.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -18,16 +19,24 @@ import java.util.List; @Accessors(chain = false) // 设置 chain = false,避免生产单导入有问 public class IOriginModelingData { - private float knifeRadius; // 刀半径 + @Schema(description = "刀半径") + private float knifeRadius; - private float thickness;// 厚度 - private Integer dir;// 方向 + @Schema(description = "厚度") + private float thickness; + @Schema(description = "方向") + private Integer dir; - private IContourData outline; // 轮廓,造型最外围的轮廓数据 - private List holes; //孔轮廓 + @Schema(description = "轮廓,造型最外围的轮廓数据") + private IContourData outline; + @Schema(description = "孔轮廓") + private List holes; - private float addLen; // 槽加长 - private float addWidth; // 槽加宽 - private float addDepth; // 槽加深 + @Schema(description = "槽加长") + private float addLen; + @Schema(description = "槽加宽") + private float addWidth; + @Schema(description = "槽加深") + private float addDepth; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/ModelDetail.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/ModelDetail.java index 7ebf2b101..ec5c9e293 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/ModelDetail.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/ModelDetail.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -15,18 +16,28 @@ import java.util.List; @Builder @AllArgsConstructor @NoArgsConstructor +@Schema(description = "管理后台 - 造型信息") public class ModelDetail { - private Integer faceType; //使用字典进行解析 造型排版面 0正面, 1反面, 2侧面 + @Schema(description = "使用字典进行解析 造型排版面 0正面, 1反面, 2侧面") + private Integer faceType; - private Double depth; //造型深度 + @Schema(description = "造型深度") + private Double depth; - private String knifeName; //造像使用刀具名称 - private Double knifeRadius; //刀半径 + @Schema(description = "造像使用刀具名称") + private String knifeName; + @Schema(description = "刀半径") + private Double knifeRadius; - private IOriginModelingData originModeling;//造型数据 - private List pointList; //点列表 - private List offSetList; //偏移量列表 //模块偏移数据 + @Schema(description = "造型数据") + private IOriginModelingData originModeling; + + @Schema(description = "点列表") + private List pointList; + + @Schema(description = "偏移量列表-模块偏移数据") + private List offSetList; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/OffSetList.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/OffSetList.java index 868cc82d7..7a3798f0d 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/OffSetList.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/OffSetList.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -19,13 +20,19 @@ import lombok.experimental.Accessors; public class OffSetList { // 刀路的偏移值 - private Double value; // 刀路的偏倚值 - private Double depth;//下刀的深度 - private Double angle;//角度 + @Schema(description = "刀路的偏倚值") + private Double value; + @Schema(description = "下刀的深度") + private Double depth; + @Schema(description = "角度") + private Double angle; // 二维刀路的属性 - private String name; //刀的名称 - private Double radius;//刀的半径 + @Schema(description = "二维刀路的属性-刀的名称") + private String name; + @Schema(description = "二维刀路的属性-刀的半径") + private Double radius; - private String faceType;// 面向类型(0正面, 1反面, 2侧面) + @Schema(description = "面向类型(0正面, 1反面, 2侧面)") + private String faceType; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PlateDetail.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PlateDetail.java index 5b97dde83..2c65abb98 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PlateDetail.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PlateDetail.java @@ -89,6 +89,7 @@ public class PlateDetail{ private Boolean has3DModel; // 是否有三维刀路 // 轮廓数据、造型数据 + private List pointDetail ; //点明细,表示小板外围轮廓的几个转折点(不含封边) private List rawPointDetail ; //原始点明细(含封边) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointDetail.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointDetail.java index bec4aa651..99aefcbd6 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointDetail.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointDetail.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -17,10 +18,13 @@ import lombok.experimental.Accessors; public class PointDetail { // 点的位置信息 + @Schema(description = "点的位置信息") private Double pointX; private Double pointY; - private Double curve;//曲线 + @Schema(description = "曲线-凸度") + private Double curve; // 点的封边尺寸 - private Double sealSize;//封边尺寸,封边的厚度,长同边长 + @Schema(description = "点的封边尺寸,封边尺寸,封边的厚度,长同边长") + private Double sealSize; } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointList.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointList.java index 362909cdf..c84130058 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointList.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PointList.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.deviseData.dataTwo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -16,16 +17,21 @@ import lombok.experimental.Accessors; @Accessors(chain = false) // 设置 chain = false,避免生产单导入有问 public class PointList { - private Integer lineId;//纹路Id - private Integer pointId;//点Id + @Schema(description = "纹路Id") + private Integer lineId; + @Schema(description = "点Id") + private Integer pointId; -// 点的位置信息 +// + @Schema(description = "点的位置信息") private Double pointX; private Double pointY; private Double pointZ; private Double radius; - private Double curve; // 曲线 - private Double depth; //曲线深度 + @Schema(description = "曲线") + private Double curve; + @Schema(description = "曲线深度") + private Double depth; } diff --git a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/process/GroupServiceImplTest.java b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/process/GroupServiceImplTest.java index 8f90fc9c9..7c16ae80d 100644 --- a/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/process/GroupServiceImplTest.java +++ b/cf-module-system/cf-module-system-biz/src/test/java/com/cf/imes/module/system/service/process/GroupServiceImplTest.java @@ -55,6 +55,7 @@ public class GroupServiceImplTest extends BaseDbUnitTest { ProcessGroupDO group = groupMapper.selectById(groupId); assertPojoEquals(createReqVO, group, "id"); } +} /* @Test public void testUpdateGroup_success() { @@ -147,4 +148,6 @@ public class GroupServiceImplTest extends BaseDbUnitTest { assertPojoEquals(dbGroup, pageResult.getList().get(0)); } -} \ No newline at end of file +} +} + */ \ No newline at end of file From e4859249d3279f550c739e51353c3721e44412bc Mon Sep 17 00:00:00 2001 From: liuzhaotian Date: Wed, 15 May 2024 16:02:54 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E5=8D=95=E6=9D=BF?= =?UTF-8?q?=E4=BB=B6-=E8=8E=B7=E5=BE=97=E7=94=9F=E4=BA=A7=E5=8D=95?= =?UTF-8?q?=E6=9D=BF=E4=BB=B6=E6=8E=A5=E5=8F=A3=E5=8F=82=E6=95=B0=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/plate/PlateController.java | 9 +-- .../admin/plate/vo/PlateDetailReqVO.java | 27 +++++++++ .../admin/plate/vo/PlateDetailRespVO.java | 26 +++++++++ .../admin/plate/vo/PlateRespVO.java | 46 +++++++++++++++ .../dal/mysql/orderItem/OrderItemMapper.java | 4 ++ .../executor/dal/mysql/plate/PlateMapper.java | 2 + .../service/order/OrderInputProcessor.java | 2 - .../executor/service/plate/PlateService.java | 4 +- .../service/plate/PlateServiceImpl.java | 43 +++++++++++++- .../mapper/orderItem/OrderItemMapper.xml | 57 +++++++++++++++++++ .../resources/mapper/plate/PlateMapper.xml | 27 +++++++++ 11 files changed, 237 insertions(+), 10 deletions(-) create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailReqVO.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailRespVO.java diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java index 8e4bfb876..497fd2a5d 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/PlateController.java @@ -66,11 +66,12 @@ public class PlateController { @GetMapping("/get") @Operation(summary = "获得生产单板件") - @Parameter(name = "id", description = "板件ID", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('executor:plate:query')") - public CommonResult getPlate(@RequestParam("id") Long id) { - PlateDO plate = plateService.getPlate(id); - return success(BeanUtils.toBean(plate, PlateRespVO.class)); + public CommonResult> getPlate(@Valid PlateDetailReqVO reqVO) { + + List plate = plateService.getPlate(reqVO); + + return success(plate); } @GetMapping("/page") diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailReqVO.java new file mode 100644 index 000000000..133f7cd85 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailReqVO.java @@ -0,0 +1,27 @@ +package com.cf.imes.module.executor.controller.admin.plate.vo; + + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + + + +@Schema(description = "管理后台 - 查询生产单板件对应详细信息") +@Data +public class PlateDetailReqVO { + + + @Schema(description = "板件 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14195") + private Long plateId; + + @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11087") + private Long orderId; + + @Schema(description = "柜体ID", example = "11087") + private Long bodyId; + + + + + +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailRespVO.java new file mode 100644 index 000000000..00f13ec09 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateDetailRespVO.java @@ -0,0 +1,26 @@ +package com.cf.imes.module.executor.controller.admin.plate.vo; + + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "管理后台 - 生产单的大板-余料板等信息") +@Data +public class PlateDetailRespVO { + + + @Schema(description = "大板数量") + private Long bigPlateNum; + + + @Schema(description = "余料板数量") + private Long remainPlateNum; + + @Schema(description = "排单状态") + private Long planStatus; + + @Schema(description = "用户ID") + private Long companyId; + + +} 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 d06656e01..ccabf8e1b 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 @@ -174,6 +174,52 @@ public class PlateRespVO { @Schema(description = "板材材质") private String material; + + + @Schema(description = "柜体名称") + private String bodyName; + + @Schema(description = "房间名称") + private String roomName; + + + @Schema(description = "生产单明细ID") + private Long itemId; + + @Schema(description = "加工组ID") + private Long processGroupId; + + + @Schema(description = "大板数量") + private Long bigPlateNum; + + @Schema(description = "余料板数量") + private Long remainPlateNum; + + + @Schema(description = "品牌") + private String brand; + + @Schema(description = "用户ID") + private Long companyId; + + @Schema(description = "有纹路") + private String hasTexture; + + @Schema(description = "大板长度") + private BigDecimal bigPlateLength; + + @Schema(description = "大板宽度") + private BigDecimal bigPlateWidth; + + @Schema(description = "规格") + private String spec; + + @Schema(description = "排单状态") + private Long planStatus; + + + @Schema(description = "小板详情列表") private List plateDetailList; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java index 38a638bc5..2be3b749a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java @@ -5,6 +5,7 @@ import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderModuleRespVO; import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderPlatesDetailRespVO; import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRespVO; +import com.cf.imes.module.executor.controller.admin.plate.vo.PlateDetailReqVO; import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO; import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; import com.cf.imes.module.executor.dal.dataobject.orderModuleExtra.OrderModuleExtraDO; @@ -27,4 +28,7 @@ public interface OrderItemMapper extends BaseMapperX { List selectPartsByOrderId(@Param("orderId") Long orderId); + + + List selectPlateList(PlateDetailReqVO reqVO); } \ 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/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 a7ae96153..dd3ba9b7d 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 @@ -92,4 +92,6 @@ public interface PlateMapper extends BaseMapperX { IPage selectProductList(@Param("page") IPage page , @Param("orderId")Long orderId, @Param("roomId")Long roomId , @Param("bodyId")Long bodyId); Set selectBatchOrderIdsAndGoodsIds(@Param("itemList") List itemList); + + PlateDetailRespVO selectPlateNumList(PlateDetailReqVO reqVO); } \ 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/order/OrderInputProcessor.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderInputProcessor.java index f4c12da79..e25c5a509 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderInputProcessor.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderInputProcessor.java @@ -386,6 +386,4 @@ public class OrderInputProcessor { } } - - } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateService.java index c1ce4231d..403414730 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateService.java @@ -41,10 +41,10 @@ public interface PlateService { /** * 获得生产单板件 * - * @param id 编号 + * @param * @return 生产单板件 */ - PlateDO getPlate(Long id); + List getPlate(PlateDetailReqVO reqVO); /** * 获得生产单板件分页 diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java index 56f4bdb63..898feac0d 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plate/PlateServiceImpl.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.service.plate; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; import co.elastic.clients.elasticsearch.ElasticsearchClient; @@ -15,6 +16,8 @@ import com.cf.imes.framework.common.exception.ServiceException; import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil; import com.cf.imes.framework.es.core.service.ESDocumentService; import com.cf.imes.framework.mybatis.core.query.MPJLambdaWrapperX; +import com.cf.imes.framework.security.core.LoginUser; +import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils; import com.cf.imes.module.executor.controller.admin.goods.vo.GoodsSaveReqVO; import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO; @@ -103,8 +106,36 @@ public class PlateServiceImpl implements PlateService { } @Override - public PlateDO getPlate(Long id) { - return plateMapper.selectById(id); + public List getPlate(PlateDetailReqVO reqVO) { + + // 获取到当前登录用户的信息 + LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); + + // 查询生产单下的大板。余料板,排单状态的信息 + PlateDetailRespVO plateDetailRespVO = plateMapper.selectPlateNumList(reqVO); + plateDetailRespVO.setCompanyId(loginUser.getId()); + +// PlateRespVO plateRespVO = BeanUtil.toBean(plateDetailRespVO, PlateRespVO.class); + + // 查询生产单下的板材详细信息 + List plateRespVOS = orderItemMapper.selectPlateList(reqVO); + +// List plateRespVOS2 = plateRespVOS +// .stream() +// .map(item -> BeanUtil.toBean(plateDetailRespVO, PlateRespVO.class)) +// .collect(Collectors.toList()); + + // 将大板等信息循环插入 + for (PlateRespVO respVO : plateRespVOS) { + respVO.setCompanyId(plateDetailRespVO.getCompanyId()); + respVO.setPlanStatus(plateDetailRespVO.getPlanStatus()); + respVO.setBigPlateNum(plateDetailRespVO.getBigPlateNum()); + respVO.setRemainPlateNum(plateDetailRespVO.getRemainPlateNum()); + } + + return plateRespVOS; + + } @Override @@ -198,6 +229,14 @@ public class PlateServiceImpl implements PlateService { private List buildRespByPlateIds(Collection plateIds, String index) { + // + + +// // 使用Stream API将 Collection 转换成 Collection +// Collection stringPlateIds = plateIds.stream() +// .map(String::valueOf) // 将Long类型的元素转换成String类型 +// .collect(Collectors.toList()); // 收集到一个新的List中 + List fieldValues = plateIds.stream().map(FieldValue::of).toList(); SearchRequest.Builder builder = new SearchRequest.Builder(); builder.index(index); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml index 9acaaefc7..335d88dba 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml @@ -42,4 +42,61 @@ RIGHT JOIN `order_parts` p ON i.parts_id = p.id WHERE i.order_id = #{orderId} + + + + + + + + + + + + + + + + + + + \ 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 d2e13922e..2402a5083 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 @@ -84,4 +84,31 @@ (#{item.orderId},#{item.goodsId}) + + + + + + + + + + + + + + \ No newline at end of file From 48e6f36719bf8e6e670d1e9bf33b990fb2a2dbc5 Mon Sep 17 00:00:00 2001 From: liuzhaotian Date: Fri, 17 May 2024 17:45:45 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8E=92=E5=8D=95-?= =?UTF-8?q?=E7=94=9F=E4=BA=A7=E5=8D=95=E5=85=A8=E9=83=A8=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/admin/plan/bo/OrderSource.java | 5 +- .../admin/plan/vo/PlateDetialRespVO.java | 93 +++++++++++++++++++ .../executor/dal/mysql/plate/PlateMapper.java | 10 +- .../optimizeplan/OptimizePlanServiceImpl.java | 10 +- .../resources/mapper/plate/PlateMapper.xml | 49 ++++++++++ 5 files changed, 157 insertions(+), 10 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/PlateDetialRespVO.java diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/bo/OrderSource.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/bo/OrderSource.java index 34ab6983c..33570e49e 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/bo/OrderSource.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/bo/OrderSource.java @@ -1,6 +1,7 @@ package com.cf.imes.module.executor.controller.admin.plan.bo; import com.cf.imes.module.executor.controller.admin.plan.vo.OptimizeParamRespVO; +import com.cf.imes.module.executor.controller.admin.plan.vo.PlateDetialRespVO; import com.cf.imes.module.executor.controller.admin.plate.vo.PlateDetailVO; import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; @@ -34,11 +35,11 @@ public class OrderSource { @Schema(description = "生产单列表") private List orderList; - @Schema(description = "商品板材列表") + @Schema(description = "板材-大板列表") private List goodsList; @Schema(description = "小板列表") - private List plateList; + private List plateList; @Schema(description = "小板造型列表") private List plateModels; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateDetialRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateDetialRespVO.java new file mode 100644 index 000000000..a1356bb23 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlateDetialRespVO.java @@ -0,0 +1,93 @@ +package com.cf.imes.module.executor.controller.admin.plan.vo; + + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.math.BigDecimal; + +@Schema(description = "管理后台 - 生产单板件 Response VO") +@Data +public class PlateDetialRespVO { + + @Schema(description = "板件ID", requiredMode = Schema.RequiredMode.REQUIRED) + private Long id; + + @Schema(description = "房间名称", requiredMode = Schema.RequiredMode.REQUIRED) + private String roomName; + + + @Schema(description = "柜体名称", requiredMode = Schema.RequiredMode.REQUIRED) + private String bodyName; + + @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED) + private String orderId; + + @Schema(description = "商品ID", requiredMode = Schema.RequiredMode.REQUIRED) + private Long goodsId; + + + @Schema(description = "板编号", requiredMode = Schema.RequiredMode.REQUIRED) + private String plateNo; + + + @Schema(description = "板名称", requiredMode = Schema.RequiredMode.REQUIRED) + private String name; + + + @Schema(description = "板长", requiredMode = Schema.RequiredMode.REQUIRED) + private Double height; + + @Schema(description = "板宽", requiredMode = Schema.RequiredMode.REQUIRED) + private Double width; + + @Schema(description = "板厚", requiredMode = Schema.RequiredMode.REQUIRED) + private Double thickness; + + @Schema(description = "是否异性-是否弧形地脚,不处理异形", requiredMode = Schema.RequiredMode.REQUIRED) + private Boolean isSpecialShaped; + + @Schema(description = "左封边厚度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal sealLeft; + + @Schema(description = "右封边厚度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal sealRight; + + @Schema(description = "上封边厚度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal sealUp; + + @Schema(description = "下封边厚度", requiredMode = Schema.RequiredMode.REQUIRED) + private BigDecimal sealDown; + + @Schema(description = "纹路类型,0 正纹 1 可翻转 2 反纹", requiredMode = Schema.RequiredMode.REQUIRED) + private Integer texture; + + + @Schema(description = "异型偏移 x", requiredMode = Schema.RequiredMode.REQUIRED) + private Double offsetX; + + @Schema(description = "异型偏移 y", requiredMode = Schema.RequiredMode.REQUIRED) + private Double offsetY; + + + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对") + private String remark; + + + @Schema(description = "板类型,0 层板 1 立板 2 背板", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + private Integer type; + + + @Schema(description = "加工组名称", requiredMode = Schema.RequiredMode.REQUIRED) + private String processGroupName; + + @Schema(description = "开门类型,0 无 1 左 2 右 3 上 4 下", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + private Integer openDoorType; + + + @Schema(description = "生产单明细ID", requiredMode = Schema.RequiredMode.REQUIRED) + private Long itemId; + + + +} 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 dd3ba9b7d..7b413c9be 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 @@ -10,10 +10,7 @@ import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.util.object.BeanUtils; 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.PlanSaveReqVO; -import com.cf.imes.module.executor.controller.admin.plan.vo.PlatePage; -import com.cf.imes.module.executor.controller.admin.plan.vo.PlateParam; -import com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList; +import com.cf.imes.module.executor.controller.admin.plan.vo.*; 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.*; @@ -94,4 +91,9 @@ public interface PlateMapper extends BaseMapperX { Set selectBatchOrderIdsAndGoodsIds(@Param("itemList") List itemList); PlateDetailRespVO selectPlateNumList(PlateDetailReqVO reqVO); + + List selectPlateDetialList(@Param("orderId") Long orderId); + + + List selectPlateDetialListByIds(@Param("orderIds") Set orderIds); } \ 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/optimizeplan/OptimizePlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java index c9c4a2466..5bbe8b170 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java @@ -304,10 +304,10 @@ public class OptimizePlanServiceImpl implements OptimizePlanService { List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX() .eq(GoodsDO::getOrderId, orderId) ); - List plateDOS = plateMapper.selectList(new LambdaQueryWrapperX() - .eq(PlateDO::getOrderId, orderId) - ); + List plateDOS = plateMapper.selectPlateDetialList(orderId); + List orderModelDOS = buildRespByOrderId(orderId, ORDER_PLATE_MODEL); + orderSource.setOrderList(Collections.singletonList(orderDO)); orderSource.setPlateList(plateDOS); orderSource.setGoodsList(goodsDOS); @@ -333,7 +333,9 @@ public class OptimizePlanServiceImpl implements OptimizePlanService { Set orderIds = orderItemDOS.stream().map(OrderItemDO::getOrderId).collect(Collectors.toSet()); List orderDOS = orderMapper.selectBatchIds(orderIds); List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX().in(GoodsDO::getOrderId, orderIds)); - List plateDOS = plateMapper.selectList(new LambdaQueryWrapperX().in(PlateDO::getOrderId, orderIds)); + + List plateDOS = plateMapper.selectPlateDetialListByIds(orderIds); + List orderModelDOS = buildRespByOrderIds(orderIds, ORDER_PLATE_MODEL); return OrderSource.builder() .orderList(orderDOS) 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 2402a5083..84254de21 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 @@ -111,4 +111,53 @@ + + + + + + + + + + + + + + + + \ No newline at end of file