Bläddra i källkod

增加已受理待安排状态

xzc 3 dagar sedan
förälder
incheckning
75f86113a1

+ 23 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/equipboilerscheduling/EquipBoilerSchedulingServiceImpl.java

@@ -491,7 +491,26 @@ public class EquipBoilerSchedulingServiceImpl extends ServiceImpl<EquipBoilerSch
             return list;
         }
 
+        // 查询已安排检验员的排期ID集合(用于区分"已受理"和"已受理待安排")
+        Set<String> scheduledTaskIds = new HashSet<>();
+        Set<String> allTaskIds = boilerCalendarItemRespVOS.stream()
+                .map(BoilerCalendarItemRespVO::getTaskId)
+                .filter(Objects::nonNull)
+                .collect(Collectors.toSet());
+        if (!allTaskIds.isEmpty()) {
+            List<EquipBoilerSchedulingUserDO> schedulingUsers = equipBoilerSchedulingUserMapper.selectList(
+                    new LambdaQueryWrapperX<EquipBoilerSchedulingUserDO>()
+                            .in(EquipBoilerSchedulingUserDO::getSchedulingId, allTaskIds)
+                            .eq(EquipBoilerSchedulingUserDO::getDeleted, 0)
+            );
+            scheduledTaskIds = schedulingUsers.stream()
+                    .map(EquipBoilerSchedulingUserDO::getSchedulingId)
+                    .filter(Objects::nonNull)
+                    .collect(Collectors.toSet());
+        }
+
         Map<String, List<BoilerCalendarItemRespVO>> map = boilerCalendarItemRespVOS.stream().collect(Collectors.groupingBy(BoilerCalendarItemRespVO::getPlanDate));
+        final Set<String> finalScheduledTaskIds = scheduledTaskIds;
         boilerCalendarItemRespVOS.forEach(item->{
             item.setEquipDistrictName(AreaUtils.getAreaName(item.getEquipDistrict()));
             item.setEquipStreetName(AreaUtils.getAreaName(item.getEquipStreet()));
@@ -513,6 +532,10 @@ public class EquipBoilerSchedulingServiceImpl extends ServiceImpl<EquipBoilerSch
                     status = 600; // 已办结
                 }
             }
+            // 已受理但未安排检验员 → 已受理待安排
+            if (status == 300 && !finalScheduledTaskIds.contains(item.getTaskId())) {
+                status = 350; // 已受理待安排
+            }
             item.setStatus(status);
         });
 

+ 28 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/equippipescheduling/EquipPipeSchedulingServiceImpl.java

@@ -546,7 +546,26 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
             return list;
         }
 
+        // 查询已安排检验员的排期ID集合(用于区分"已受理"和"已受理待安排")
+        Set<String> scheduledTaskIds = new HashSet<>();
+        Set<String> allTaskIds = boilerCalendarItemRespVOS.stream()
+                .map(BoilerCalendarItemRespVO::getTaskId)
+                .filter(Objects::nonNull)
+                .collect(Collectors.toSet());
+        if (!allTaskIds.isEmpty()) {
+            List<EquipPipeSchedulingUserDO> schedulingUsers = equipPipeSchedulingUserMapper.selectList(
+                    new LambdaQueryWrapperX<EquipPipeSchedulingUserDO>()
+                            .in(EquipPipeSchedulingUserDO::getSchedulingId, allTaskIds)
+                            .eq(EquipPipeSchedulingUserDO::getDeleted, 0)
+            );
+            scheduledTaskIds = schedulingUsers.stream()
+                    .map(EquipPipeSchedulingUserDO::getSchedulingId)
+                    .filter(Objects::nonNull)
+                    .collect(Collectors.toSet());
+        }
+
         Map<String, List<BoilerCalendarItemRespVO>> map = boilerCalendarItemRespVOS.stream().collect(Collectors.groupingBy(BoilerCalendarItemRespVO::getPlanDate));
+        final Set<String> finalScheduledTaskIds = scheduledTaskIds;
         boilerCalendarItemRespVOS.forEach(item->{
             item.setEquipDistrictName(AreaUtils.getAreaName(item.getEquipDistrict()));
             item.setEquipStreetName(AreaUtils.getAreaName(item.getEquipStreet()));
@@ -589,6 +608,10 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
                     }
                 }
             }
+            // 已受理但未安排检验员 → 已受理待安排
+            if (status == 300 && !finalScheduledTaskIds.contains(item.getTaskId())) {
+                status = 350; // 已受理待安排
+            }
             item.setStatus(status);
         });
 
@@ -1647,6 +1670,10 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
                     }
                 }
             }
+            // 已受理但未安排检验员 → 已受理待安排
+            if (status == 300 && !taskIdToUsersMap.containsKey(item.getTaskId())) {
+                status = 350; // 已受理待安排
+            }
             item.setStatus(status);
 
             // 处理日期和星期
@@ -2217,6 +2244,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
             case 100 -> "已排期";
             case 200 -> "待约检";
             case 300 -> "已受理";
+            case 350 -> "已受理待安排";
             case 400 -> "检测中";
             default -> "未知";
         };