From 4fdceb11c4670dedb3417f7e4d9e3102fc412d40 Mon Sep 17 00:00:00 2001 From: lym <1994302445@qq.com> Date: Fri, 21 Jun 2024 11:57:07 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E4=BB=B6=E6=88=90=E5=80=8D=E3=80=81?= =?UTF-8?q?=E5=A4=9A=E5=B7=A5=E5=BA=8F=E7=BB=84=E3=80=81sql=E8=AF=AD?= =?UTF-8?q?=E5=8F=A5=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/rpc/LoginUserRequestInterceptor.java | 4 + .../api/orderProcess/OrderProcessApi.java | 6 +- .../module/executor/enums/ApiConstants.java | 2 +- .../api/orderProcess/OrderProcessApiImpl.java | 7 +- .../executor/dal/mysql/order/OrderMapper.java | 1 + .../dal/mysql/orderBody/OrderBodyMapper.java | 2 +- .../mysql/orderParts/OrderPartsMapper.java | 4 +- .../executor/dal/mysql/plate/PlateMapper.java | 4 +- .../service/order/OrderServiceImpl.java | 8 +- .../service/process/OrderProcessService.java | 4 +- .../process/OrderProcessServiceImpl.java | 7 +- .../admin/api/webcad/ApiTypeRealize.java | 213 ++++++++++-------- .../mapper/orderItem/OrderItemMapper.xml | 8 +- .../mapper/orderParts/OrderPartsMapper.xml | 15 +- .../resources/mapper/plate/PlateMapper.xml | 11 +- .../manage/enums/DictTypeConstants.java | 2 + .../service/plate/PlateServiceImpl.java | 1 - .../process/ProcessGroupServiceImpl.java | 2 +- 18 files changed, 170 insertions(+), 131 deletions(-) diff --git a/cf-framework/cf-spring-boot-starter-security/src/main/java/com/cf/imes/framework/security/core/rpc/LoginUserRequestInterceptor.java b/cf-framework/cf-spring-boot-starter-security/src/main/java/com/cf/imes/framework/security/core/rpc/LoginUserRequestInterceptor.java index c77b94564..1973d1380 100644 --- a/cf-framework/cf-spring-boot-starter-security/src/main/java/com/cf/imes/framework/security/core/rpc/LoginUserRequestInterceptor.java +++ b/cf-framework/cf-spring-boot-starter-security/src/main/java/com/cf/imes/framework/security/core/rpc/LoginUserRequestInterceptor.java @@ -19,6 +19,9 @@ import java.nio.charset.StandardCharsets; @Slf4j public class LoginUserRequestInterceptor implements RequestInterceptor { + //数据源编码 + private static final String DATA_SOURCE_CODE = "data-code"; + @Override @SneakyThrows public void apply(RequestTemplate requestTemplate) { @@ -28,6 +31,7 @@ public class LoginUserRequestInterceptor implements RequestInterceptor { String userStr = JsonUtils.toJsonString(user); userStr = URLEncoder.encode(userStr, StandardCharsets.UTF_8.name()); // 编码,避免中文乱码 requestTemplate.header(SecurityFrameworkUtils.LOGIN_USER_HEADER, userStr); + requestTemplate.header(DATA_SOURCE_CODE, user.getDataCode()); } catch (Exception ex) { log.error("[apply][序列化 LoginUser({}) 发生异常]", user, ex); throw ex; diff --git a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApi.java b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApi.java index 717186ce6..81a2da878 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApi.java +++ b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApi.java @@ -15,8 +15,8 @@ public interface OrderProcessApi { String PREFIX = ApiConstants.PREFIX + "/order-process"; - @GetMapping(PREFIX +"/get") + @GetMapping(PREFIX +"/apiGet") @Operation(summary = "获得生产单中的加工组信息表") - @Parameter(name = "id", description = "加工组id", required = true, example = "1024") - CommonResult getOrderProcessByProcessGroupId(@RequestParam("id") Long id); + @Parameter(name = "processGroupId", description = "加工组id", required = true, example = "1024") + CommonResult getOrderProcessByProcessGroupId(@RequestParam("processGroupId") Long id); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ApiConstants.java b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ApiConstants.java index 2e3bb83ec..016aba79a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ApiConstants.java +++ b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ApiConstants.java @@ -16,7 +16,7 @@ public class ApiConstants { */ public static final String NAME = "executor-server"; - public static final String PREFIX = RpcConstants.RPC_API_PREFIX + "/executor"; + public static final String PREFIX = "/admin-api/executor"; public static final String VERSION = "1.0.0"; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApiImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApiImpl.java index 9c7bba307..a4e13183e 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApiImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/api/orderProcess/OrderProcessApiImpl.java @@ -9,6 +9,8 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.List; + import static com.cf.imes.framework.common.pojo.CommonResult.success; @RestController // 提供 RESTful API 接口,给 Feign 调用 @@ -20,9 +22,8 @@ public class OrderProcessApiImpl implements OrderProcessApi{ @Override public CommonResult getOrderProcessByProcessGroupId(Long id) { - System.out.println(" Long id " + id); - OrderProcessDO plateDO = orderProcessService.getOrderProcessByProcessGroupId(id); - if (plateDO == null) { + List plateDOS = orderProcessService.getOrderProcessByProcessGroupId(id); + if (plateDOS == null) { return success(false); } return success(true); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java index edf76140c..5e53effbf 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java @@ -29,6 +29,7 @@ public interface OrderMapper extends BaseMapperX { default PageResult selectPage(OrderPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(OrderDO::getParentNo, reqVO.getParentNo()) + .likeIfPresent(OrderDO::getId, String.valueOf(reqVO.getId()) != null ? "" : String.valueOf(reqVO.getId())) .betweenIfPresent(OrderDO::getDeliveryDate, reqVO.getDeliveryDate()) .betweenIfPresent(OrderDO::getOrderDate, reqVO.getOrderDate()) .eqIfPresent(OrderDO::getId, reqVO.getId()) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java index e2277bc91..964afb347 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java @@ -25,7 +25,7 @@ public interface OrderBodyMapper extends BaseMapperX { int updatePlateNumById(@Param("orderId") Long orderId, @Param("plateNum") Double plateNum); - int deleteAllByOrderId(@Param("orderId") Long orderId, @Param("bodyId") Long bodyId); + int deleteAllByOrderId(@Param("orderId") Long orderId, @Param("bodyId") Long bodyId); // item表数据未作筛选 List selectModuleByOrderId(@Param("orderId") Long orderId, @Param("organId") Long organId, diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderParts/OrderPartsMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderParts/OrderPartsMapper.java index c0003315e..9366adad5 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderParts/OrderPartsMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderParts/OrderPartsMapper.java @@ -84,8 +84,10 @@ public interface OrderPartsMapper extends BaseMapperX { return update(wrapper); } - void updateDeletedById(@Param("bodyId") Long bodyId, @Param("deleted") Integer deleted, @Param("organId") Long organId); + void updateDeletedById(@Param("bodyId") List bodyIds, @Param("deleted") Integer deleted, @Param("organId") Long organId); List selectPartList( @Param("orderIds") List orderIds,@Param("organId") Long organId); + List selectPartsIdListByBodyId(@Param("bodyId") Long bodyId, @Param("organId") Long organId); + } \ 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 321a3cb03..71d3a59bc 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 @@ -106,10 +106,12 @@ public interface PlateMapper extends BaseMapperX { return update(wrapper); } - void updateDeletedById(@Param("bodyId") Long bodyId, @Param("deleted") Integer deleted, @Param("organId") Long organId); + void updateDeletedById(@Param("bodyIds") List bodyId, @Param("deleted") Integer deleted, @Param("organId") Long organId); int countPlateByOrderId(@Param("orderId") Long orderId, @Param("organId") Long organId, @Param("deleted") Integer deleted); BigDecimal selectPlateSize( @Param("orderId") Long orderId); + + List selectPlateIdListByBodyId(@Param("bodyId") Long bodyId, @Param("organId") Long organId); } \ 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/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 6bf2d33b4..978e9e4a3 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 @@ -322,8 +322,12 @@ public class OrderServiceImpl implements OrderService { // orderBodyMapper.deleteAllByOrderId(orderId, bodyId); orderBodyMapper.updateDeletedById(bodyId, OrderDeletedEnum.DELETED.getStatus(), SecurityFrameworkUtils.getLoginUser().getOrganId()); orderGroupMapper.updateDeletedById(bodyId, OrderDeletedEnum.DELETED.getStatus(), SecurityFrameworkUtils.getLoginUser().getOrganId()); - plateMapper.updateDeletedById(bodyId, OrderDeletedEnum.DELETED.getStatus(), SecurityFrameworkUtils.getLoginUser().getOrganId()); - orderPartsMapper.updateDeletedById(bodyId, OrderDeletedEnum.DELETED.getStatus(), SecurityFrameworkUtils.getLoginUser().getOrganId()); + + // 先查再改 + List plateDOList = plateMapper.selectPlateIdListByBodyId(bodyId, SecurityFrameworkUtils.getLoginUser().getOrganId()); + plateMapper.updateDeletedById(plateDOList, OrderDeletedEnum.DELETED.getStatus(), SecurityFrameworkUtils.getLoginUser().getOrganId()); + List partsList = orderPartsMapper.selectPartsIdListByBodyId(bodyId, SecurityFrameworkUtils.getLoginUser().getOrganId()); + orderPartsMapper.updateDeletedById(partsList, OrderDeletedEnum.DELETED.getStatus(), SecurityFrameworkUtils.getLoginUser().getOrganId()); }); } } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessService.java index 87a47e707..9ff9fdaeb 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessService.java @@ -4,6 +4,8 @@ import javax.validation.*; import com.cf.imes.module.executor.controller.admin.process.vo.*; import com.cf.imes.module.executor.dal.dataobject.process.OrderProcessDO; +import java.util.List; + /** * 生产单工序 Service 接口 * @@ -47,6 +49,6 @@ public interface OrderProcessService { * @param processGroupId 工序组Id * @return 生产单工序 */ - OrderProcessDO getOrderProcessByProcessGroupId(Long processGroupId); + List getOrderProcessByProcessGroupId(Long processGroupId); } \ 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/process/OrderProcessServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessServiceImpl.java index 295488e36..e404b7dd8 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/process/OrderProcessServiceImpl.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.service.process; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; import com.cf.imes.framework.common.enums.ProcessProcessingTypeEnum; import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils; @@ -197,8 +198,10 @@ public class OrderProcessServiceImpl implements OrderProcessService { } @Override - public OrderProcessDO getOrderProcessByProcessGroupId(Long processGroupId) { - return orderProcessMapper.selectOne("group_id", processGroupId,"organ_id",getUserOrganId()); + public List getOrderProcessByProcessGroupId(Long processGroupId) { + return orderProcessMapper.selectList(new LambdaUpdateWrapper() + .eq(OrderProcessDO::getGroupId, processGroupId) + .eq(OrderProcessDO::getOrganId, getUserOrganId())); } } \ 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/util/fileConversion/admin/api/webcad/ApiTypeRealize.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java index c682d7712..13d57c962 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiTypeRealize.java @@ -78,7 +78,7 @@ public class ApiTypeRealize { List order = new ArrayList<>(); order.add(orderDO); // 商品信息数据 信息以全 - Map> goodsInfoChange = rawGoodsInfoChange(dataGoods, orderId, dataBlocks); + Map> goodsInfoChange = rawGoodsInfoChange(dataGoods, orderId, dataBlocks); // System.out.println(" goodsInfoChange " + goodsInfoChange); List goodsDO = (List) goodsInfoChange.get("goodsDOS").values().stream() .collect(Collectors.toList()); @@ -87,36 +87,38 @@ public class ApiTypeRealize { .collect(Collectors.toList()); map.put("rawGoodsDO", rawGoodsDO); // 柜体信息 少异形数量、板材数量 - Map bodyInfoChange = bodyInfoChange(dataBody, orderId); + Map bodyInfoChange = bodyInfoChange(dataBody, orderId); // System.out.println(" bodyInfoChange " + bodyInfoChange); // 加工组 少异形数量、板材数量 - Map> group = - + Map> group = groupInfoChange(dataModule, orderId, bodyInfoChange); - Map orderGroupDO = (Map) group.get("orderGroup"); + Map orderGroupDO = (Map) group.get("orderGroup"); map.put("groupDO", orderGroupDO.values().stream().collect(Collectors.toList())); - Map> groupLists = (Map>) group.get("lists"); + Map> groupLists = (Map>) group.get("lists"); // 加工组中包含的板件、配件id // 配件 - Map> partsDO = partsInfoChange(dataParts, orderId, - (Map) goodsInfoChange.get("goodsDOS"), bodyInfoChange); - Map partsRemark = (Map) partsDO.get("remarks"); // 配件备注 + Map> partsDO = partsInfoChange(dataParts, orderId, + (Map) goodsInfoChange.get("goodsDOS"), bodyInfoChange); + + Map partsRemark = (Map) partsDO.get("remarks"); // 配件备注 map.put("partsRemark", partsRemark.values().stream().collect(Collectors.toList())); - Map orderPartsDO = (Map) partsDO.get("partsInfos"); + + Map orderPartsDO = (Map) partsDO.get("partsInfos"); map.put("partsDO", orderPartsDO.values().stream().collect(Collectors.toList())); - Map partsItems = (Map) partsDO.get("partsItems"); + + Map partsItems = (Map) partsDO.get("partsItems"); List itemsList = new ArrayList<>(); - partsItems = orderPartsChange(bodyInfoChange, orderGroupDO, groupLists, partsItems);// item补充 + partsItems = orderPartsChange(orderGroupDO, groupLists, partsItems);// item补充 itemsList.addAll(partsItems.values()); // 板材 写库 - Map> platesDO = platesInfoChange(dataPlates, plates, orderId, - (Map) goodsInfoChange.get("goodsDOS"), bodyInfoChange, dataBlocks); - Map orderPlatesDO = (Map) platesDO.get("platesInfos"); + Map> platesDO = platesInfoChange(dataPlates, plates, orderId, + (Map) goodsInfoChange.get("goodsDOS"), bodyInfoChange, dataBlocks); + Map orderPlatesDO = (Map) platesDO.get("platesInfos"); map.put("platesDO", orderPlatesDO.values().stream().collect(Collectors.toList())); map.put("plateDetail", platesDO.get("plateDetail").values().stream().collect(Collectors.toList())); - Map platesItems = (Map) platesDO.get("platesItems"); - Map bodyItemsPlates = (Map) platesDO.get("bodyInfos"); - platesItems = orderPartsChange(bodyInfoChange, orderGroupDO, groupLists, platesItems);// item补充 + Map platesItems = (Map) platesDO.get("platesItems"); + Map bodyItemsPlates = (Map) platesDO.get("bodyInfos"); + platesItems = orderPartsChange(orderGroupDO, groupLists, platesItems);// item补充 itemsList.addAll(platesItems.values()); // System.out.println("生产单数据 " + orderDO+ " 商品信息1 " + goodsDO + " 商品信息2 " // + rawGoodsDO + " 板材信息 " + new ArrayList<>(orderPlatesDO.values()) @@ -133,22 +135,38 @@ public class ApiTypeRealize { /** - * @param bodyInfoChange: BoxId body + * bodyInfoChange: BoxId body 暂时未用 * @param orderGroupDO: ModuleID group * @param groupLists: ModuleID 板材、配件id - * @param partsItems: ItemID item + * @param items: ItemID item * @return Map * @author Administrator * @date 2024/5/8 */ - public Map orderPartsChange(Map bodyInfoChange, Map orderGroupDO, - Map> groupLists, Map partsItems) { + public Map orderPartsChange(Map orderGroupDO, + Map> groupLists, Map items) { groupLists.forEach((k, v) -> { v.forEach(v1 -> { - if (partsItems.get(v1) != null) { - partsItems.get(v1).setGroupId(orderGroupDO.get(k).getId()); - if (partsItems.get(v1).getPlateId() != null) + if (items.get(v1) != null) { + if (items.get(v1).getGroupId() != null){ // 已存在值 + OrderItemDO item = OrderItemDO.builder() + .id((Long) identifierGenerator.nextId(null)) + .orderId(items.get(v1).getOrderId()) + .type(items.get(v1).getType()) + .roomId(items.get(v1).getRoomId()) + .bodyId(items.get(v1).getBodyId()) + .planId(items.get(v1).getPlanId()) + .packageId(items.get(v1).getPackageId()) + .groupId(items.get(v1).getGroupId()) + .partsId(items.get(v1).getPartsId()) + .plateId(items.get(v1).getPlateId()) + .num(items.get(v1).getNum()) + .build(); + items.put(orderGroupDO.get(k).getId(), item); //再复查 + } + items.get(v1).setGroupId(orderGroupDO.get(k).getId()); + if (items.get(v1).getPlateId() != null) groupNum++; } }); @@ -156,16 +174,17 @@ public class ApiTypeRealize { groupNum = 0; }); - return partsItems; + System.out.println(" item " + items); + return items; } /** * 加工组 信息转换 */ - private Map> groupInfoChange(JSONObject dataModule, Long orderId, Map bodyInfoChange) { - Map> map = new HashMap<>(); - Map orderGroupDOs = new HashMap<>();// 加工组id 和 加工组信息 - Map> groupLists = new HashMap<>();// 加工组id 和 详细信息 + private Map> groupInfoChange(JSONObject dataModule, Long orderId, Map bodyInfoChange) { + Map> map = new HashMap<>(); + Map orderGroupDOs = new HashMap<>();// 加工组id 和 加工组信息 + Map> groupLists = new HashMap<>();// 加工组id 和 详细信息 if (dataModule.getJSONArray("value") != null && @@ -177,8 +196,8 @@ public class ApiTypeRealize { OrderGroupDO bodyInfo = OrderGroupDO.builder() .id((Long) identifierGenerator.nextId(null)) .orderId(orderId) - .bodyId(bodyInfoChange.get(group.getInteger("BoxID")).getId())//group.getLong("BoxID") - .groupTypeId(Long.valueOf(group.getInteger("ModuleTypeID"))) + .bodyId(bodyInfoChange.get(group.getLong("BoxID")).getId())//group.getLong("BoxID") + .groupTypeId(Long.valueOf(group.getLong("ModuleTypeID"))) .groupTypeName("无") .name(group.getString("ModuleTypeName")) .width(group.getDouble("Width")) @@ -190,8 +209,8 @@ public class ApiTypeRealize { .filename("无") .remark("无") .build(); - groupLists.put(group.getInteger("ModuleID"), jsonArrayToList(group.getJSONArray("ItemIDList"))); - orderGroupDOs.put(group.getInteger("ModuleID"), bodyInfo); + groupLists.put(group.getLong("ModuleID"), jsonArrayToList(group.getJSONArray("ItemIDList"))); + orderGroupDOs.put(group.getLong("ModuleID"), bodyInfo); } } @@ -249,13 +268,13 @@ public class ApiTypeRealize { /** * 板材数据转换成 Map */ - public Map getBlocksDataByGoodsID(JSONObject dataBlocks) { - Map map = new HashMap<>(); + public Map getBlocksDataByGoodsID(JSONObject dataBlocks) { + Map map = new HashMap<>(); JSONArray ordersArray = dataBlocks.getJSONArray("List"); if (ordersArray != null && !ordersArray.isEmpty()) { for (int i = 0; i < ordersArray.size(); i++) { JSONObject block = ordersArray.getJSONObject(i); - map.put(block.getInteger("GoodsID"), block); + map.put(block.getLong("GoodsID"), block); } } return map; @@ -271,10 +290,10 @@ public class ApiTypeRealize { * @author Administrator * @date 2024/4/30 */ - public Map> rawGoodsInfoChange(JSONObject dataRawGoods, Long orderId , JSONObject dataBlocks) { - Map> map = new HashMap<>(); - Map rawGoodsDOS = new HashMap<>(); - Map goodsDOS = new HashMap<>(); + public Map> rawGoodsInfoChange(JSONObject dataRawGoods, Long orderId , JSONObject dataBlocks) { + Map> map = new HashMap<>(); + Map rawGoodsDOS = new HashMap<>(); + Map goodsDOS = new HashMap<>(); if (dataRawGoods.getJSONArray("List") != null && !dataRawGoods.getJSONArray("List").isEmpty()) { @@ -295,7 +314,7 @@ public class ApiTypeRealize { .brand(goods.getString("Brand")) .spec(goods.getString("Spec")) .build(); - rawGoodsDOS.put(goods.getInteger("GoodsID"), rawGoodsDO); + rawGoodsDOS.put(goods.getLong("GoodsID"), rawGoodsDO); GoodsDO goodsDO = GoodsDO.builder() .id((Long) identifierGenerator.nextId(null)) @@ -313,7 +332,7 @@ public class ApiTypeRealize { .brand(goods.getString("Brand")) .spec(goods.getString("Spec")) .build(); - goodsDOS.put(goods.getInteger("GoodsID"), goodsDO); + goodsDOS.put(goods.getLong("GoodsID"), goodsDO); } } @@ -331,8 +350,8 @@ public class ApiTypeRealize { * @author Administrator * @date 2024/4/30 */ - private Map bodyInfoChange(JSONObject dataBody, Long orderId) { - Map bodyInfos = new HashMap<>(); + private Map bodyInfoChange(JSONObject dataBody, Long orderId) { + Map bodyInfos = new HashMap<>(); if (dataBody.getJSONArray("List") != null && !dataBody.getJSONArray("List").isEmpty()) { @@ -354,7 +373,7 @@ public class ApiTypeRealize { .filename("无") .remark("无") .build(); - bodyInfos.put(body.getInteger("BoxID"), bodyInfo); + bodyInfos.put(body.getLong("BoxID"), bodyInfo); } } @@ -366,10 +385,10 @@ public class ApiTypeRealize { /** * JSONArray转List */ - public List jsonArrayToList(JSONArray jsonArray) { - List list = new ArrayList<>(); + public List jsonArrayToList(JSONArray jsonArray) { + List list = new ArrayList<>(); for (int i = 0; i < jsonArray.size(); i++) { - list.add(jsonArray.getInteger(i)); + list.add(jsonArray.getLong(i)); } return list; } @@ -384,11 +403,11 @@ public class ApiTypeRealize { * @author Administrator * @date 2024/4/30 */ - public Map> partsInfoChange(JSONObject value, Long orderId, Map goodsDOMap, Map bodyInfos) { - Map> map = new HashMap<>(); - Map partsInfos = new HashMap<>(); - Map partsItem = new HashMap<>(); - Map remarks =new HashMap<>(); + public Map> partsInfoChange(JSONObject value, Long orderId, Map goodsDOMap, Map bodyInfos) { + Map> map = new HashMap<>(); + Map partsInfos = new HashMap<>(); + Map partsItem = new HashMap<>(); + Map remarks =new HashMap<>(); if (value != null && !value.isEmpty()) { JSONArray partsLists = value.getJSONArray("List"); @@ -398,11 +417,11 @@ public class ApiTypeRealize { OrderPartsDO partsInfo = OrderPartsDO.builder() .id(partsId) .orderId(orderId) - .goodsId(String.valueOf(goodsDOMap.get(parts.getInteger("GoodsID")) != null - ? goodsDOMap.get(parts.getInteger("GoodsID")).getId() : parts.getInteger("GoodsID"))) + .goodsId(String.valueOf(goodsDOMap.get(parts.getLong("GoodsID")) != null + ? goodsDOMap.get(parts.getLong("GoodsID")).getId() : parts.getLong("GoodsID"))) .name(parts.getString("Name")) - .material(String.valueOf(goodsDOMap.get(parts.getInteger("GoodsID")) != null - ? goodsDOMap.get(parts.getInteger("GoodsID")).getMaterial() : "")) + .material(String.valueOf(goodsDOMap.get(parts.getLong("GoodsID")) != null + ? goodsDOMap.get(parts.getLong("GoodsID")).getMaterial() : "")) .type(parts.getString("ObjectType")) .model(parts.getString("Model")) .spec(parts.getString("Spec")) @@ -413,23 +432,23 @@ public class ApiTypeRealize { .isComposite(parts.getBoolean("IsComposite")) .remark(parts.getString("Remark")) .build(); - remarks.put(parts.getInteger("DataID"),partsRemarkChange(parts, orderId, partsId)); - partsInfos.put(parts.getInteger("DataID"), partsInfo); + remarks.put(parts.getLong("ItemID"),partsRemarkChange(parts, orderId, partsId)); + partsInfos.put(parts.getLong("ItemID"), partsInfo); // item 明细 OrderItemDO item = OrderItemDO.builder() .id((Long) identifierGenerator.nextId(null)) .orderId(orderId) .type(OrderItemTypeEnum.PARTS_ITEM.getStatus()) - .roomId(bodyInfos.get(parts.getInteger("BoxID")).getRoomId()) - .bodyId(bodyInfos.get(parts.getInteger("BoxID")).getId()) + .roomId(bodyInfos.get(parts.getLong("BoxID")).getRoomId()) + .bodyId(bodyInfos.get(parts.getLong("BoxID")).getId()) .planId(0L) .packageId(0L) .groupId(0L) .partsId(partsId) .num(parts.getDouble("Num")) .build(); - partsItem.put(parts.getInteger("DataID"), item); + partsItem.put(parts.getLong("ItemID"), item); } } @@ -457,18 +476,18 @@ public class ApiTypeRealize { /** * 板材信息转换 写表 Integer指板材的ItemID板id 加一个板材自定义编号 */ - private Map> platesInfoChange(JSONObject value, JSONObject dataPlates, Long orderId, - Map goodsDOMap, Map bodyInfos, + private Map> platesInfoChange(JSONObject value, JSONObject dataPlates, Long orderId, + Map goodsDOMap, Map bodyInfos, JSONObject dataBlocks) { // 板材 写ES - Map plateDetail = platesDetailChange(value); + Map plateDetail = platesDetailChange(value); // 板材数据 - Map plateMap = getBlocksData(dataBlocks); + Map plateMap = getBlocksData(dataBlocks); - Map> map = new HashMap<>(); - Map platesInfos = new HashMap<>(); - Map platesItem = new HashMap<>(); + Map> map = new HashMap<>(); + Map platesInfos = new HashMap<>(); + Map platesItem = new HashMap<>(); if (dataPlates != null && !dataPlates.isEmpty()) { JSONArray plateLists = dataPlates.getJSONArray("List"); @@ -490,12 +509,12 @@ public class ApiTypeRealize { .plateNo((obtainingTime)+ Long.toString(plateNo).substring(2)) .type(type) - .goodsId(goodsDOMap.get(plate.getInteger("GoodsID")) != null - ? goodsDOMap.get(plate.getInteger("GoodsID")).getId() : plate.getInteger("GoodsID")) + .goodsId(goodsDOMap.get(plate.getLong("GoodsID")) != null + ? goodsDOMap.get(plate.getLong("GoodsID")).getId() : plate.getLong("GoodsID")) // .width(BigDecimal.valueOf(plate.getDouble("CutWidth"))) // .height(BigDecimal.valueOf(plate.getDouble("CutWidth"))) -// .thickness(goodsDOMap.get(plate.getInteger("GoodsID")) != null -// ? goodsDOMap.get(plate.getInteger("GoodsID")).getThickness() : BigDecimal.valueOf(0L)) +// .thickness(goodsDOMap.get(plate.getLong("GoodsID")) != null +// ? goodsDOMap.get(plate.getLong("GoodsID")).getThickness() : BigDecimal.valueOf(0L)) .splitHeight(BigDecimal.valueOf(plate.getDouble("SpliteHeight"))) .splitThickness(BigDecimal.valueOf(plate.getDouble("SpliteThickness"))) .splitWidth(BigDecimal.valueOf(plate.getDouble("SpliteWidth"))) @@ -503,10 +522,10 @@ public class ApiTypeRealize { .sealRight(BigDecimal.valueOf(plate.getDouble("SealedRight"))) .sealUp(BigDecimal.valueOf(plate.getDouble("SealedUp"))) .sealDown(BigDecimal.valueOf(plate.getDouble("SealedDown"))) - .area(plateDetail.get(plate.getInteger("BlockNo")).getSealAcreage()) - .texture(plateDetail.get(plate.getInteger("BlockNo")).getTexture()) + .area(plateDetail.get(plate.getLong("BlockNo")).getSealAcreage()) + .texture(plateDetail.get(plate.getLong("BlockNo")).getTexture()) - .holeFace(plateDetail.get(plate.getInteger("BlockNo")).getTypographicFace()) // 孔面类型 + .holeFace(plateDetail.get(plate.getLong("BlockNo")).getTypographicFace()) // 孔面类型 .holeArrange(0) // 排孔类型 值无实际含义,默认初始化值 .unregularPointCount(0)// 异形孔个数 值无实际含义,默认初始化值 @@ -515,10 +534,10 @@ public class ApiTypeRealize { .sideHoleCount(plate.getInteger("SideHoleCount")) .frontModelCount(plate.getInteger("FrontModelCount")) .backModelCount(plate.getInteger("BackModelCount")) - .isDoor(plateDetail.get(plate.getInteger("BlockNo")).getOpenDoorType() == 0) + .isDoor(plateDetail.get(plate.getLong("BlockNo")).getOpenDoorType() == 0) .openDoorType(plate.getInteger("OpenDoorType")) - .offsetX(plateDetail.get(plate.getInteger("BlockNo")).getOffsetX()) - .offsetY(plateDetail.get(plate.getInteger("BlockNo")).getOffsetY()) + .offsetX(plateDetail.get(plate.getLong("BlockNo")).getOffsetX()) + .offsetY(plateDetail.get(plate.getLong("BlockNo")).getOffsetY()) .isArcAcross(false) .moduleTypeId(0L) .isSculpt(plate.getBoolean("IsModel")) @@ -532,8 +551,8 @@ public class ApiTypeRealize { .id((Long) identifierGenerator.nextId(null)) .orderId(orderId) .type(OrderItemTypeEnum.PLATE_ITEM.getStatus()) - .roomId(bodyInfos.get(plate.getInteger("BoxID")).getRoomId()) - .bodyId(bodyInfos.get(plate.getInteger("BoxID")).getId()) + .roomId(bodyInfos.get(plate.getLong("BoxID")).getRoomId()) + .bodyId(bodyInfos.get(plate.getLong("BoxID")).getId()) .planId(0L) .packageId(0L) .groupId(0L) @@ -542,29 +561,29 @@ public class ApiTypeRealize { .num(1.0) .build(); - if (plateDetail.get(plate.getInteger("BlockNo")) != null) { - plateDetail.get(plate.getInteger("BlockNo")).setPlateId(plateId) + if (plateDetail.get(plate.getLong("BlockNo")) != null) { + plateDetail.get(plate.getLong("BlockNo")).setPlateId(plateId) .setExtraRemark(plate.getString("ExtraRemark")) .setSpecialRemarkDei(plate.getString("SpecialRemark")) .setExtraHandleRemark(plate.getString("ExtraHandleRemark")) .setDrillsRemark(plate.getString("DrillsRemark")) .setInfoRemark(plate.getString("InfoRemark")) .setRemarkJsonDei(plate.getString("RemarkJson")); - plateInfo.setRemark(plateDetail.get(plate.getInteger("BlockNo")).getRemark() != null ? - plateDetail.get(plate.getInteger("BlockNo")).getRemark().toString() : ""); + plateInfo.setRemark(plateDetail.get(plate.getLong("BlockNo")).getRemark() != null ? + plateDetail.get(plate.getLong("BlockNo")).getRemark().toString() : ""); } - if (plateMap.get(plate.getInteger("BlockNo")) != null) { - JSONObject jsonObject = plateMap.get(plate.getInteger("BlockNo")); + if (plateMap.get(plate.getLong("BlockNo")) != null) { + JSONObject jsonObject = plateMap.get(plate.getLong("BlockNo")); plateInfo.setHeight(BigDecimal.valueOf(jsonObject.getDouble("Height"))) .setWidth(BigDecimal.valueOf(jsonObject.getDouble("Width"))) .setThickness(BigDecimal.valueOf(jsonObject.getDouble("Thickness"))) .setArea(BigDecimal.valueOf(jsonObject.getDouble("Area"))); - plateDetail.get(plate.getInteger("BlockNo")) + plateDetail.get(plate.getLong("BlockNo")) .setRemarkJson(jsonObject.getString("RemarkJson")) .setSpecialRemark(jsonObject.getString("SpecialRemark")); } - platesInfos.put(plate.getInteger("ItemID"), plateInfo); - platesItem.put(plate.getInteger("ItemID"), itemPlate); + platesInfos.put(plate.getLong("ItemID"), plateInfo); + platesItem.put(plate.getLong("ItemID"), itemPlate); } } @@ -597,13 +616,13 @@ public class ApiTypeRealize { /** * 板材数据转换成 Map */ - public Map getBlocksData(JSONObject dataBlocks) { - Map map = new HashMap<>(); + public Map getBlocksData(JSONObject dataBlocks) { + Map map = new HashMap<>(); JSONArray ordersArray = dataBlocks.getJSONArray("List"); if (ordersArray != null && !ordersArray.isEmpty()) { for (int i = 0; i < ordersArray.size(); i++) { JSONObject block = ordersArray.getJSONObject(i); - map.put(block.getInteger("BlockNo"), block); + map.put(block.getLong("BlockNo"), block); } } return map; @@ -612,8 +631,8 @@ public class ApiTypeRealize { /** * 板材设计数据转换成PlateDetail Integer指BlockID板id */ - public Map platesDetailChange(JSONObject dataPlates) { - Map plateDetails = new HashMap<>(); + public Map platesDetailChange(JSONObject dataPlates) { + Map plateDetails = new HashMap<>(); // 获取 Orders 字段对应的数组 JSONArray ordersArray = dataPlates.getJSONArray("Orders"); // System.err.println(dataPlates); @@ -674,7 +693,7 @@ public class ApiTypeRealize { .setRemark(remarkToMap(block)) .setSideRemark(edgeRemarkToMap(block.getJSONObject("ExtraRemark").getJSONObject("extra"))); } - plateDetails.put(block.getInteger("BlockNo"), plateDetail); + plateDetails.put(block.getLong("BlockNo"), plateDetail); } } } 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 c66d31264..6e6767661 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 @@ -4,9 +4,9 @@ - SELECT i.order_id, i.room_id, i.body_id, i.parts_id, p.`name` as part_name, i.num as plate_num + SELECT DISTINCT i.order_id, i.room_id, i.body_id, i.parts_id, p.`name` as part_name, i.num as plate_num FROM `order_item` i RIGHT JOIN `order_parts` p ON i.parts_id = p.id WHERE i.order_id = #{orderId} AND i.organ_id = #{organId} AND p.deleted = #{deleted} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderParts/OrderPartsMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderParts/OrderPartsMapper.xml index 4a8f2154b..b5f60056d 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderParts/OrderPartsMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderParts/OrderPartsMapper.xml @@ -16,7 +16,7 @@ - SELECT + SELECT DISTINCT a.name, a.brand, a.model, @@ -68,10 +68,7 @@ UPDATE order_parts SET deleted = #{deleted} - WHERE id IN ( - SELECT parts_id FROM order_item - WHERE body_id = #{bodyId} AND organ_id = #{organId} - ) + WHERE id IN #{bodyIds} AND organ_id = #{organId} @@ -102,8 +99,10 @@ - - + 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 7b4471f57..a77a3100e 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 @@ -50,7 +50,7 @@ SELECT count(*) FROM order_plate @@ -289,4 +286,8 @@ + \ No newline at end of file diff --git a/cf-module-prod-manage/cf-module-prod-manage-api/src/main/java/com/cf/imes/module/manage/enums/DictTypeConstants.java b/cf-module-prod-manage/cf-module-prod-manage-api/src/main/java/com/cf/imes/module/manage/enums/DictTypeConstants.java index 005e62b4d..918c0375e 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-api/src/main/java/com/cf/imes/module/manage/enums/DictTypeConstants.java +++ b/cf-module-prod-manage/cf-module-prod-manage-api/src/main/java/com/cf/imes/module/manage/enums/DictTypeConstants.java @@ -8,4 +8,6 @@ package com.cf.imes.module.manage.enums; public interface DictTypeConstants { String SYNTHESIS_TYPE = "synthesisType";//加工组类型 + + String PLATE_TEXTURE = "product_manger_texture_type";// 板件纹路 } diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/plate/PlateServiceImpl.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/plate/PlateServiceImpl.java index 16b11963d..de2db15e1 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/plate/PlateServiceImpl.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/plate/PlateServiceImpl.java @@ -1,7 +1,6 @@ package com.cf.imes.module.manage.service.plate; import cn.hutool.core.collection.CollUtil; -import com.cf.imes.framework.common.exception.ServiceException; import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil; import com.cf.imes.framework.common.pojo.CommonResult; import com.cf.imes.framework.organ.core.context.OrganContextHolder; 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 9f825cdf2..a37552384 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 @@ -123,7 +123,7 @@ public class ProcessGroupServiceImpl implements ProcessGroupService { // 判断是否在生产中使用这个加工组 private void checkProcessGroupUsed(Long id) { - if (orderProcessApi.getOrderProcessByProcessGroupId(id) != null){ + if (orderProcessApi.getOrderProcessByProcessGroupId(id).getData()){ throw exception(PROCESS_GROUP_USED); } }