Browse Source

主检人

xzc 12 hours ago
parent
commit
a8e6898a48
28 changed files with 259 additions and 10 deletions
  1. 7 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/acceptorder/AcceptOrderController.java
  2. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/acceptorder/vo/AcceptOrderRespVO.java
  3. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/acceptorder/vo/PipeAcceptOrderRespVO.java
  4. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/AppointmentConfirmOrderRespVO.java
  5. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/AppointmentConfirmOrderSaveReqVO.java
  6. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/AppointmentSubmitVO.java
  7. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/PipeAppointmentConfirmOrderRespVO.java
  8. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/PipeAppointmentSubmitVO.java
  9. 6 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equipboilerscheduling/vo/BoilerPlanSchedulingAssignTaskVO.java
  10. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equipboilerscheduling/vo/BoilerTaskDetailsVO.java
  11. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equipboilerscheduling/vo/EquipBoilerSchedulingBoilersRespVO.java
  12. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/EquipPipeSchedulingPipesRespVO.java
  13. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipePlanSchedulingAssignTaskVO.java
  14. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipeShiftScheduleRespVO.java
  15. 2 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipeShiftScheduleSaveRespVO.java
  16. 2 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipeTaskDetailsVO.java
  17. 5 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/acceptorder/AcceptOrderDO.java
  18. 5 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/appointmentconfirmorder/AppointmentConfirmOrderDO.java
  19. 5 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/equipboilerscheduling/EquipBoilerSchedulingRecordDO.java
  20. 5 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/equippipescheduling/EquipPipeSchedulingDO.java
  21. 8 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/acceptorder/AcceptOrderService.java
  22. 145 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/acceptorder/AcceptOrderServiceImpl.java
  23. 6 4
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/boilertaskorder/BoilerTaskOrderServiceImpl.java
  24. 6 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/equipboilerscheduling/EquipBoilerSchedulingServiceImpl.java
  25. 8 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/equippipescheduling/EquipPipeSchedulingServiceImpl.java
  26. 6 4
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/pipetaskorder/PipeTaskOrderServiceImpl.java
  27. 3 1
      tz-module-pressure2/tz-module-pressure2-biz/src/main/resources/mapper/equipboilerscheduling/EquipBoilerSchedulingMapper.xml
  28. 4 1
      tz-module-pressure2/tz-module-pressure2-biz/src/main/resources/mapper/equippipescheduling/EquipPipeSchedulingMapper.xml

+ 7 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/acceptorder/AcceptOrderController.java

@@ -100,4 +100,11 @@ public class AcceptOrderController {
         return success(pageResult);
     }
 
+    @GetMapping("/page-unified")
+    @Operation(summary = "获得受理单分页(统一查询,包含锅炉+管道)")
+    public CommonResult<PageResult<AcceptOrderRespVO>> getAcceptOrderPageUnified(@Valid AcceptOrderPageReqVO pageReqVO) {
+        PageResult<AcceptOrderRespVO> pageResult = acceptOrderService.getAcceptOrderPageUnified(pageReqVO);
+        return success(pageResult);
+    }
+
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/acceptorder/vo/AcceptOrderRespVO.java

