gongchunyi
7 小时以前 10570a9fa5e87231210a449eddc732c7d0599349
src/main/java/com/ruoyi/technology/service/impl/TechnologyRoutingServiceImpl.java
@@ -177,6 +177,10 @@
        if (bomStructure == null) {
            return routingProductModelId;
        }
        if (hasChildren(bomStructure, structureById)) {
            return bomStructure.getProductModelId() != null
                    ? bomStructure.getProductModelId() : routingProductModelId;
        }
        Long parentId = bomStructure.getParentId();
        if (parentId == null) {
            return routingProductModelId != null ? routingProductModelId : bomStructure.getProductModelId();
@@ -188,6 +192,15 @@
        return routingProductModelId != null ? routingProductModelId : bomStructure.getProductModelId();
    }
    private boolean hasChildren(TechnologyBomStructure bomStructure,
                                Map<Long, TechnologyBomStructure> structureById) {
        if (bomStructure == null || bomStructure.getId() == null || structureById == null) {
            return false;
        }
        return structureById.values().stream()
                .anyMatch(child -> child != null && java.util.Objects.equals(child.getParentId(), bomStructure.getId()));
    }
    private void syncRoutingOperationParams(Long technologyRoutingOperationId, Long technologyOperationId) {
        List<TechnologyOperationParam> operationParamList = technologyOperationParamMapper.selectList(
                Wrappers.<TechnologyOperationParam>lambdaQuery()