heheng
2025-05-16 8485affcb0d4de05059d80cb1e844d6b18291654
src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java
@@ -369,8 +369,17 @@
                if (queryParam.getExperimentId() != null) {
                    predicateList.add(criteriaBuilder.equal(root.get("experimentId"), queryParam.getExperimentId()));
                }
                Join<RiskAssessPlan, RiskAssessPlanIdentificationUser> identificationUserJoin = root.join("riskAssessPlanIdentificationUsers", JoinType.LEFT);
                Join<RiskAssessPlan, RiskAssessPlanEvaluateUser> evaluateUserJoin = root.join("riskAssessPlanEvaluateUsers", JoinType.LEFT);
//                Join<RiskAssessPlan, RiskAssessPlanIdentificationUser> identificationUserJoin = root.join("riskAssessPlanIdentificationUsers", JoinType.LEFT);
//                Join<RiskAssessPlan, RiskAssessPlanEvaluateUser> evaluateUserJoin = root.join("riskAssessPlanEvaluateUsers", JoinType.LEFT);
                Join<RiskAssessPlan, RiskAssessPlanIdentificationUser> identificationJoin =
                        root.join("riskAssessPlanIdentificationUsers", JoinType.LEFT);
                identificationJoin.on(criteriaBuilder.equal(identificationJoin.get("deleteStatus"), StatusEnum.DELETE_NOT.getCode()));
                // LEFT JOIN riskAssessPlanEvaluateUsers
                Join<RiskAssessPlan, RiskAssessPlanEvaluateUser> evaluateJoin =
                        root.join("riskAssessPlanEvaluateUsers", JoinType.LEFT);
                evaluateJoin.on(criteriaBuilder.equal(evaluateJoin.get("deleteStatus"), StatusEnum.DELETE_NOT.getCode()));
                if (roleTag == UserTagEnum.USER_TAG_0.getCode()) {
                    predicateList.add(criteriaBuilder.equal(root.get("planUserId"), currentUserId));
@@ -382,6 +391,7 @@
//                            )
//                    );
                }
                query.groupBy(root.get("id"));
                predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"), StatusEnum.DELETE_NOT.getCode()));
                return criteriaBuilder.and(predicateList.toArray(new Predicate[0]));
@@ -390,6 +400,11 @@
        PageRequest pageParam = PageRequest.of(queryParam.getPageIndex() - 1, queryParam.getPageSize(), Sort.Direction.DESC, "updateTime");
        Page<RiskAssessPlan> pageResult = assessPlanRepository.findAll(specification, pageParam);
        Long countDynamic = assessPlanRepository.countDynamic(queryParam.getAssessPlanName(), queryParam.getExperimentId(), roleTag == UserTagEnum.USER_TAG_0.getCode() ? currentUserId : null, queryParam.getRiskUnitIds());
        List<RiskAssessPlanQueryDTO> assessPlanQueryDTOS = BeanCopyUtils.copyBeanList(pageResult.getContent(), RiskAssessPlanQueryDTO.class);
@@ -438,7 +453,7 @@
        }
        searchResult.setData(assessPlanQueryDTOS);
        searchResult.setTotal(pageResult.getTotalElements());
        searchResult.setTotal(countDynamic);
        return searchResult;
    }
@@ -1184,6 +1199,7 @@
                }
                if (planIds.size() > 0) {
                    predicateList.add(criteriaBuilder.in(root.get("id")).value(planIds));
                    queryParam.setPlanIds(planIds);
                }
                Join<RiskAssessPlan, RiskAssessPlanIdentificationUser> identificationUserJoin = root.join("riskAssessPlanIdentificationUsers", JoinType.LEFT);
@@ -1192,6 +1208,8 @@
                if (roleTag == UserTagEnum.USER_TAG_0.getCode()) {
                    queryParam.setUserTag(UserTagEnum.USER_TAG_0.getCode().byteValue());
                    queryParam.setUserId(currentUserId);
                    //辨识
                    if (queryParam.getTag() == 1) {
                        predicateList.add(criteriaBuilder.equal(identificationUserJoin.get("identificationUserId"), currentUserId));
@@ -1217,6 +1235,9 @@
        PageRequest pageParam = PageRequest.of(queryParam.getPageIndex() - 1, queryParam.getPageSize(), Sort.Direction.DESC, "updateTime");
        Page<RiskAssessPlan> pageResult = assessPlanRepository.findAll(specification, pageParam);
        long pageCount = riskPlanDataMapper.getPageCount(queryParam);
        System.out.println("pageCountpageCountpageCountpageCountpageCountpageCount:"+pageCount);
        //循环遍历结果集,封装查询结果
        List<AssessQueryDTO> assessQueryDTOList = new ArrayList<>();
@@ -1866,7 +1887,7 @@
        }
        searchResult.setData(assessQueryDTOList);
        searchResult.setTotal(pageResult.getTotalElements());
        searchResult.setTotal(pageCount);
        searchResult.setCount(assessQueryDTOList.size());
        return searchResult;
    }