heheng
2025-05-23 761bdc5b3f17df62aae1b424f2d2dabc11e844bc
src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java
@@ -6,6 +6,7 @@
import com.gkhy.labRiskManage.application.riskReport.dto.bo.*;
import com.gkhy.labRiskManage.application.riskReport.dto.dto.RiskAssessAppQueryDTO;
import com.gkhy.labRiskManage.application.riskReport.dto.dto.RiskAssessPlanListAppDTO;
import com.gkhy.labRiskManage.commons.domain.Result;
import com.gkhy.labRiskManage.commons.domain.SearchResult;
import com.gkhy.labRiskManage.commons.enums.*;
import com.gkhy.labRiskManage.commons.exception.BusinessException;
@@ -43,6 +44,7 @@
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -368,8 +370,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));
@@ -381,6 +392,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]));
@@ -389,6 +401,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);
@@ -437,7 +454,7 @@
        }
        searchResult.setData(assessPlanQueryDTOS);
        searchResult.setTotal(pageResult.getTotalElements());
        searchResult.setTotal(countDynamic);
        return searchResult;
    }
@@ -738,9 +755,10 @@
        if (assessPlanById.getPlanSellStatus() == 1) {
            throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR.getCode(), "该计划尚未派发,无法辨识");
        }
        if (assessPlanById.getPlanExecStatus() != 2) {
            throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR.getCode(), "该计划不处在辨识阶段,无法辨识");
        }
        //20250520修改评价阶段也可以进行新增辨识
//        if (assessPlanById.getPlanExecStatus() != 2) {
//            throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR.getCode(), "该计划不处在辨识阶段,无法辨识");
//        }
        if (date.isAfter(assessPlanById.getAssessEndTime())) {
            throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR.getCode(), "风险辨识必须在评估结束时间之前");
        }
@@ -1183,6 +1201,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);
@@ -1191,6 +1210,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));
@@ -1216,6 +1237,8 @@
        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);
        //循环遍历结果集,封装查询结果
        List<AssessQueryDTO> assessQueryDTOList = new ArrayList<>();
