buhuazhen
5 天以前 6690f4754d433b9cde475868034b6d1a3c11d396
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());