xy 4 gün önce
ebeveyn
işleme
44277efb63

+ 2 - 4
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/pipe/QC12016_202401JRecordOFData.java

@@ -119,13 +119,11 @@ public class QC12016_202401JRecordOFData implements IDynamicOFData {
                     double sum = equipPipeDetailDOList.stream().mapToDouble(equipPipeDetailDO -> equipPipeDetailDO.getPipeLength() != null ? equipPipeDetailDO.getPipeLength().doubleValue() : 0.0).sum();
                     result.put("pipeLengthTotal", String.valueOf(sum));
                 }
-
                 //获取约检管线
-                List<PipeTaskOrderItemDetailDO> detailDOS = pipeTaskOrderItemDetailMapper.selectList(PipeTaskOrderItemDetailDO::getOrderId, itemReportDO.getOrderId());
-                if (!detailDOS.isEmpty()){
+                if (!allDetailDOS.isEmpty()){
 
                     List<EquipPipeDetailDO> equipPipeDetailDOList = equipPipeDetailMapper.selectList(new LambdaQueryWrapper<EquipPipeDetailDO>()
-                            .in(EquipPipeDetailDO::getId, detailDOS.stream().map(PipeTaskOrderItemDetailDO::getEquipDetailId).toList()));
+                            .in(EquipPipeDetailDO::getId, allDetailDOS.stream().map(PipeTaskOrderItemDetailDO::getEquipDetailId).toList()));
                     if (equipPipeDetailDOList.size() > 1){
                         result.put("pipeName","见一览表" );
                     }else if (equipPipeDetailDOList.size() == 1){

+ 28 - 18
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/pipe/QC12171_202401RecordOFData.java

@@ -35,6 +35,7 @@ import java.time.format.DateTimeFormatter;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
+import java.util.Set;
 import java.util.stream.Collectors;
 
 /**
@@ -164,33 +165,42 @@ public class QC12171_202401RecordOFData implements IDynamicOFData {
                         result.put("pipeCategory", "见一览表");
                     }
 
-                    List<PipeTaskOrderItemDetailDO> detailDOS = pipeTaskOrderItemDetailMapper.selectList(PipeTaskOrderItemDetailDO::getOrderId, itemReportDO.getOrderId());
-                    if (!detailDOS.isEmpty()){
-                        List<EquipPipeDetailDO> equipPipeDetailDOList = equipPipeDetailMapper.selectList(new LambdaQueryWrapper<EquipPipeDetailDO>().in(EquipPipeDetailDO::getId, detailDOS.stream().map(PipeTaskOrderItemDetailDO::getEquipDetailId).toList()));
+                    List<PipeTaskOrderItemDetailDO> allDetailDOS = pipeTaskOrderItemDetailMapper.selectList(PipeTaskOrderItemDetailDO::getOrderId, itemReportDO.getOrderId());
+                    if (!allDetailDOS.isEmpty()){
+                        List<EquipPipeDetailDO> equipPipeDetailDOList = equipPipeDetailMapper.selectList(new LambdaQueryWrapper<EquipPipeDetailDO>().in(EquipPipeDetailDO::getId, allDetailDOS.stream().map(PipeTaskOrderItemDetailDO::getEquipDetailId).toList()));
                         double sum = equipPipeDetailDOList.stream().mapToDouble(equipPipeDetailDO -> equipPipeDetailDO.getPipeLength() != null ? equipPipeDetailDO.getPipeLength().doubleValue() : 0.0).sum();
                         result.put("pipeLengthTotal", String.valueOf(sum));
                     }
+                    //获取约检管线
+                    if (!allDetailDOS.isEmpty()){
+
+                        List<EquipPipeDetailDO> equipPipeDetailDOList = equipPipeDetailMapper.selectList(new LambdaQueryWrapper<EquipPipeDetailDO>()
+                                .in(EquipPipeDetailDO::getId, allDetailDOS.stream().map(PipeTaskOrderItemDetailDO::getEquipDetailId).toList()));
+                        if (equipPipeDetailDOList.size() > 1){
+                            result.put("equipName","见一览表" );
+                        }else if (equipPipeDetailDOList.size() == 1){
+                            result.put("equipName", equipPipeDetailDOList.get(0).getPipeName());
+                        }
+
+                        if (!equipPipeDetailDOList.isEmpty()) {
+                            // 判断pipeLevel是否相同
+                            String pipeLevelValue;
+                            Set<String> pipeLevels = equipPipeDetailDOList.stream()
+                                    .map(EquipPipeDetailDO::getPipeLevel)
+                                    .filter(Objects::nonNull)
+                                    .collect(Collectors.toSet());
+                            // 如果只有一个唯一的pipeLevel值,则使用该值;否则设置为"见一览表"
+                            pipeLevelValue = pipeLevels.size() == 1 ? pipeLevels.iterator().next() : "见一览表";
+                            result.put("pipeLevel", pipeLevelValue);
+                        }
+
+                    }
 
                     if (itemDOList.size() > 1) {
                         // 找出全部管道
-                        result.put("pipeLevel", "见一览表");
                         result.put("projectName", "见一览表");
-                        result.put("equipName", "见一览表");
-
                     } else {
                         result.put("projectName", equipPipeDO.getProjectName());
-                        List<PipeTaskOrderItemDetailDO> pipeTaskOrderItemDetailDOS = pipeTaskOrderItemDetailMapper.selectList(new LambdaQueryWrapper<PipeTaskOrderItemDetailDO>()
-                                .eq(PipeTaskOrderItemDetailDO::getOrderId, itemReportDO.getOrderId()));
-
-                        List<EquipPipeDetailDO> equipPipeDetailDOS = equipPipeDetailMapper.selectList(new LambdaQueryWrapper<EquipPipeDetailDO>().in(EquipPipeDetailDO::getId, pipeTaskOrderItemDetailDOS.stream().map(PipeTaskOrderItemDetailDO::getEquipDetailId).collect(Collectors.toList())));
-                        if (equipPipeDetailDOS.size() == 1) {
-                            result.put("equipName", equipPipeDetailDOS.get(0).getPipeName());
-                            result.put("pipeLevel", equipPipeDetailDOS.get(0).getPipeLevel());
-                        }else{
-                            result.put("equipName", "见一览表");
-                            result.put("pipeLevel", "见一览表");
-                        }
-
                     }
                 }
             }