@@ -1310,7 +1333,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == pha.getId()) {
                                if (Objects.equals(lec.getIdentificationId(), pha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchPha(pha, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1320,10 +1343,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1337,7 +1360,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == jha.getId()) {
                                if (Objects.equals(lec.getIdentificationId(), jha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchJha(jha, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1347,10 +1370,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1364,7 +1387,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == scl.getId()) {
                                if (Objects.equals(lec.getIdentificationId(), scl.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchScl(scl, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1374,10 +1397,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1391,7 +1414,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(hazop.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == hazop.getId()) {
                                if (Objects.equals(lec.getIdentificationId(), hazop.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchHazop(hazop, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1400,10 +1423,10 @@
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                                for (UserInfoDomainDTO user : userList) {
                                    if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                    if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                        assessQueryDTO.setCreateByUserName(user.getRealName());
                                    }
                                    if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                    if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                        assessQueryDTO.setUpdateByUserName(user.getRealName());
                                    }
                                }
@@ -1418,7 +1441,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(analogy.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == analogy.getId()) {
                                if (Objects.equals(lec.getIdentificationId(), analogy.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchAnalogy(analogy, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1428,10 +1451,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1450,7 +1473,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == pha.getId()) {
                                if (Objects.equals(ls.getIdentificationId(), pha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchPha(pha, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1460,10 +1483,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1477,7 +1500,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == jha.getId()) {
                                if (Objects.equals(ls.getIdentificationId(), jha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchJha(jha, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1487,10 +1510,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1504,7 +1527,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == scl.getId()) {
                                if (Objects.equals(ls.getIdentificationId(), scl.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchScl(scl, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1514,10 +1537,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1531,7 +1554,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(hazop.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == hazop.getId()) {
                                if (Objects.equals(ls.getIdentificationId(), hazop.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchHazop(hazop, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1541,10 +1564,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1558,7 +1581,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(analogy.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == analogy.getId()) {
                                if (Objects.equals(ls.getIdentificationId(), analogy.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchAnalogy(analogy, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1568,10 +1591,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1589,7 +1612,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == pha.getId()) {
                                if (Objects.equals(mes.getIdentificationId(), pha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchPha(pha, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1599,10 +1622,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1616,7 +1639,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == jha.getId()) {
                                if (Objects.equals(mes.getIdentificationId(), jha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchJha(jha, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1626,10 +1649,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1643,7 +1666,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == scl.getId()) {
                                if (Objects.equals(mes.getIdentificationId(), scl.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchScl(scl, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1653,10 +1676,10 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
@@ -1728,7 +1751,7 @@
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (RsQueryDTO rs : rsList) {
                                if (rs.getIdentificationId() == pha.getId()) {
                                if (Objects.equals(rs.getIdentificationId(), pha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.rsMatchPha(pha, rs);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
@@ -1738,14 +1761,767 @@
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 2) {
                        for (JhaQueryDTO jha : jhaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(jha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setJhaId(jha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (RsQueryDTO rs : rsList) {
                                if (Objects.equals(rs.getIdentificationId(), jha.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.rsMatchJha(jha, rs);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setJhaId(jha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 3) {
                        for (SclQueryDTO scl : sclList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(scl, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setSclId(scl.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (RsQueryDTO rs : rsList) {
                                if (Objects.equals(rs.getIdentificationId(), scl.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.rsMatchScl(scl, rs);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setSclId(scl.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 4) {
                        for (HazopQueryDTO hazop : hazopList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(hazop, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setHazopId(hazop.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(hazop.getUpdateTime());
                            for (RsQueryDTO rs : rsList) {
                                if (Objects.equals(rs.getIdentificationId(), hazop.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.rsMatchHazop(hazop, rs);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setHazopId(hazop.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 5) {
                        for (AnalogyQueryDTO analogy : analogyList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(analogy, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setAnalogyId(analogy.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(analogy.getUpdateTime());
                            for (RsQueryDTO rs : rsList) {
                                if (Objects.equals(rs.getIdentificationId(), analogy.getId())) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.rsMatchAnalogy(analogy, rs);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setAnalogyId(analogy.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (Objects.equals(user.getId(), assessQueryDTO.getCreateByUserId())) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (Objects.equals(user.getId(), assessQueryDTO.getUpdateByUserId())) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                        }
                    }
                } else {
                    throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "评价方法参数错误");
                }
                assessQueryDTO.setFactorQueryDTOList(factorQueryDTOList);
                assessQueryDTOList.add(assessQueryDTO);
            }
        }
        searchResult.setData(assessQueryDTOList);
        searchResult.setTotal(pageCount);
        searchResult.setCount(assessQueryDTOList.size());
        return searchResult;
    }
    @Override
    public Result<List<AssessExportDTO>> selectAssessExport(Long currentUserId, RiskAssessAppQueryBO queryBO) {
        //校验参数
        if (ObjectUtils.isEmpty(queryBO.getPageSize())) {
            throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "分页信息不能为空");
        }
        if (ObjectUtils.isEmpty(queryBO.getPageIndex())) {
            throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "分页信息不能为空");
        }
        // 检查是否是实验管理者
        UserInfoDomainDTO userInfo = userDomainService.getUserById(currentUserId);
        if (ObjectUtils.isEmpty(userInfo)) {
            throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "用户不存在");
        }
        if (queryBO.getAssessPlanName() == "null") {
            queryBO.setAssessPlanName(null);
        }
        if (queryBO.getExperimentName() == "null") {
            queryBO.setExperimentName(null);
        }
        AssessQueryBO queryParam = BeanCopyUtils.copyBean(queryBO, AssessQueryBO.class);
        if (!ObjectUtils.isEmpty(queryBO.getExperimentName())) {
            ExperimentInfoDTO experimentByName = experimentInfoService.getExperimentByName(queryBO.getExperimentName());
            if (ObjectUtils.isEmpty(experimentByName)) {
                throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "分页信息不能为空");
            }
            queryParam.setExperimentId(experimentByName.getId());
        }
        // 拿到所有的固有风险单元 ,遍历
        List<Long> planIds = new ArrayList<>();
        List<RiskUnit> riskUnits = riskUnitService.listInherentRiskUnit();
        if (ObjectUtils.isEmpty(riskUnits)) {
            for (RiskUnit riskUnit : riskUnits) {
                // 拿到所有固有风险的评估计划
                List<RiskAssessPlan> assessPlanByInherentUnit = assessPlanRepository.getAssessPlanByInherentUnit(riskUnit.getBasicRiskUnitId());
                if (assessPlanByInherentUnit.size() > 0) {
                    // 遍历固有风险评估计划,如果当前用户属于对应实验的负责人,新增,修改人
                    for (RiskAssessPlan inherentRiskAssessPlan : assessPlanByInherentUnit) {
                        if (riskUnit.getExperimentId().equals(currentUserId) || riskUnit.getCreateByUserId().equals(currentUserId) || riskUnit.getUpdateByUserId().equals(currentUserId)) {
                            planIds.add(inherentRiskAssessPlan.getId());
                        }
                    }
                }
            }
        }
        List<ExperimentInfoDTO> experimentByList = experimentInfoService.getExperimentByUser(currentUserId);
        List<Long> experimentIdList = new ArrayList<>();
        experimentIdList.add(0L);
        if (!ObjectUtils.isEmpty(experimentByList)) {
            for (ExperimentInfoDTO experimentInfo : experimentByList) {
                experimentIdList.add(experimentInfo.getId());
            }
        }
        Result searchResult = new Result<>();
        int roleTag = GetRoleTagUtils.GetRoleTagUtils(userInfo);
        //封装查询参数
        Specification<RiskAssessPlan> specification = new Specification<RiskAssessPlan>() {
            @Override
            public Predicate toPredicate(Root<RiskAssessPlan> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
                List<Predicate> predicateList = new ArrayList<>();
                if (queryParam.getAssessPlanName() != null && !queryParam.getAssessPlanName().equals("")) {
                    predicateList.add(criteriaBuilder.like(root.get("assessPlanName"), "%" + queryParam.getAssessPlanName() + "%"));
                }
                if (queryParam.getExperimentId() != null && !queryParam.getExperimentId().equals("")) {
                    predicateList.add(criteriaBuilder.equal(root.get("experimentId"), queryParam.getExperimentId()));
                }
                if (queryParam.getAssessPlanId() != null && !queryParam.getAssessPlanId().equals("")) {
                    predicateList.add(criteriaBuilder.equal(root.get("id"), queryParam.getAssessPlanId()));
                }
                if (!ObjectUtils.isEmpty(queryParam.getPlanExecStatus())) {
                    if (queryParam.getPlanExecStatus() == 5) {
                        predicateList.add(criteriaBuilder.ge(root.get("planExecStatus"), 3));
                    } else {
                        predicateList.add(criteriaBuilder.equal(root.get("planExecStatus"), queryParam.getPlanExecStatus()));
                    }
                }
                if (queryParam.getTag() == 2) {
                    predicateList.add(criteriaBuilder.isNotNull(root.get("identificationTime")));
                }
                if (queryParam.getTag() == 3) {
                    predicateList.add(criteriaBuilder.isNotNull(root.get("evaluateTime")));
                }
                if (planIds.size() > 0) {
                    predicateList.add(criteriaBuilder.in(root.get("id")).value(planIds));
                }
                Join<RiskAssessPlan, RiskAssessPlanIdentificationUser> identificationUserJoin = root.join("riskAssessPlanIdentificationUsers", JoinType.LEFT);
                Join<RiskAssessPlan, RiskAssessPlanEvaluateUser> evaluateUserJoin = root.join("riskAssessPlanEvaluateUsers", JoinType.LEFT);
                Join<RiskAssessPlan, User> planUserJoin = root.join("planUser", JoinType.LEFT);
                if (roleTag == UserTagEnum.USER_TAG_0.getCode()) {
                    //辨识
                    if (queryParam.getTag() == 1) {
                        predicateList.add(criteriaBuilder.equal(identificationUserJoin.get("identificationUserId"), currentUserId));
                    }
                    //评论
                    if (queryParam.getTag() == 2) {
                        predicateList.add(criteriaBuilder.equal(evaluateUserJoin.get("evaluateUserId"), currentUserId));
                    }
                    //此处应有谁能查询:辨识专家,评价专家,实验负责人(此处未存相关信息,以实验id为条件查询)
                }
                query.groupBy(root.get("id"));
                query.orderBy(criteriaBuilder.desc(root.get("updateTime")));
                predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"), StatusEnum.DELETE_NOT.getCode()));
                return criteriaBuilder.and(predicateList.toArray(new Predicate[0]));
            }
        };
        List<RiskAssessPlan> pageResult = assessPlanRepository.findAll(specification);
        //循环遍历结果集,封装查询结果
        List<AssessExportDTO> assessQueryDTOList = new ArrayList<>();
        List<UserInfoDomainDTO> userList = userDomainService.getUserList();
        if (pageResult.size() > 0) {
            for (RiskAssessPlan riskAssessPlan : pageResult) {
                AssessExportDTO assessQueryDTO = BeanCopyUtils.copyBean(riskAssessPlan, AssessExportDTO.class);
                if(riskAssessPlan.getPlanUser() != null){
                    assessQueryDTO.setPlanUserName(riskAssessPlan.getPlanUser().getRealName());
                }
                List<RiskAssessPlanIdentificationUser> riskAssessPlanIdentificationUsers = riskAssessPlan.getRiskAssessPlanIdentificationUsers();
                if (!ObjectUtils.isEmpty(riskAssessPlanIdentificationUsers)) {
                    String identificationUsersString = riskAssessPlanIdentificationUsers.stream()
                            .map(RiskAssessPlanIdentificationUser::getIdentificationUser)
                            .collect(Collectors.joining(","));
                    assessQueryDTO.setIdentificationUser(identificationUsersString);
                }
                List<RiskAssessPlanEvaluateUser> riskAssessPlanEvaluateUsers = riskAssessPlan.getRiskAssessPlanEvaluateUsers();
                if (!ObjectUtils.isEmpty(riskAssessPlanEvaluateUsers)) {
                    String identificationUsersString = riskAssessPlanEvaluateUsers.stream()
                            .map(RiskAssessPlanEvaluateUser::getEvaluateUser)
                            .collect(Collectors.joining(","));
                    assessQueryDTO.setEvaluateUser(identificationUsersString);
                }
                List<PhaQueryDTO> phaList = new ArrayList<>();
                List<JhaQueryDTO> jhaList = new ArrayList<>();
                List<SclQueryDTO> sclList = new ArrayList<>();
                List<HazopQueryDTO> hazopList = new ArrayList<>();
                List<AnalogyQueryDTO> analogyList = new ArrayList<>();
                //辨识方法 1-PHA;
                if (assessQueryDTO.getIdentificationMethod() == 1) {
                    phaList = phaService.listPhaByPlanId(riskAssessPlan.getId());
                    //辨识方法 2-JHA;
                } else if (assessQueryDTO.getIdentificationMethod() == 2) {
                    jhaList = jhaService.listJhaByPlanId(riskAssessPlan.getId());
                    //辨识方法 3-SCL;
                } else if (assessQueryDTO.getIdentificationMethod() == 3) {
                    sclList = sclService.listSclByPlanId(riskAssessPlan.getId());
                    //辨识方法 4-HAZOP;
                } else if (assessQueryDTO.getIdentificationMethod() == 4) {
                    hazopList = hazopService.listHazopByPlanId(riskAssessPlan.getId());
                    //5-类比法 analogy;
                } else if (assessQueryDTO.getIdentificationMethod() == 5) {
                    analogyList = analogyService.listAnalogyByPlanId(riskAssessPlan.getId());
                } else {
                    throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "辨识方法参数错误");
                }
                for (UserInfoDomainDTO user : userList) {
                    if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                        assessQueryDTO.setCreateByUserName(user.getRealName());
                    }
                    if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                        assessQueryDTO.setUpdateByUserName(user.getRealName());
                    }
                }
                Boolean isBegin = false;
                //评价方法1 - LEC
                if (assessQueryDTO.getEvaluateMethod() == 1) {
                    List<LecQueryDTO> lecList = lecService.listLecByPlanId(riskAssessPlan.getId());
                    if (assessQueryDTO.getIdentificationMethod() == 1) {
                        for (PhaQueryDTO pha : phaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(pha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setPhaId(pha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == pha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchPha(pha, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setPhaId(pha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getPhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getPhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 2) {
                        for (JhaQueryDTO jha : jhaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(jha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setJhaId(jha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == jha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchJha(jha, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setJhaId(jha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getJhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getJhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 3) {
                        for (SclQueryDTO scl : sclList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(scl, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setSclId(scl.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == scl.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchScl(scl, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setSclId(scl.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getSclCheckResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getSclCheckStandard());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getSclCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 4) {
                        for (HazopQueryDTO hazop : hazopList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(hazop, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setHazopId(hazop.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(hazop.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == hazop.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchHazop(hazop, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setHazopId(hazop.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getHazopResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getHazopParamDesc());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getHazopPossibleCauses());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 5) {
                        for (AnalogyQueryDTO analogy : analogyList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(analogy, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setAnalogyId(analogy.getAssessPlanId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(analogy.getUpdateTime());
                            for (LecQueryDTO lec : lecList) {
                                if (lec.getIdentificationId() == analogy.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lecMatchAnalogy(analogy, lec);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setAnalogyId(analogy.getAssessPlanId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getAnalogyResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getAnalogyRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getAnalogyCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    }
                    //评价方法2 - LS
                } else if (assessQueryDTO.getEvaluateMethod() == 2) {
                    List<LsQueryDTO> lsList = lsService.listLsByPlanId(riskAssessPlan.getId());
                    if (assessQueryDTO.getIdentificationMethod() == 1) {
                        for (PhaQueryDTO pha : phaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(pha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setPhaId(pha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == pha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchPha(pha, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setPhaId(pha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getPhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getPhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 2) {
                        for (JhaQueryDTO jha : jhaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(jha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setJhaId(jha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == jha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchJha(jha, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setJhaId(jha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getJhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getJhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 3) {
                        for (SclQueryDTO scl : sclList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(scl, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setSclId(scl.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == scl.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchScl(scl, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setSclId(scl.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getSclCheckResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getSclCheckStandard());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getSclCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 4) {
                        for (HazopQueryDTO hazop : hazopList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(hazop, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setHazopId(hazop.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(hazop.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == hazop.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchHazop(hazop, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setHazopId(hazop.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getHazopResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getHazopParamDesc());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getHazopPossibleCauses());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 5) {
                        for (AnalogyQueryDTO analogy : analogyList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(analogy, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setAnalogyId(analogy.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(analogy.getUpdateTime());
                            for (LsQueryDTO ls : lsList) {
                                if (ls.getIdentificationId() == analogy.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.lsMatchAnalogy(analogy, ls);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setAnalogyId(analogy.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getAnalogyResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getAnalogyRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getAnalogyCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    }
                    //评价方法3 - MES
                } else if (assessQueryDTO.getEvaluateMethod() == 3) {
                    List<MesQueryDTO> mesList = mesService.listMesByPlanId(riskAssessPlan.getId());
                    if (assessQueryDTO.getIdentificationMethod() == 1) {
                        for (PhaQueryDTO pha : phaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(pha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setPhaId(pha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == pha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchPha(pha, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setPhaId(pha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getPhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getPhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 2) {
                        for (JhaQueryDTO jha : jhaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(jha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setJhaId(jha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(jha.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == jha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchJha(jha, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setJhaId(jha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getJhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getJhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 3) {
                        for (SclQueryDTO scl : sclList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(scl, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setSclId(scl.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(scl.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == scl.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchScl(scl, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setSclId(scl.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getSclCheckResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getSclCheckStandard());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getSclCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 4) {
                        for (HazopQueryDTO hazop : hazopList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(hazop, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setHazopId(hazop.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(hazop.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == hazop.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchHazop(hazop, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setHazopId(hazop.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getHazopResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getHazopParamDesc());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getHazopPossibleCauses());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 5) {
                        for (AnalogyQueryDTO analogy : analogyList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(analogy, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setAnalogyId(analogy.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(analogy.getUpdateTime());
                            for (MesQueryDTO mes : mesList) {
                                if (mes.getIdentificationId() == analogy.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.mesMatchAnalogy(analogy, mes);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setAnalogyId(analogy.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getAnalogyResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getAnalogyRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getAnalogyCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    }
                    //评价方法4 - RS
                } else if (assessQueryDTO.getEvaluateMethod() == 4) {
                    List<RsQueryDTO> rsList = rsService.listRsByPlanId(riskAssessPlan.getId());
                    if (assessQueryDTO.getIdentificationMethod() == 1) {
                        for (PhaQueryDTO pha : phaList) {
                            FactorQueryDTO factorQueryDTO = BeanCopyUtils.copyBean(pha, FactorQueryDTO.class);
                            factorQueryDTO.setId(riskAssessPlan.getId());
                            factorQueryDTO.setPhaId(pha.getId());
                            factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                            factorQueryDTO.setItemIdentificationTime(pha.getUpdateTime());
                            for (RsQueryDTO rs : rsList) {
                                if (rs.getIdentificationId() == pha.getId()) {
                                    EvaluateAndIdentificationUtils evaluateAndIdentificationUtils = new EvaluateAndIdentificationUtils();
                                    factorQueryDTO = evaluateAndIdentificationUtils.rsMatchPha(pha, rs);
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                    factorQueryDTO.setId(riskAssessPlan.getId());
                                    factorQueryDTO.setPhaId(pha.getId());
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getPhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getPhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 2) {
                        for (JhaQueryDTO jha : jhaList) {
@@ -1764,15 +2540,15 @@
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getJhaResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getJhaRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getPhaCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 3) {
                        for (SclQueryDTO scl : sclList) {
@@ -1791,15 +2567,15 @@
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getSclCheckResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getSclCheckStandard());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getSclCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 4) {
                        for (HazopQueryDTO hazop : hazopList) {
@@ -1818,15 +2594,15 @@
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getHazopResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getHazopParamDesc());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getHazopPossibleCauses());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    } else if (assessQueryDTO.getIdentificationMethod() == 5) {
                        for (AnalogyQueryDTO analogy : analogyList) {
@@ -1845,28 +2621,28 @@
                                    factorQueryDTO.setEvaluateMethod(riskAssessPlan.getEvaluateMethod());
                                }
                            }
                            for (UserInfoDomainDTO user : userList) {
                                if (user.getId() == assessQueryDTO.getCreateByUserId()) {
                                    assessQueryDTO.setCreateByUserName(user.getRealName());
                                }
                                if (user.getId() == assessQueryDTO.getUpdateByUserId()) {
                                    assessQueryDTO.setUpdateByUserName(user.getRealName());
                                }
                            }
                            factorQueryDTOList.add(factorQueryDTO);
                            AssessExportDTO assessQueryDTO1 = BeanCopyUtils.copyBean(assessQueryDTO, AssessExportDTO.class);
                            assessQueryDTO1.setResult(factorQueryDTO.getResult());
                            assessQueryDTO1.setDataResult(factorQueryDTO.getAnalogyResult());
                            assessQueryDTO1.setDataRiskFactor(factorQueryDTO.getAnalogyRiskFactor());
                            assessQueryDTO1.setDataCheckItem(factorQueryDTO.getAnalogyCheckItem());
                            assessQueryDTOList.add(assessQueryDTO1);
                            isBegin = true;
                        }
                    }
                } else {
                    throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode(), "评价方法参数错误");
                }
                assessQueryDTO.setFactorQueryDTOList(factorQueryDTOList);
                assessQueryDTOList.add(assessQueryDTO);
                if (!isBegin){
                    assessQueryDTOList.add(assessQueryDTO);
                }
            }
        }
        searchResult.setData(assessQueryDTOList);
        searchResult.setTotal(pageResult.getTotalElements());
        searchResult.setCount(assessQueryDTOList.size());
        return searchResult;
    }