buhuazhen
4 天以前 aeb7d490c7fa55ae4861a43d256a5a9cf649d39c
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,11 +53,15 @@
    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.getId() != null){
        if(dto.getProductOrderId() != null){
            // 先删除生产工单数据
            LambdaQueryWrapper<ProductWorkOrder> l1 = new LambdaQueryWrapper<>();
            l1.eq(ProductWorkOrder::getProductOrderId,dto.getProductOrderId());
@@ -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());
@@ -104,7 +114,7 @@
        productOrderMapper.updateById(productOrder);
        LambdaQueryWrapper<ProductionPrintOrder> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(ProductionPrintOrder::getProductOrderId,dto.getProductModelId());
        queryWrapper.eq(ProductionPrintOrder::getProductOrderId,dto.getProductOrderId());
        queryWrapper.last("limit 1");
        ProductionPrintOrder ifExitPrint = productionPrintOrderMapper.selectOne(queryWrapper);
        if (ifExitPrint == null) {