@@ -292,4 +292,7 @@ public class AcceptOrderRespVO {
 
     @Schema(description = "设备类型 100容器 200锅炉 300管道")
     private Integer equipMainType;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/acceptorder/vo/PipeAcceptOrderRespVO.java

@@ -295,4 +295,7 @@ public class PipeAcceptOrderRespVO {
 
     @Schema(description = "小组信息")
     private List<TeamItemVO> teamList;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/AppointmentConfirmOrderRespVO.java

@@ -283,4 +283,7 @@ public class AppointmentConfirmOrderRespVO {
      */
     private String annotatorName;
 
+    @Schema(description = "主检人")
+    private String managerId;
+
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/AppointmentConfirmOrderSaveReqVO.java

@@ -161,4 +161,7 @@ public class AppointmentConfirmOrderSaveReqVO {
 
     @Schema(description ="缴费人邮箱")
     private String payerMail;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/AppointmentSubmitVO.java

@@ -190,4 +190,7 @@ public class AppointmentSubmitVO {
      * 企业类型
      */
     private String enterpriseType;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/PipeAppointmentConfirmOrderRespVO.java

@@ -272,4 +272,7 @@ public class PipeAppointmentConfirmOrderRespVO {
      * 企业类型
      */
     private String enterpriseType;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/appointmentconfirmorder/vo/PipeAppointmentSubmitVO.java

@@ -194,4 +194,7 @@ public class PipeAppointmentSubmitVO {
      * 企业类型
      */
     private String enterpriseType;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 6 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equipboilerscheduling/vo/BoilerPlanSchedulingAssignTaskVO.java

@@ -82,4 +82,10 @@ public class BoilerPlanSchedulingAssignTaskVO {
      * 免征费用
      */
     private BigDecimal reduceFee;
+
+    /**
+     * 负责人
+     */
+    @Schema(description = "负责人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equipboilerscheduling/vo/BoilerTaskDetailsVO.java

@@ -24,4 +24,7 @@ public class BoilerTaskDetailsVO {
 
     @Schema(description = "小组信息")
     private List<BoilerTaskDetailsItemVO> teamList;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equipboilerscheduling/vo/EquipBoilerSchedulingBoilersRespVO.java

@@ -105,4 +105,7 @@ public class EquipBoilerSchedulingBoilersRespVO {
 
     @Schema(description = "拒绝原因字典值")
     private String refuseReasonDict;
+
+    @Schema(description = "主检人ID")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/EquipPipeSchedulingPipesRespVO.java

@@ -104,4 +104,7 @@ public class EquipPipeSchedulingPipesRespVO {
 
     @ExcelIgnore
     private List<EquipPipePlanSchedulingVO> pipes = new ArrayList<>();
+
+    @Schema(description = "主检人ID")
+    private String managerId;
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipePlanSchedulingAssignTaskVO.java

@@ -29,6 +29,9 @@ public class PipePlanSchedulingAssignTaskVO {
     @NotNull
     private LocalDate date;
 
+    @Schema(description = "主检人")
+    private String managerId;
+
     @Schema(description = "检验员")
     @NotNull
     private List<String> userList ;

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipeShiftScheduleRespVO.java

@@ -107,4 +107,7 @@ public class PipeShiftScheduleRespVO {
 
     @Schema(description = "源排期id")
     private String sourceId;
+
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 2 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipeShiftScheduleSaveRespVO.java

@@ -32,4 +32,6 @@ public class PipeShiftScheduleSaveRespVO {
     @Schema(description = "源排期ID(复制时必传,用于查找原行数据)")
     private String sourceId;
 
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 2 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/equippipescheduling/vo/PipeTaskDetailsVO.java

@@ -30,4 +30,6 @@ public class PipeTaskDetailsVO {
     @Schema(description = "小组信息")
     private List<BoilerTaskDetailsItemVO> teamList;
 
+    @Schema(description = "主检人")
+    private String managerId;
 }

+ 5 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/acceptorder/AcceptOrderDO.java

@@ -255,4 +255,9 @@ public class AcceptOrderDO extends BaseDO {
      */
     private String enterpriseType;
 
+    /**
+     * 主检人
+     */
+    private String managerId;
+
 }

+ 5 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/appointmentconfirmorder/AppointmentConfirmOrderDO.java

@@ -255,4 +255,9 @@ public class AppointmentConfirmOrderDO extends BaseDO {
      * 企业类型
      */
     private String enterpriseType;
+
+    /**
+     * 主检人
+     */
+    private String managerId;
 }

+ 5 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/equipboilerscheduling/EquipBoilerSchedulingRecordDO.java

@@ -54,4 +54,9 @@ public class EquipBoilerSchedulingRecordDO extends BaseDO {
      * 是否需要前台约检确认
      */
     private Boolean hasOrderConfirm;
+
+    /**
+     * 负责人
+     */
+    private String managerId;
 }

+ 5 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/equippipescheduling/EquipPipeSchedulingDO.java

@@ -64,4 +64,9 @@ public class EquipPipeSchedulingDO extends BaseDO {
      * 源数据id
      */
     private String sourceId;
+
+    /**
+     * 主检人
+     */
+    private String managerId;
 }

+ 8 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/acceptorder/AcceptOrderService.java

@@ -61,6 +61,14 @@ public interface AcceptOrderService {
      */
     PageResult<AcceptOrderRespVO> getAcceptOrderPage(AcceptOrderPageReqVO pageReqVO);
 
+    /**
+     * 获得受理单分页(统一查询,包含锅炉200+管道300)
+     *
+     * @param pageReqVO 分页查询
+     * @return 受理单分页
+     */
+    PageResult<AcceptOrderRespVO> getAcceptOrderPageUnified(AcceptOrderPageReqVO pageReqVO);
+
     /**
      * 小程序 - 获得受理单&任务单混合分页
      *

+ 145 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/acceptorder/AcceptOrderServiceImpl.java

@@ -1125,6 +1125,151 @@ public class AcceptOrderServiceImpl implements AcceptOrderService {
         return pageResult;
     }
 
+    @Override
+    public PageResult<AcceptOrderRespVO> getAcceptOrderPageUnified(AcceptOrderPageReqVO pageReqVO) {
+        pageReqVO.setOrderByColumn(AcceptOrderDO::getCreateTime);
+        if(pageReqVO.getIsAudit() != null && pageReqVO.getIsAudit()){
+            pageReqVO.setOrderByColumn(AcceptOrderDO::getSubmitTime);
+        }
+
+        // 处理检验员名称查询
+        if (StringUtils.isNotBlank(pageReqVO.getCheckers())) {
+            List<AdminUserRespDTO> inspectors = adminUserApi.getUserListByNickname(pageReqVO.getCheckers()).getCheckedData();
+            if (CollUtil.isNotEmpty(inspectors)) {
+                List<String> inspectorIds = inspectors.stream().map(AdminUserRespDTO::getId).collect(Collectors.toList());
+
+                // 通过检验员ID查询关联的订单ID
+                List<String> orderIds = new ArrayList<>();
+                List<BoilerAcceptOrderUserDO> boilerAcceptOrderUserDOS = acceptOrderUserMapper.selectList(BoilerAcceptOrderUserDO::getUserId, inspectorIds);
+                List<PipeAcceptOrderUserDO> pipeAcceptOrderUserDOS = pipeAcceptOrderUserMapper.selectList(PipeAcceptOrderUserDO::getUserId, inspectorIds);
+                if (CollUtil.isNotEmpty(boilerAcceptOrderUserDOS)) {
+                    orderIds.addAll(boilerAcceptOrderUserDOS.stream()
+                            .map(BoilerAcceptOrderUserDO::getOrderId)
+                            .distinct()
+                            .toList());
+                }
+                if (CollUtil.isNotEmpty(pipeAcceptOrderUserDOS)) {
+                    orderIds.addAll(pipeAcceptOrderUserDOS.stream()
+                            .map(PipeAcceptOrderUserDO::getOrderId)
+                            .distinct()
+                            .toList());
+                }
+                if (orderIds.isEmpty()){
+                    // 没有找到关联订单,返回空结果
+                    return new PageResult<>();
+                }
+                // 设置订单ID列表
+                pageReqVO.setOrderIds(orderIds);
+            } else {
+                // 没有找到检验员,返回空结果
+                return new PageResult<>();
+            }
+        }
+
+        // 处理提交人名称查询
+        if (StringUtils.isNotBlank(pageReqVO.getSubmitUser())) {
+            List<AdminUserRespDTO> submitters = adminUserApi.getUserListByNickname(pageReqVO.getSubmitUser()).getCheckedData();
+            if (CollUtil.isNotEmpty(submitters)) {
+                List<String> submitterIds = submitters.stream().map(AdminUserRespDTO::getId).collect(Collectors.toList());
+                pageReqVO.setSubmitterIdList(submitterIds);
+            } else {
+                // 没有找到提交人,返回空结果
+                return new PageResult<>();
+            }
+        }
+
+        //根据流程节点人员id查询
+        if (StringUtils.isNotEmpty(pageReqVO.getBpmUserId())) {
+            BpmProcessInstanceDTO bpmProcessInstanceDTO = new BpmProcessInstanceDTO();
+            bpmProcessInstanceDTO.setStatus(100);
+            if (CollUtil.isNotEmpty(pageReqVO.getStatus())) {
+                bpmProcessInstanceDTO.setStatus(pageReqVO.getStatus().get(0));
+            }
+            bpmProcessInstanceDTO.setProcessDefinitionKey(BpmModeConstantsEnum.ACCEPT_ORDER.getType());
+            List<BpmProcessInstanceRespDTO> checkedData = bpmProcessInstanceApi.getProcessInstanceList(pageReqVO.getBpmUserId(), bpmProcessInstanceDTO).getCheckedData();
+            if (CollUtil.isNotEmpty(checkedData)) {
+                List<String> list = checkedData.stream().map(BpmProcessInstanceRespDTO::getId).toList();
+                if (CollUtil.isNotEmpty(list)) {
+                    pageReqVO.setProcessInstanceIds(list);
+                }
+            } else {
+                return PageResult.empty();
+            }
+        }
+
+        // 不设置 equipMainType,查询全部类型(锅炉200+管道300)
+
+        PageResult<AcceptOrderDO> acceptOrderDOPageResult = acceptOrderMapper.selectPage(pageReqVO);
+        PageResult<AcceptOrderRespVO> pageResult = BeanUtils.toBean(acceptOrderDOPageResult, AcceptOrderRespVO.class);
+
+        if(pageResult.getList() == null){
+            return pageResult;
+        }
+
+        List<String> ids = pageResult.getList().stream().map(AcceptOrderRespVO::getId).collect(Collectors.toList());
+        List<String> processInstanceIds = pageResult.getList().stream().map(AcceptOrderRespVO::getProcessInstanceId).filter(Objects::nonNull).collect(Collectors.toList());
+        List<String> deptIds = pageResult.getList().stream().map(AcceptOrderRespVO::getDeptId).filter(Objects::nonNull).collect(Collectors.toList());
+        List<BoilerAcceptOrderUserDO> boilerAcceptOrderUserDOS = acceptOrderUserMapper.selectList(BoilerAcceptOrderUserDO::getOrderId, ids);
+        List<PipeAcceptOrderUserDO> pipeAcceptOrderUserDOS = pipeAcceptOrderUserMapper.selectList(PipeAcceptOrderUserDO::getOrderId, ids);
+
+        Map<String, DeptRespDTO> deptMap = deptApi.getDeptMap(deptIds);
+
+        //user List
+        Map<String, List<BoilerAcceptOrderUserDO>> boilerUserList = boilerAcceptOrderUserDOS.stream().collect(Collectors.groupingBy(BoilerAcceptOrderUserDO::getOrderId));
+        Map<String, List<PipeAcceptOrderUserDO>> pipeUserList = pipeAcceptOrderUserDOS.stream().collect(Collectors.groupingBy(PipeAcceptOrderUserDO::getOrderId));
+        Map<String, BpmTaskDTO> bpmTaskDTOMap = bpmTaskApi.getLastTaskMap(processInstanceIds).getData();
+
+        pageResult.getList().forEach(acceptOrder -> {
+
+            BpmTaskDTO taskDTO = bpmTaskDTOMap.get(acceptOrder.getProcessInstanceId());
+            if(taskDTO != null){
+                acceptOrder.setCurrentNode(taskDTO.getName());
+                acceptOrder.setCurrentAuditorId(taskDTO.getAssignee());
+            }
+
+            acceptOrder.setDept(deptMap.get(acceptOrder.getDeptId()));
+            List<BoilerAcceptOrderUserDO> checkerUserIds1 = boilerUserList.get(acceptOrder.getId());
+            List<PipeAcceptOrderUserDO> checkerUserIds2 = pipeUserList.get(acceptOrder.getId());
+            if (checkerUserIds1 != null && !checkerUserIds1.isEmpty()){
+                acceptOrder.setCheckerUserIds(checkerUserIds1);
+            }
+            if (checkerUserIds2 != null && !checkerUserIds2.isEmpty()){
+                List<BoilerAcceptOrderUserDO> checkerUserIds = BeanUtils.toBean(checkerUserIds2,BoilerAcceptOrderUserDO.class);
+                acceptOrder.setCheckerUserIds(checkerUserIds);
+            }
+        });
+
+        List<String> userIds = pageResult.getList().stream().map(AcceptOrderRespVO::getCurrentAuditorId).filter(Objects::nonNull).collect(Collectors.toList());
+        List<String> userIds2 = pageResult.getList().stream().map(AcceptOrderRespVO::getCreator).filter(Objects::nonNull).toList();
+        List<String> userIds3 = boilerAcceptOrderUserDOS.stream().map(BoilerAcceptOrderUserDO::getUserId).filter(Objects::nonNull).toList();
+        List<String> userIds5 = pipeAcceptOrderUserDOS.stream().map(PipeAcceptOrderUserDO::getUserId).filter(Objects::nonNull).toList();
+        List<String> userIds4 = pageResult.getList().stream().map(AcceptOrderRespVO::getSubmitId).filter(Objects::nonNull).toList();
+
+        userIds.addAll(userIds2);
+        userIds.addAll(userIds3);
+        userIds.addAll(userIds4);
+        userIds.addAll(userIds5);
+
+        if(!userIds.isEmpty()){
+            Map<String, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userIds);
+            pageResult.getList().forEach(acceptOrder -> {
+                acceptOrder.setCurrentAuditor(userMap.get(acceptOrder.getCurrentAuditorId()));
+                acceptOrder.setCreateUser(userMap.get(acceptOrder.getCreator()));
+
+                if(acceptOrder.getCheckerUserIds() != null){
+                    acceptOrder.getCheckerUserIds().forEach(checkerUserId -> {
+                        acceptOrder.getCheckers().add(userMap.get(checkerUserId.getUserId()));
+                    });
+                }
+
+                acceptOrder.setSubmitUser(userMap.get(acceptOrder.getSubmitId()));
+            });
+
+        }
+
+        return pageResult;
+    }
+
     @Override
     public String getPayLink(String id) {
 

+ 6 - 4
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/boilertaskorder/BoilerTaskOrderServiceImpl.java

@@ -835,12 +835,14 @@ public class BoilerTaskOrderServiceImpl extends ServiceImpl<BoilerTaskOrderMappe
         BoilerTaskOrderDO taskOrderDO = boilerTaskOrderMapper.selectById(taskOrderConfirmVO.getId());
 
         if (taskOrderConfirmVO.getConfirm()) {
-            updateTaskOrder.setManagerId(userId);
-            updateTaskOrder.setTaskStatus(TaskOrderStatusEnum.CONFIRM.getStatus());
-
+            // 有主检人时只有主检人本人可认领
             if(StringUtils.isNotBlank(taskOrderDO.getManagerId())){
-                throw exception0(900,"任务单已被确认,请刷新页面");
+                if (!taskOrderDO.getManagerId().equals(userId)) {
+                    throw exception0(900,"只有主检人才能认领该任务单");
+                }
             }
+            updateTaskOrder.setManagerId(userId);
+            updateTaskOrder.setTaskStatus(TaskOrderStatusEnum.CONFIRM.getStatus());
         } else {
             updateTaskOrder.setManagerId(null);
             updateTaskOrder.setTaskStatus(TaskOrderStatusEnum.PRE_CONFIRM.getStatus());

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

@@ -352,6 +352,7 @@ public class EquipBoilerSchedulingServiceImpl extends ServiceImpl<EquipBoilerSch
             //任务
             EquipBoilerSchedulingRecordDO task = new EquipBoilerSchedulingRecordDO();
             task.setPlanDate(taskVO.getDate());
+            task.setManagerId(taskVO.getManagerId());
             task.setType(taskVO.getType());
             task.setSource(source);
             // 前台约检来源:强制不需要前台约检确认,自动生成受理单
@@ -657,6 +658,7 @@ public class EquipBoilerSchedulingServiceImpl extends ServiceImpl<EquipBoilerSch
         taskDetailsVO.setUnitAddress(equipBoilerDO.getUnitAddress());
         taskDetailsVO.setUnitCode(equipBoilerDO.getUnitCode());
         taskDetailsVO.setPlanDate(schedulingDO.getPlanDate());
+        taskDetailsVO.setManagerId(schedulingDO.getManagerId());
 
         List<EquipBoilerSchedulingUserDO> equipBoilerSchedulingUserDOS = equipBoilerSchedulingUserMapper.selectList(EquipBoilerSchedulingUserDO::getSchedulingId, id);
         List<String> userIds = equipBoilerSchedulingUserDOS.stream().map(item -> item.getUserId()).toList();
@@ -890,6 +892,9 @@ public class EquipBoilerSchedulingServiceImpl extends ServiceImpl<EquipBoilerSch
             appointmentConfirmOrderDO.setWarningDate(warningDate);
             appointmentConfirmOrderDO.setSchedulingId(schedulingDO.getId());
             appointmentConfirmOrderDO.setDeptId(equipContainerDO.getRelatedDepartment());
+            if (schedulingDO.getManagerId() != null){
+                appointmentConfirmOrderDO.setManagerId(schedulingDO.getManagerId());
+            }
             if (equipContainerDO.getRelatedDepartment() != null){
                 CommonResult<DeptRespDTO> commonResult = deptApi.getDept(equipContainerDO.getRelatedDepartment());
                 if (commonResult.isSuccess()){
@@ -1062,6 +1067,7 @@ public class EquipBoilerSchedulingServiceImpl extends ServiceImpl<EquipBoilerSch
                 submitVO.setEquipType(appointmentConfirmOrderDO.getEquipType());
                 submitVO.setEquipMainType(200);
                 submitVO.setEquipIds(equipIds);
+                submitVO.setManagerId(schedulingDO.getManagerId());
                 appointmentConfirmOrderService.submit(submitVO);
             }
         }

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

@@ -354,6 +354,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
             //任务
             EquipPipeSchedulingDO task = new EquipPipeSchedulingDO();
             task.setPlanDate(taskVO.getDate());
+            task.setManagerId(taskVO.getManagerId());
             task.setType(taskVO.getType());
             task.setSource(source);
             // 前台约检来源:强制不需要前台约检确认,自动生成受理单
@@ -888,6 +889,9 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
             appointmentConfirmOrderDO.setWarningDate(warningDate);
             appointmentConfirmOrderDO.setSchedulingId(schedulingDO.getId());
             appointmentConfirmOrderDO.setDeptId(equipPipeDO.getRelationDept());
+            if (schedulingDO.getManagerId() != null){
+                appointmentConfirmOrderDO.setManagerId(schedulingDO.getManagerId());
+            }
             if (equipPipeDO.getRelationDept() != null){
                 CommonResult<DeptRespDTO> commonResult = deptApi.getDept(equipPipeDO.getRelationDept());
                 if (commonResult.isSuccess()){
@@ -1803,6 +1807,9 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
             throw new RuntimeException("排期记录不存在: " + id);
         }
         schedulingDO.setPlanDate(vo.getDate());
+        if (vo.getManagerId() != null) {
+            schedulingDO.setManagerId(vo.getManagerId());
+        }
         equipPipeSchedulingMapper.updateById(schedulingDO);
 
         // 删除旧的检验员数据
@@ -2109,6 +2116,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
         taskDetailsVO.setUnitAddress(equipBoilerDO.getUnitAddress());
         taskDetailsVO.setUnitCode(equipBoilerDO.getUnitCode());
         taskDetailsVO.setPlanDate(schedulingDO.getPlanDate());
+        taskDetailsVO.setManagerId(schedulingDO.getManagerId());
 
         List<EquipPipeSchedulingUserDO> equipPipeSchedulingUserDOS = equipPipeSchedulingUserMapper.selectList(EquipPipeSchedulingUserDO::getSchedulingId, id);
         List<String> userIds = equipPipeSchedulingUserDOS.stream().map(item -> item.getUserId()).toList();

+ 6 - 4
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/pipetaskorder/PipeTaskOrderServiceImpl.java

@@ -762,12 +762,14 @@ public class PipeTaskOrderServiceImpl extends ServiceImpl<PipeTaskOrderMapper, P
         PipeTaskOrderDO taskOrderDO = pipeTaskOrderMapper.selectById(taskOrderConfirmVO.getId());
 
         if (taskOrderConfirmVO.getConfirm()) {
-            updateTaskOrder.setManagerId(userId);
-            updateTaskOrder.setTaskStatus(TaskOrderStatusEnum.CONFIRM.getStatus());
-
+            // 有主检人时只有主检人本人可认领
             if(StringUtils.isNotBlank(taskOrderDO.getManagerId())){
-                throw exception0(900,"任务单已被确认,请刷新页面");
+                if (!taskOrderDO.getManagerId().equals(userId)) {
+                    throw exception0(900,"只有主检人才能认领该任务单");
+                }
             }
+            updateTaskOrder.setManagerId(userId);
+            updateTaskOrder.setTaskStatus(TaskOrderStatusEnum.CONFIRM.getStatus());
 
         } else {
             updateTaskOrder.setManagerId(null);

+ 3 - 1
tz-module-pressure2/tz-module-pressure2-biz/src/main/resources/mapper/equipboilerscheduling/EquipBoilerSchedulingMapper.xml

@@ -281,6 +281,7 @@
         ,scheduling_info.plan_in_check_date
         ,scheduling_info.plan_out_check_date
         ,scheduling_info.plan_pre_check_date
+        ,scheduling_info.manager_id
         ,CASE
         WHEN scheduling_info.plan_in_check_date IS NOT NULL
         OR scheduling_info.plan_out_check_date IS NOT NULL
@@ -294,7 +295,8 @@
             b.equip_id,
             MAX(CASE WHEN s.type = 100 THEN s.PLAN_DATE END) AS plan_in_check_date,
             MAX(CASE WHEN s.type = 200 THEN s.PLAN_DATE END) AS plan_out_check_date,
-            MAX(CASE WHEN s.type = 300 THEN s.PLAN_DATE END) AS plan_pre_check_date
+            MAX(CASE WHEN s.type = 300 THEN s.PLAN_DATE END) AS plan_pre_check_date,
+            MAX(s.MANAGER_ID) AS manager_id
             FROM PRESSURE2_EQUIP_BOILER_SCHEDULING s
             INNER JOIN PRESSURE2_EQUIP_BOILER_SCHEDULING_ITEM b ON s.ID = b.SCHEDULING_ID
             left join PRESSURE_TASK_ORDER pto on s.id = pto.SCHEDULING_ID

+ 4 - 1
tz-module-pressure2/tz-module-pressure2-biz/src/main/resources/mapper/equippipescheduling/EquipPipeSchedulingMapper.xml

@@ -596,7 +596,7 @@
         select a.ID task_id,a.TYPE check_type,b.unit_code,b.unit_name,b.unit_address,a.plan_date,count(distinct c.ID) equip_count,
         b.equip_district,b.equip_street,a.source,FIRST_VALUE(b.lng) lng,FIRST_VALUE(b.lat) lat,
         b.CONTACT,b.CONTACT_PHONE,b.PIPE_LENGTH_TOTAL,b.LAST_LEGAL_PERIODICAL_INSPECTION_REPORT_NO,b.LAST_YEAR_REPORT_NO,b.LAST_MAINTENANCE_REPORT_NO,
-        e.id APPOINTMENT_ID,f.id ACCEPT_ORDER_ID,f.STATUS accept_status, g.TASK_STATUS ,b.PIPE_ADDRESS,a.confirm_order_id,a.SOURCE_ID
+        e.id APPOINTMENT_ID,f.id ACCEPT_ORDER_ID,f.STATUS accept_status, g.TASK_STATUS ,b.PIPE_ADDRESS,a.confirm_order_id,a.SOURCE_ID,a.MANAGER_ID
         from PRESSURE2_EQUIP_PIPE_SCHEDULING a
         inner join PRESSURE2_EQUIP_PIPE_SCHEDULING_ITEM c on c.SCHEDULING_ID = a.ID and c.DELETED = 0
         inner join PRESSURE2_EQUIP_PIPE b on b.ID = c.equip_id and b.DELETED = 0
@@ -658,6 +658,9 @@
         ,(select a.PLAN_DATE from PRESSURE2_EQUIP_PIPE_SCHEDULING a
         left join PRESSURE2_EQUIP_PIPE_SCHEDULING_ITEM b on a.ID = b.SCHEDULING_ID
         where b.equip_id = eb.id and a.DELETED = 0 and b.DELETED = 0 and a.type = 200 order by a.CREATE_TIME DESC limit 1) plan_year_check_date
+        ,(select a.MANAGER_ID from PRESSURE2_EQUIP_PIPE_SCHEDULING a
+        left join PRESSURE2_EQUIP_PIPE_SCHEDULING_ITEM b on a.ID = b.SCHEDULING_ID
+        where b.equip_id = eb.id and a.DELETED = 0 and b.DELETED = 0 order by a.CREATE_TIME DESC limit 1) manager_id
         from PRESSURE2_EQUIP_PIPE eb
         <where>
             eb.deleted = 0 and eb.IS_EFFECTIVE = '是'