buhuazhen
4 天以前 6690f4754d433b9cde475868034b6d1a3c11d396
feat(ProductionPrintOrder) 工序添加是否质检
已修改3个文件
24 ■■■■ 文件已修改
src/main/java/com/ruoyi/production/dto/ProcessRouteAnticlockwiseDto.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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());