diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlanSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlanSaveReqVO.java index d799609f3..33df233e5 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlanSaveReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/PlanSaveReqVO.java @@ -12,7 +12,7 @@ import java.util.List; @Data public class PlanSaveReqVO { - @Schema(description = "ID") + @Schema(description = "ID-新增和移除小板时不传") // @NotNull(message = "排单数据异常,请重新操作",groups = UpdateGroup.class) @Max(value = 0x7fffffffffffffffL,message = "排单号异常,无法更新排单数据") private Long id; 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 861dc3866..2c74f4681 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 @@ -1495,6 +1495,11 @@ public class OptimizePlanServiceImpl implements OptimizePlanService { private void updatePlateData(List orderIds, List planNo, Integer cutedType) { + + if(CollUtil.isEmpty(planNo)){ + return; + } + List plateDOS = plateMapper.selectPlateByPlateNo(orderIds, planNo, getUserOrganId()); AssertUtils.notEmpty(plateDOS, THIS_PLAN_PLATE_DATA_ERROR); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java index 1d5cee559..85086015f 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java @@ -437,28 +437,22 @@ public class PlanServiceImpl implements PlanService { esUtils.deleteEsDocument(FIELD_PLANID,planIds,PLAN_PROCESS_SCHEME_OPTIMIZE_MODEL); + // 查询删除排单对应的生产单是否还有进行了其他排单 + List orderIdList = planItemMapper.selectOrderPlateList(orderIds, getUserOrganId()); - // 查询删除的小板对应的生产单信息,如果生产单的小板全部改成了未优化,修改状态 - List plateIsOptimizedList = plateMapper.selectPlateIsOptimized(orderIds, getUserOrganId()); + List diff = Stream.concat( + orderIdList.stream().filter(str -> !orderIds.contains(str)), + orderIds.stream().filter(str -> !orderIdList.contains(str))) + .toList(); - if(CollUtil.isNotEmpty(plateIsOptimizedList)){ - List orderIdList = plateIsOptimizedList.stream().map(PlateDO::getOrderId).distinct().toList(); + if (CollUtil.isNotEmpty(diff)) { - List diff = Stream.concat( - orderIdList.stream().filter(str -> !orderIds.contains(str)), - orderIds.stream().filter(str -> !orderIdList.contains(str))) - .toList(); + List orderList = orderMapper.selectBatchIds(diff); - if(CollUtil.isNotEmpty(diff)){ - - List orderList = orderMapper.selectBatchIds(diff); - - orderList.forEach(f->f.setStatus(OrderStatusEnum.NEW_ORDER.getStatus())); - - orderMapper.updateBatch(orderList); - } + orderList.forEach(f -> f.setStatus(OrderStatusEnum.NEW_ORDER.getStatus())); + orderMapper.updateBatch(orderList); } @@ -1218,11 +1212,12 @@ public class PlanServiceImpl implements PlanService { // 查询删除的小板对应的生产单信息,如果生产单的小板全部改成了未优化,修改状态 - List plateIsOptimizedList = plateMapper.selectPlateIsOptimized(deleteOrderIds, getUserOrganId()); +// List plateIsOptimizedList = plateMapper.selectPlateIsOptimized(deleteOrderIds, getUserOrganId()); +// if(CollUtil.isNotEmpty(plateIsOptimizedList)){ +// List orderIds = plateIsOptimizedList.stream().map(PlateDO::getOrderId).distinct().toList(); - if(CollUtil.isNotEmpty(plateIsOptimizedList)){ - List orderIds = plateIsOptimizedList.stream().map(PlateDO::getOrderId).distinct().toList(); + List orderIds = planItemMapper.selectOrderPlateList(deleteOrderIds, getUserOrganId()); List diff = Stream.concat( orderIds.stream().filter(str -> !deleteOrderIds.contains(str)), @@ -1238,7 +1233,7 @@ public class PlanServiceImpl implements PlanService { orderMapper.updateBatch(orderList); } - } +// } } 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 a9cfef378..ec5fb6353 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 @@ -222,61 +222,6 @@ public class PlateServiceImpl implements PlateService { .eq(PlanItemDO::getPlanId, planId)); - - -// if(Boolean.TRUE.equals(plateDO.getIsOptimized())) { -// -// List optimizeBoardModelDOS = esUtils.getEsDocument("planId","planConfigId", planId, planConfigId, ORDER_REMAIN_PLATE_MODEL, OptimizeBoardModelDO.class); -// -// -// if (CollUtil.isNotEmpty(optimizeBoardModelDOS)) { -// -// OptimizeBoardModelDO optimizeBoardModelDO = optimizeBoardModelDOS.get(0); -// -// String plateNo = plateDO.getPlateNo(); -// -// String blockPlaceInfo = Optional.ofNullable(optimizeBoardModelDO.getBlockPlaceInfo()).orElseThrow(() -> new ServiceException(ORDER_PLAN_OPTIMIZE_ERROR)); -// -// String remainBoardInfo = Optional.ofNullable(optimizeBoardModelDO.getRemainBoardInfo()).orElseThrow(() -> new ServiceException(ORDER_PLAN_OPTIMIZE_ERROR)); -// -// List asJsonObject = new ArrayList<>(parseArray(blockPlaceInfo,PlatePlaceInfo.class)); -// -// List platePlaceInfos = asJsonObject.stream() -// .filter(fi -> !plateNo.equals(fi.getBo())) -// .toList(); -// -// -// List remainBoardInfos = new ArrayList<>(parseArray(remainBoardInfo, RemainBoardInfo.class)); -// -// remainBoardInfos.forEach(r->{ -// r.getPlaceBoardList().forEach(p->{ -// p.setBlocks(p.getBlocks().stream() -// .filter(bl->!plateNo.equals(bl.getBlockId())) -// .toList()); -// }); -// }); -// -// Date date = new Date(); -// -// Map updateData = new HashMap<>(); -// -// updateData.put("blockPlaceInfo", toJsonString(platePlaceInfos)); -// updateData.put("placeBlockNumber", (long) platePlaceInfos.size()); -// updateData.put("remainBoardInfo", toJsonString(remainBoardInfos)); -// updateData.put("updateTime", simpleDateFormat.format(date)); -// -// try { -// esDocumentService.updateById(ORDER_REMAIN_PLATE_MODEL, optimizeBoardModelDO.getId(), HashMap.class, updateData); -// -// }catch (Exception e){ -// log.error(e.getMessage()); -// throw new ServiceException(ES_DATA_ERROR); -// } -// -// -// } -// } - } private void validatePlateExists(Long id) {