From cc00b46d9a64569fd963ec4891080697948873d4 Mon Sep 17 00:00:00 2001 From: lym <1994302445@qq.com> Date: Thu, 25 Apr 2024 14:46:59 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../util/deviseData/dataTwo/BoardInfo.java | 37 +++++++++++++ .../util/deviseData/dataTwo/Group.java | 24 ++++++++ .../deviseData/dataTwo/IBoardProdInfo.java | 55 ------------------- .../{PartsDetail.java => PartsInfo.java} | 13 +++-- .../util/deviseData/dataTwo/PlateDetail.java | 55 +++++++++++++++---- .../process/ProcessGroupServiceImpl.java | 22 ++++++-- .../service/process/ProcessServiceImpl.java | 17 ++---- 7 files changed, 136 insertions(+), 87 deletions(-) create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/BoardInfo.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/Group.java delete mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IBoardProdInfo.java rename cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/{PartsDetail.java => PartsInfo.java} (74%) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/BoardInfo.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/BoardInfo.java new file mode 100644 index 000000000..274af1353 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/BoardInfo.java @@ -0,0 +1,37 @@ +package com.cf.imes.module.executor.util.deviseData.dataTwo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 板件基本信息 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class BoardInfo { + +// 商品信息 + private String goodsName; //商品名称 + private String goodsNo; // 商品编号 + private Long goodId; // 商品id + + private String material; //材质 + private String color; //颜色 + + private String factory; //商品生产厂商 + private String brand; //商品品牌 + private String model; //商品型号 + private String unit; //商品单位 + + private String spec; //商品规格 + private Double width; + private Double Length; + private Double thickness;//规格-板厚 板厚,成品和开料都是一样的 + private Boolean isTexture; // 有无纹路 + + +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/Group.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/Group.java new file mode 100644 index 000000000..f54c0baa7 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/Group.java @@ -0,0 +1,24 @@ +package com.cf.imes.module.executor.util.deviseData.dataTwo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 加工组信息 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class Group { + + private String name; + + private Double width; + + private Double height; + + 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/IBoardProdInfo.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IBoardProdInfo.java deleted file mode 100644 index 29d29b0e3..000000000 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/IBoardProdInfo.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.cf.imes.module.executor.util.deviseData.dataTwo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - -/** - * 板件基本信息 - */ -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class IBoardProdInfo { - -// 商品信息 - private String goodsNo; // 商品编码 - private String goodsName; //商品名称 - private String goodType; //商品类型,用于筛选是板材还是配件类,可传入文字(需做转换) - private String material; //材质 - private String color; //颜色 - private String factory; //商品生产厂商 - private String brand; //商品品牌 - private String model; //商品型号 - private String spec; //商品规格 - private float thickness;//规格-板厚 板厚,成品和开料都是一样的 - private String unit; //商品单位 - -// 当有板件时就有板件信息 - private float goodsNumber; //产品数量为特殊处理,板件和配件都有数量 - -// 板材中与造型和轮廓无关的信息 - private Long plateId; //板件Id,存入数据库之后的主键 - private Long goodsId;//商品Id,板材所用商品编号 - private String plateNo;//自定义板号 - private String name; //板件名称 - private Integer texture; //纹路 纹路(0正纹1可翻转2反纹) - private Integer typographicFace; //排版面 排钻类型(0正面1反面2随意面) - private Integer openDoorType; //开门类型 0非门板,1左开,2右开,3上翻,4下翻 - private Boolean isRect; //是否为矩形 - - -// 板件开料数据 - //封边数据,矩形存的顺序为左、右、上、下,非矩形存的顺序为从起始点开始,方向为顺时针 - private float[] sealDate; - -// 这里的数据都是矩形板件才有 - private float splitHeight; //开料长 - private float splitWidth; //开料宽 - private float splitThickness; //开料厚度 - -} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PartsDetail.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PartsInfo.java similarity index 74% rename from cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PartsDetail.java rename to cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PartsInfo.java index c1db65869..8d2dd1662 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PartsDetail.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/deviseData/dataTwo/PartsInfo.java @@ -12,18 +12,21 @@ import lombok.NoArgsConstructor; @Builder @AllArgsConstructor @NoArgsConstructor -public class PartsDetail { - // 商品信息 - private String goodsNo; // 商品编码 +public class PartsInfo { +// 商品信息 private String goodsName; //商品名称 - private String goodType; //商品类型,用于筛选是板材还是配件类,可传入文字(需做转换) + private String goodsNo; // 商品编码 + private Long goodId; // 商品id + + private String material; //材质 private String color; //颜色 private String factory; //商品生产厂商 private String brand; //商品品牌 private String model; //商品型号 private String spec; //商品规格 - private float thickness;//规格-板厚 板厚,成品和开料都是一样的 private String unit; //商品单位 + + private float goodsNumber; //产品数量为特殊处理,板件和配件都有数量 } 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 f6937d6cd..3a82bc91f 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 @@ -16,25 +16,56 @@ import java.util.Map; @AllArgsConstructor @NoArgsConstructor public class PlateDetail { -// 柜体成倍拆单的倍数 - private Integer multiNum; +// 板名称 + private String name; +// 板编号 + private String plateNo; +// 自定义板号 + private String customPlateNo; // 板件所属信息 private String roomsName; //房间名称 private String bodyName; //柜体名 - // 柜体信息 长 宽 深 - private float width; - private float height; - private float depth; - // 板材所属加工组 - private List synthesis;// 板件加工组Group的名称,可以有多个 - private String synthesisName;// 加工组中Group中每个小加工组的名称 -// 小板基本信息 - private IBoardProdInfo iBoardProdInfo; +// 柜体成倍拆单的倍数 + private Integer multiNum; + +// 板材所属加工组 + private String group;// 板件加工组Group的名称,可以有多个 +// 加工组具体信息 + private List groupList; + +// 成品长宽、面积 + private Double width; + private Double height; + private Double acreage; + +// 开料长宽、面积 + private Double splitHeight; + private Double splitWidth; + private Double sealAcreage; + +// 是否矩形 + private Boolean isRect; +// 封边,用于矩形 + private Double sealLeft; + private Double sealRight; + private Double sealUp; + private Double sealDown; + + private Integer texture; //纹路 纹路(0正纹1可翻转2反纹) + private Integer typographicFace; //排版面 排钻类型(0正面1反面2随意面) + private Integer openDoorType; //开门类型 0非门板,1左开,2右开,3上翻,4下翻 字典转换 + +// 偏移量 + private Double offsetX; + private Double offsetY; + +// 大板基本信息 + private BoardInfo boardInfo; // 配件基本信息 - private List partsDetail; + private List partsDetail; // 基准位置,用于画图 private BasePosition basePosition; diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java index 33270ca2d..97249aecc 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupServiceImpl.java @@ -91,11 +91,25 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { validateProcessGroupExists(id); ProcessGroupDO processGroup = processGroupMapper.selectById(id); ProcessListSaveReqVO processListSaveReqVO = BeanUtils.toBean(processGroup, ProcessListSaveReqVO.class); - String[] items = processGroup.getItems().split(","); + if (processGroup.getItems() == null) { + return processListSaveReqVO; + } + String[] items = processGroup.getItems().split("(? itemsList = Arrays.stream(items) + .filter(item -> !item.isEmpty()) + .collect(Collectors.toList()); + + System.err.println(itemsList.size()); List lists = new ArrayList<>(); - for (int i = 0; i < items.length; i++) { - if (processMapper.selectById(Long.valueOf(items[i])) != null) - lists.add(BeanUtils.toBean(processMapper.selectById(items[i]), ProcessRespVO.class)); +// 判断items是否为空 + if (itemsList.size() == 0) { + return processListSaveReqVO; + } + for (int i = 0; i < itemsList.size(); i++) { + if (processMapper.selectById(Long.valueOf(itemsList.get(i))) != null) + lists.add(BeanUtils.toBean(processMapper.selectById(itemsList.get(i)), ProcessRespVO.class)); } processListSaveReqVO.setLists(lists); return processListSaveReqVO; diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessServiceImpl.java index e4f0337fd..046b0ac18 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessServiceImpl.java @@ -83,8 +83,10 @@ public class ProcessServiceImpl implements ProcessService { public void updateProcess(ProcessUserSaveReqVO updateReqVO) { // 校验存在 validateProcessExists(updateReqVO.getId()); - // 校验状态 - validateProcessStatus(updateReqVO.getId()); + if (updateReqVO.getIsEnabled()) {//为禁用 + throw exception(PROCESS_STATUS_DISABLE); + } + ProcessDO updateProcess = BeanUtils.toBean(updateReqVO, ProcessDO.class); processUserService.deleteProcessUserByProcess(updateReqVO.getId()); @@ -102,8 +104,8 @@ public class ProcessServiceImpl implements ProcessService { processUserService.createProcessUser(processAndUserSaveReqVO); } } catch (NumberFormatException e) { - // 处理NumberFormatException异常,例如记录日志 - System.err.println("用户ID " + user + " 无法解析为长整型。"); + + throw exception(ERR); } } } @@ -125,13 +127,6 @@ public class ProcessServiceImpl implements ProcessService { } } - private void validateProcessStatus(Long id) { - ProcessDO process = processMapper.selectById(id); - if (process != null && process.getIsEnabled() == Boolean.FALSE) { - throw exception(PROCESS_STATUS_DISABLE); - } - } - @Override public ProcessUserRespVO getProcess(Long id) { // 校验存在