src/main/java/com/ruoyi/production/dto/ProcessRouteAnticlockwiseDto.java
@@ -1,5 +1,6 @@ package com.ruoyi.production.dto; import com.ruoyi.production.pojo.ProductProcess; import lombok.Data; @Data @@ -27,4 +28,6 @@ private Long deviceId; private String uuid; private ProductProcess productProcess;; } src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java
@@ -113,7 +113,7 @@ ProductProcessRoute productProcessRoute = createProductProcessRoute(productModelId, productOrderId, productBom.getId(), processRoute.getProcessRouteCode()); // 6. 新增生产工艺路线子表 buildProductProcessRouteItems(processRouteAnticlockwiseDtos, productProcessRoute.getId(), productModelId,productOrderId); buildProductProcessRouteItems(processRouteAnticlockwiseDtos, productProcessRoute.getId(), productModelId, productOrderId); return processRoute.getId(); } @@ -208,16 +208,16 @@ /** * 构建生产工艺路线子项列表 */ private void buildProductProcessRouteItems(List<ProcessRouteAnticlockwiseDto> dtos, Long productRouteId, Long productModelId,Long productOrderId) { private void buildProductProcessRouteItems(List<ProcessRouteAnticlockwiseDto> dtos, Long productRouteId, Long productModelId, Long productOrderId) { ProductOrder byId = productOrderService.getById(productOrderId); Integer num = 0; for (ProcessRouteAnticlockwiseDto dto : dtos) { ProductProcessRouteItem item = new ProductProcessRouteItem(); item.setProductRouteId(productRouteId); item.setProcessId(dto.getProcessId()); if (num >= dtos.size()-1) { if (num >= dtos.size() - 1) { item.setProductModelId(productModelId); }else { } else { item.setProductModelId(dto.getProductModelId()); } item.setProcessRouteName(dto.getProcessRouteName()); @@ -226,6 +226,7 @@ item.setProcessRouteAddNum(dto.getProcessRouteAddNum()); item.setProcessRouteRequire(dto.getProcessRouteRequire()); item.setDragSort(num++); item.setIsQuality(dto.getProductProcess().getIsQuality() != null && dto.getProductProcess().getIsQuality()); item.setUuid(dto.getUuid()); productProcessRouteItemService.save(item); ProductProcess productProcess = productProcessService.getById(item.getProcessId()); @@ -237,7 +238,7 @@ productWorkOrder.setDeviceId(dto.getDeviceId()); productWorkOrder.setUserIds(dto.getUserIds()); productWorkOrder.setUserNames(dto.getUserNames()); productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder( productProcess.getName(), byId.getNpsNo())); productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder(productProcess.getName(), byId.getNpsNo())); productWorkOrder.setStatus(1); productWorkOrderService.save(productWorkOrder); } src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java
@@ -20,6 +20,7 @@ import com.ruoyi.production.pojo.*; import com.ruoyi.production.service.ProductBomService; import com.ruoyi.production.service.ProductProcessRouteService; import com.ruoyi.production.service.ProductProcessService; import com.ruoyi.production.service.ProductionPrintOrderService; import lombok.RequiredArgsConstructor; import org.jetbrains.annotations.Nullable; @@ -29,6 +30,7 @@ import java.io.File; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** @@ -51,9 +53,13 @@ private final ProductBomService productBomService; private final CustomerFollowUpFileService customerFollowUpFileService; private final ProductProcessMapper productProcessMapper; private final ProductProcessService productProcessService; @Override @Transactional public void save(SaveProductionPrintOrderDto dto) { Assert.isFalse(CollUtil.isEmpty(dto.getProcessContent()),"情至少添加一条工序信息"); ProductionPrintOrder productionPrintOrder = BeanUtil.copyProperties(dto, ProductionPrintOrder.class); if(dto.getProductOrderId() != null){ // 先删除生产工单数据 @@ -79,6 +85,9 @@ }); MaterialInfoDto materialInfoDtoFirst = dto.getMaterialInfo().get(0); // 调用工序方增 函数 // 查询工序信息 List<Long> processIds = dto.getProcessContent().stream().map(ProcessContentDto::getProcessId).collect(Collectors.toList()); Map<Long, ProductProcess> productProcessMap = productProcessService.listByIds(processIds).stream().collect(Collectors.toMap(ProductProcess::getId, productProcess -> productProcess)); List<ProcessRouteAnticlockwiseDto> processRouteAnticlockwiseDtos = processContentDtoList.stream().map(it -> { ProcessRouteAnticlockwiseDto pdto = new ProcessRouteAnticlockwiseDto(); pdto.setProcessId(it.getProcessId()); @@ -92,6 +101,7 @@ pdto.setUserNames(it.getReportWorkerList().stream().map(SimplePersonDto::getUserName).collect(Collectors.joining(","))); pdto.setDeviceId(it.getDeviceId()); pdto.setUuid(it.getId()); pdto.setProductProcess(productProcessMap.get(it.getProcessId())); return pdto; }).collect(Collectors.toList());