diff --git a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java index 26c055a4a..2eb4f9453 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java +++ b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java @@ -50,8 +50,9 @@ public interface ErrorCodeConstants { ErrorCode ORDER_BODY_NOT_EXISTS = new ErrorCode(1_002_029_004, "此生产单中柜体并不存在不存在"); ErrorCode RAW_GOODS_NOT_EXISTS = new ErrorCode(1_002_029_005, "生产单中未用到此板材"); ErrorCode ORDER_STATUS_ERROR = new ErrorCode(1_002_029_006, "生产单不允许删除"); - ErrorCode APP_TOKEN_ERROR = new ErrorCode(1_002_029_006, "token获取失败"); - ErrorCode PLATE_DATA_ERROR = new ErrorCode(1_002_029_006, "板材数据获取错误"); - ErrorCode PARTS_DATA_ERROR = new ErrorCode(1_002_029_006, "配件数据获取错误"); - ErrorCode BODY_DATA_ERROR = new ErrorCode(1_002_029_006, "柜体数据获取错误"); + ErrorCode APP_TOKEN_ERROR = new ErrorCode(1_002_029_007, "token获取失败"); + ErrorCode PLATE_DATA_ERROR = new ErrorCode(1_002_029_008, "板材数据获取错误"); + ErrorCode PARTS_DATA_ERROR = new ErrorCode(1_002_029_009, "配件数据获取错误"); + ErrorCode BODY_DATA_ERROR = new ErrorCode(1_002_029_010, "柜体数据获取错误"); + ErrorCode GOODS_DATA_ERROR = new ErrorCode(1_002_029_011, "商品信息获取错误"); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/order/OrderDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/order/OrderDO.java index 28dc7f51d..979b9e10a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/order/OrderDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/order/OrderDO.java @@ -50,7 +50,7 @@ public class OrderDO extends OrganBaseDO { */ private Integer orderSort; /** - * CAD数据类型,1CAD 2WebCAD 3Excel + * 数据类型,1文件导入 2API 3数据源 */ private Integer dataType; /** 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 a09365d3b..890172431 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 @@ -162,6 +162,14 @@ public class PlateDO extends BaseDO { * 模块类型 ID */ private Long moduleTypeId; + /** + * 是否异性 + */ + private Boolean isSpecialShaped; + /** + * 是否造型 + */ + private Boolean isSculpt; /** * 排单过滤类型,1 有挖穿造型 2 有挖穿孔 4 有二维刀路 8 可叠 */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/ApiOrderService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/ApiOrderService.java index 5a3f86c38..6bbea1c7b 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/ApiOrderService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/ApiOrderService.java @@ -21,4 +21,7 @@ public interface ApiOrderService { @RequestMapping(value = "/Api-erpOrders-boxsList",method = RequestMethod.POST) JSONObject getApiOrderBodyMessage(@RequestParam("token") String token, @RequestBody JSONObject json); + @RequestMapping(value = "/Api-erpOrders-goodsList",method = RequestMethod.POST) + JSONObject getApiOrderGoodsMessage(@RequestParam("token") String token, @RequestBody JSONObject json); + } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java index ec651e1a1..be4852b21 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java @@ -429,8 +429,26 @@ public class OrderServiceImpl implements OrderService { JSONObject value = apiOrderService.getApiOrderPartsMessage(token, jsonBody).getJSONObject("value"); mergeJSONObjects(dataBody, value); } +// 商品信息转换 + JSONObject jsonGoods = new JSONObject(); + jsonGoods.put("curr_page", 1); + jsonGoods.put("page_count", PARTS_PAGE_MAX); + jsonGoods.put("order_no", orderNo); + JSONObject goods = apiOrderService.getApiOrderGoodsMessage(token, jsonGoods); + if (!goods.getString("err_code").equals("0")) { + throw exception(GOODS_DATA_ERROR); + } + JSONObject dataGoods = new JSONObject(); + for (int i = 1; i <= dataGoods.getJSONObject("value").getInteger("PageCount"); i++) { + jsonParts.put("curr_page", i); + JSONObject value = apiOrderService.getApiOrderGoodsMessage(token, jsonGoods).getJSONObject("value"); + mergeJSONObjects(dataGoods, value); + } // 转换 - List plateDetails = (List) apiTypeChangeRealize.apiPlateDataChange(dataPlates.getJSONObject("value"),dataParts,dataBody); + List plateDetails = (List) apiTypeChangeRealize.apiPlateDataChange(dataPlates.getJSONObject("value"),dataParts,dataBody,dataGoods); +// order_raw_goods List +// List boardInfos = BeanUtils.toBean(apiTypeChangeRealize.goodsInfoChange(dataGoods), RawGoodsDO.class); + System.out.println(plateDetails); return null; } 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 index 274af1353..3dadd3c87 100644 --- 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 @@ -16,7 +16,7 @@ public class BoardInfo { // 商品信息 private String goodsName; //商品名称 - private String goodsNo; // 商品编号 + private String goodsNo; // 商品编号 商品信息中的GoodsID private Long goodId; // 商品id private String material; //材质 @@ -28,10 +28,13 @@ public class BoardInfo { private String unit; //商品单位 private String spec; //商品规格 + private Double height; private Double width; - private Double Length; + private Double length; private Double thickness;//规格-板厚 板厚,成品和开料都是一样的 private Boolean isTexture; // 有无纹路 + private Double price; + } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeChangeRealize.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeChangeRealize.java index 0e51a454a..9a17d288a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeChangeRealize.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeChangeRealize.java @@ -3,15 +3,25 @@ package com.cf.imes.module.executor.util.fileConversion.admin.api.webcad; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; +import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; +import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO; +import com.cf.imes.module.executor.dal.dataobject.orderGroup.OrderGroupDO; +import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; +import com.cf.imes.module.executor.dal.dataobject.orderModuleExtra.OrderModuleExtraDO; +import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO; +import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO; +import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO; import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO; import com.cf.imes.module.executor.util.deviseData.dataTwo.*; +import com.cf.imes.module.system.api.dict.DictDataApi; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.math.BigDecimal; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -31,93 +41,13 @@ public class ApiTypeChangeRealize { @Resource private IdentifierGenerator identifierGenerator; - public List apiPlateDataChange(JSONObject dataPlates, JSONObject dataParts, JSONObject dataBody) { + @Resource + private DictDataApi dictDataApi; -// 配件数据分类 - List partsInfos = partsInfoChange(dataParts); - Map> partsMap = partsInfos.stream() - .collect(Collectors.groupingBy( - partsInfo -> partsInfo.getBodyNo() != null ? partsInfo.getBodyNo() : " ", - Collectors.toList() - )); -// 柜体信息 - List bodyInfos = bodyInfoChange(dataBody); - Map> bodyMap = bodyInfos.stream() - .collect(Collectors.groupingBy( - bodyInfo -> bodyInfo.getBodyNo() != null ? bodyInfo.getBodyNo() : " ", - Collectors.toList() - )); -// 放入板材 - List plateDetails = platesInfoChange(dataPlates); - for (PlateDetail plateDetail : plateDetails) { - if (partsMap.get(plateDetail.getBodyNo()) != null) { - plateDetail.setPartsInfos(partsMap.get(plateDetail.getBodyNo())); - } - if (bodyMap.get(plateDetail.getBodyNo()) != null) { - BodyInfo bodyInfo = bodyMap.get(plateDetail.getBodyNo()).get(0); - plateDetail.setRoomsName(bodyInfo.getRoomsName()).setRoomNo(bodyInfo.getRoomNo()) - .setBodyName(bodyInfo.getBodyName()).setBodyNo(bodyInfo.getBodyNo()) - .setWidth(bodyInfo.getWidth()).setHeight(bodyInfo.getHeight()).setDepth(bodyInfo.getDepth()); - } - } -// 生产单信息获取 - OrderDO orderDO = orderInfoChange(dataPlates); - Long orderId = orderDO.getId();// 生产单id + public Map> apiPlateDataChange(JSONObject dataPlates, JSONObject dataParts, JSONObject dataBody, JSONObject dataGoods) { - return plateDetails; - } - - private List bodyInfoChange(JSONObject dataBody) { - List bodyInfos = new ArrayList<>(); - - dataBody.getJSONArray("List").forEach(item -> { - JSONObject body = (JSONObject) item; - BodyInfo bodyInfo = BodyInfo.builder() - .roomsName(body.getString("Room")) - .roomNo(body.getString("RoomID")) - .bodyName(body.getString("Name")) - .bodyNo(body.getString("BoxID")) - .width(body.getDouble("Width")) - .height(body.getDouble("Height")) - .depth(body.getDouble("Depth")) - .build(); - bodyInfos.add(bodyInfo); - }); - return bodyInfos; - } - - // 生产单信息获取 - public OrderDO orderInfoChange(JSONObject dataPlates) { - List plateDetails = new ArrayList<>(); - // 获取 Orders 字段对应的数组 - JSONObject order = dataPlates.getJSONObject("Orders"); - - // 如果 Orders 数组不为空,则获取第一个订单对象 - if (order != null && !order.isEmpty()) { - // 获取生产单信息 - // 使用 DateTimeFormatter 解析日期字符串 - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - LocalDate deliveryDate = LocalDate.parse(order.getString("DeliveryDate"), formatter); - - OrderDO orderDO = OrderDO.builder() - .id(identifierGenerator.nextId(null).longValue()) - .parentNo(0L) - .orderType(true) - .orderSort(0) - .dataType(1) - .status(0) - .customOrderNo(order.getString("OrderNo")) - .customer(order.getString("Consigee")) - .address(order.getString("ConsigeeAddress")) - .phoneNumber(order.getString("ConsigeePhone")) - .dealer(order.getString("CustomName")) - .salesman(order.getString("SalePerson")) - .remark(order.getString("Remark")) - .deliveryDate(deliveryDate.atStartOfDay()) - .build(); - return orderDO; - } - return null; + Map> map = new HashMap<>(); + return map; } // 板材数据转换 @@ -127,30 +57,106 @@ public class ApiTypeChangeRealize { JSONArray ordersArray = dataPlates.getJSONArray("Orders"); // 如果 Orders 数组不为空,则获取第一个订单对象 + Map>> goodsMap = new HashMap<>(); if (ordersArray != null && !ordersArray.isEmpty()) { - // 获取生产单信息 - List rawGoodsDOS = new ArrayList<>(); for (int i = 0; i < ordersArray.size(); i++) { +// Map> orderMap = new HashMap<>(); + JSONObject order = ordersArray.getJSONObject(i); + // 生产单信息 + Long orderId = (Long) identifierGenerator.nextId(null); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + LocalDate orderDate = LocalDate.parse(order.getString("SaleDate"), formatter); + LocalDate deliveryDate = LocalDate.parse(order.getString("DeliveryDate"), formatter); + OrderDO orderDO = OrderDO.builder() + .id(orderId) + .orderDate(orderDate.atStartOfDay()) + .dataType(2) + .customOrderNo(order.getString("CustomOrderNo")) + .deliveryDate(deliveryDate.atStartOfDay()) + .dealer(order.getString("CustomName")) + .salesman(order.getString("salesman")) + .customer(order.getString("Consigee")) + .phoneNumber(order.getString("ConsigeePhone")) + .address(order.getString("ConsigeeAddress")) + .remark(order.getString("Remark")) + .build(); + // 获取材料信息 if (order.getJSONArray("Materials") != null && !order.getJSONArray("Materials").isEmpty()) { + List goodsDOS = new ArrayList<>(); for (int j = 0; j < order.getJSONArray("Materials").size(); j++) { JSONObject material = order.getJSONArray("Materials").getJSONObject(j); -// rawGoodsDOS.add(RawGoodsDO.builder() -// .id(identifierGenerator.nextId(null).longValue()) -// .orderId(organId) -// .goodsName(material.getString("MaterialName")) -// .material(material.getString("MaterialName")) -// .color(material.getString("Color")) -// .brand(material.getString("Brand")) -// .price(material.getDouble("Price")) -// .spec(material.getString("Spec")) -// .unit(material.getString("Unit")) -// .build()); + Long goodsId = (Long) identifierGenerator.nextId(null); + GoodsDO goodsDO = GoodsDO.builder() + .id(goodsId) + .orderId(orderId) + .goodsId(Long.valueOf(material.getString("GoodsID"))) + .goodsName(material.getString("Name")) + .material(material.getString("Material")) + .color(material.getString("Color")) + .width(BigDecimal.valueOf(material.getDouble("Width"))) + .height(BigDecimal.valueOf(material.getDouble("Length"))) + .thickness(BigDecimal.valueOf(material.getDouble("Thickness"))) + .brand(material.getString("Brand")) + .spec(material.getString("Specification")) + .build(); + goodsDOS.add(goodsDO); + // 板件信息 if (material.getJSONArray("Blocks") != null && !material.getJSONArray("Blocks").isEmpty()) { + List orderPartsDOS = new ArrayList<>(); for (int k = 0; k < material.getJSONArray("Blocks").size(); k++) { JSONObject block = material.getJSONArray("Blocks").getJSONObject(k);// 每块板 + Long plateId = (Long) identifierGenerator.nextId(null); +// 字典转换板类型 + Integer type = Integer.valueOf(dictDataApi.parseDictData("order_plate_type", + block.getJSONObject("ExtraRemark").getJSONObject("extra").getString("boardType")) + .getData().getValue()); + PlateDO orderPartsDO = PlateDO.builder() + .id(plateId) + .goodsId(String.valueOf(goodsId)) + .orderId(orderId) + .name(block.getString("BlockName")) + .plateNo(block.getString("CustomNo")) + .type(type) + .width(BigDecimal.valueOf(block.getDouble("Width"))) + .height(BigDecimal.valueOf(block.getDouble("Length"))) + .thickness(BigDecimal.valueOf(0)) + .splitWidth(BigDecimal.valueOf(block.getDouble("CuttingWidth"))) + .splitHeight(BigDecimal.valueOf(block.getDouble("CuttingLength"))) + .splitThickness(BigDecimal.valueOf(0)) + .sealLeft(BigDecimal.valueOf(block.getDouble("BorderLeft"))) + .sealRight(BigDecimal.valueOf(block.getDouble("BorderRight"))) + .sealUp(BigDecimal.valueOf(block.getDouble("BorderUpper"))) + .sealDown(BigDecimal.valueOf(block.getDouble("BorderUnder"))) + .area(BigDecimal.valueOf(block.getDouble("Size"))) + + .texture(0) + .holeFace(0) + .holeArrange(0) + .unregularPointCount(0) + .frontHoleCount(0) + .frontModelCount(0) + .backHoleCount(0) + .sideHoleCount(0) + .backModelCount(0) + + .isDoor(block.getInteger("OpenDoorType") == 0 ? false : true) + .openDoorType(block.getInteger("OpenDoorType")) + .offsetX(block.getDouble("OffsetX")) + .offsetY(block.getDouble("OffsetY")) + + .isArcAcross(false) + .moduleTypeId(0L) + + .isSpecialShaped(false) + .isCancel(false) + + .filterType(0) + .remark(remarkToMap(block).toString()) + .isCancel(false) + .build(); PlateDetail plateDetail = PlateDetail.builder() .bodyNo(block.getString("BoxNo")) @@ -161,7 +167,7 @@ public class ApiTypeChangeRealize { .bodyName(block.getString("BoxName")) .group(block.getString("ProcessGroupName")) .multiNum(1) - .groupList(getProcessGroup(block)) +// .groupList(getProcessGroup(block)) .plateWidth(Double.valueOf(block.getString("Width"))) .plateLength(Double.valueOf(block.getString("Length"))) .acreage(Double.valueOf(block.getString("Size"))) @@ -198,6 +204,7 @@ public class ApiTypeChangeRealize { System.out.println("plateDetail " + plateDetail); } } + } } @@ -211,50 +218,32 @@ public class ApiTypeChangeRealize { return plateDetails; } - // 配件信息转换 - public List partsInfoChange(JSONObject value) { - List partsInfos = new ArrayList<>(); + // 柜体信息转换 + private List bodyInfoChange(JSONObject dataBody) { + List bodyInfos = new ArrayList<>(); - if (value != null && !value.isEmpty()) { - JSONArray partsLists = value.getJSONArray("List"); - for (int i = 0; i < partsLists.size(); i++) { - JSONObject parts = partsLists.getJSONObject(i); - PartsInfo partsInfo = PartsInfo.builder() - .id(parts.getString("DataID")) - .name(parts.getString("Name")) - .roomName(parts.getString("RoomName")) - .bodyName(parts.getString("BoxName")) - .bodyNo(parts.getString("BoxID")) - .multiNum(Integer.valueOf(parts.getString("MultiNum"))) - .goodsNo(parts.getString("GoodsNo")) - .goodId(Long.valueOf(parts.getString("GoodsID"))) - .material(parts.getString("material")) - .color(parts.getString("color")) - .factory(parts.getString("Factory")) - .brand(parts.getString("Brand")) - .model(parts.getString("Model")) - .unit(parts.getString("Units")) - .price(parts.getDouble("Price")) - .isComposite(Boolean.valueOf(parts.getString("IsComposite"))) - .groupName(parts.getString("GroupName")) - .objectType(parts.getString("ObjectType")) - .objectSpecExtras(parts.getString("SpecExtras")) - .goodsNumber(Double.valueOf(parts.getString("GoodsNumber"))) - .doorRemark(parts.getString("DoorRemark")) - .hingeRemark(parts.getString("HingeRemark")) - .specialRemark(parts.getString("SpecialRemark")) - .remark(parts.getString("Remark")) - .processGroup(parts.getString("ProcessGroup")) - .build(); - } - } - System.out.println(" partsInfos " + partsInfos); - return partsInfos; + dataBody.getJSONArray("List").forEach(item -> { + JSONObject body = (JSONObject) item; + OrderBodyDO bodyInfo = OrderBodyDO.builder() + .id(Long.valueOf(body.getString("BoxID")))// 差一个BoxID,没有对应的 + .roomId(Long.valueOf(body.getString("RoomID"))) + .roomName(body.getString("Room")) + .name(body.getString("Name")) + + .width(body.getDouble("Width")) + .height(body.getDouble("Height")) + .depth(body.getDouble("Depth")) + .build(); + bodyInfos.add(bodyInfo); + + + }); + return bodyInfos; } // 加工组信息筛选 - private List getProcessGroup(JSONObject block) { - List groupList = new ArrayList<>(); + private List getProcessGroup(JSONObject block) { + List groupList = new ArrayList<>(); if (block.getJSONObject("ExtraRemark") != null && !block.getJSONObject("ExtraRemark").isEmpty()) { JSONObject extraRemark = block.getJSONObject("ExtraRemark"); if (extraRemark.getJSONObject("extra") != null && !extraRemark.getJSONObject("extra").isEmpty()) { @@ -262,7 +251,8 @@ public class ApiTypeChangeRealize { if (extra.getJSONArray("processList") != null && !extra.getJSONArray("processList").isEmpty()) { for (int i = 0; i < extra.getJSONArray("processList").size(); i++) { JSONObject process = extra.getJSONArray("processList").getJSONObject(i); - Group group = Group.builder() + OrderGroupDO group = OrderGroupDO.builder() +// .id .name(process.getString("name")) .width(Double.valueOf(process.getJSONObject("size").getString("width"))) .height(Double.valueOf(process.getJSONObject("size").getString("height"))) @@ -276,7 +266,7 @@ public class ApiTypeChangeRealize { } } - return null; + return groupList; } // 异形板的开料轮廓 (type 为1,不含封边;其他为,含封边) diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/ProcessGroupController.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/ProcessGroupController.java index c92d7b65c..ed841410b 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/ProcessGroupController.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/process/ProcessGroupController.java @@ -47,8 +47,6 @@ public class ProcessGroupController { @Resource private ProcessGroupService processGroupService; - @Resource - private ProcessService processService; @PostMapping("/create") @Operation(summary = "创建工序组") @@ -92,6 +90,14 @@ public class ProcessGroupController { return success(BeanUtils.toBean(pageResult, ProcessGroupRespVO.class)); } + @GetMapping({"/list-all-simple","/simple-list"}) + @Operation(summary = "获得工序组全部") + @Parameter(name = "name", description = "工序组名称", required = false, example = "xxx") + @PreAuthorize("@ss.hasPermission('system:process-group:query')") + public CommonResult> getProcessGroupAll(@RequestParam(required = false, value = "name") String name) { + return success(processGroupService.getProcessGroupList(name)); + } + @GetMapping("/export-excel") @Operation(summary = "导出工序组表") @PreAuthorize("@ss.hasPermission('system:process-group:export')") diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupService.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupService.java index 242acbfb7..fcc1ef45e 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupService.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/process/ProcessGroupService.java @@ -2,12 +2,14 @@ package com.cf.imes.module.system.service.process; import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupPageReqVO; +import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupRespVO; import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupSaveReqVO; import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessListSaveReqVO; import com.cf.imes.module.system.dal.dataobject.process.ProcessGroupDO; import com.cf.imes.framework.common.pojo.PageResult; import javax.validation.Valid; +import java.util.List; /** * 工序组表 process_group Service 接口 @@ -54,4 +56,5 @@ public interface ProcessGroupService { */ PageResult getProcessGroupPage(ProcessGroupPageReqVO pageReqVO); + List getProcessGroupList(String name); } \ No newline at end of file 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 7ffecdba9..57c91ba91 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 @@ -1,10 +1,14 @@ package com.cf.imes.module.system.service.process; +import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.organ.core.context.OrganContextHolder; +import com.cf.imes.module.system.controller.admin.organ.vo.organ.OrganSimpleRespVO; import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupPageReqVO; +import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupRespVO; import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupSaveReqVO; import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessListSaveReqVO; import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessRespVO; +import com.cf.imes.module.system.dal.dataobject.organ.OrganizationDO; import com.cf.imes.module.system.dal.mysql.process.ProcessMapper; import org.jetbrains.annotations.NotNull; import org.springframework.stereotype.Service; @@ -117,7 +121,16 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { @Override public PageResult getProcessGroupPage(ProcessGroupPageReqVO pageReqVO) { - return processGroupMapper.selectPage(pageReqVO); + return processGroupMapper.selectPage(pageReqVO.setOrganId(OrganContextHolder.getOrganId())); + } + + @Override + public List getProcessGroupList(String name) { + List processGroupDOList = processGroupMapper.selectList(new LambdaQueryWrapperX() + .likeIfPresent(ProcessGroupDO::getName, name) + .eq(ProcessGroupDO::getOrganId, OrganContextHolder.getOrganId()) + .select(ProcessGroupDO::getId, ProcessGroupDO::getName)); + return BeanUtils.toBean(processGroupDOList, ProcessGroupRespVO.class); } @@ -172,7 +185,7 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { return itemsBuilder.length() > 0 ? itemsBuilder.toString() : "[]"; } -// 批量更新工序组默认 + // 批量更新工序组默认 public void updateProcessGroupIsDefault(Long processGroupId, Long organId) { processGroupMapper.updateIsDefault(processGroupId, organId); }