heheng
2025-05-16 8485affcb0d4de05059d80cb1e844d6b18291654
src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java
@@ -181,8 +181,8 @@
        BeanUtils.copyProperties(experimentAppInsertBO, experimentInfo);
        experimentInfo.setStagingTag(ExperimentStagingEnum.SAVE.getValue());
        experimentInfo.setDeleteStatus(StatusEnum.DELETE_NOT.getCode().byteValue());
        experimentInfo.setLiabilityUser(operator.getName());
        experimentInfo.setLiabilityUserId(currentUserId);
//        experimentInfo.setLiabilityUser(operator.getName());
//        experimentInfo.setLiabilityUserId(currentUserId);
        experimentInfo.setStage(ExperimentStageEnum.NOT_EVALUATION.getValue());
        experimentInfo.setStatus(ExperimentStatusEnum.NOT_APPLY.getValue());
        experimentInfo.setExperimentTag(ExperimentTagEnum.NEW_CREATE.getValue());
@@ -204,8 +204,8 @@
        BeanUtils.copyProperties(experimentAppInsertBO, experimentInfo);
        experimentInfo.setStagingTag(ExperimentStagingEnum.NOT_SAVE.getValue());
        experimentInfo.setDeleteStatus(StatusEnum.DELETE_NOT.getCode().byteValue());
        experimentInfo.setLiabilityUser(operator.getName());
        experimentInfo.setLiabilityUserId(currentUserId);
        experimentInfo.setLiabilityUser(experimentAppInsertBO.getLiabilityUser());
        experimentInfo.setLiabilityUserId(experimentAppInsertBO.getLiabilityUserId());
        experimentInfo.setStage(ExperimentStageEnum.NOT_EVALUATION.getValue());
        experimentInfo.setStatus(ExperimentStatusEnum.NOT_APPLY.getValue());
        experimentInfo.setExperimentTag(ExperimentTagEnum.NEW_CREATE.getValue());
@@ -334,8 +334,8 @@
        BeanUtils.copyProperties(experimentAppInsertBO, experimentInfo);
        experimentInfo.setStagingTag(ExperimentStagingEnum.SAVE.getValue());
        experimentInfo.setDeleteStatus(StatusEnum.DELETE_NOT.getCode().byteValue());
        experimentInfo.setLiabilityUserId(currentUserId);
        experimentInfo.setLiabilityUser(operator.getName());
//        experimentInfo.setLiabilityUserId(currentUserId);
//        experimentInfo.setLiabilityUser(operator.getName());
        experimentInfo.setStage(ExperimentStageEnum.NOT_EVALUATION.getValue());
        experimentInfo.setStatus(ExperimentStatusEnum.NOT_APPLY.getValue());
        experimentInfo.setExperimentTag(ExperimentTagEnum.AREADLY_DEVELOP.getValue());
@@ -357,8 +357,10 @@
        BeanUtils.copyProperties(experimentAppInsertBO, experimentInfo);
        experimentInfo.setStagingTag(ExperimentStagingEnum.NOT_SAVE.getValue());
        experimentInfo.setDeleteStatus(StatusEnum.DELETE_NOT.getCode().byteValue());
        experimentInfo.setLiabilityUserId(currentUserId);
        experimentInfo.setLiabilityUser(operator.getName());
        experimentInfo.setLiabilityUserId(experimentAppInsertBO.getLiabilityUserId());
        experimentInfo.setLiabilityUser(experimentAppInsertBO.getLiabilityUser());
//        experimentInfo.setLiabilityUserId(currentUserId);
//        experimentInfo.setLiabilityUser(operator.getName());
        experimentInfo.setStage(ExperimentStageEnum.NOT_EVALUATION.getValue());
        experimentInfo.setStatus(ExperimentStatusEnum.NOT_APPLY.getValue());
        experimentInfo.setExperimentTag(ExperimentTagEnum.AREADLY_DEVELOP.getValue());
@@ -610,6 +612,9 @@
                if (StrUtil.isNotBlank(queryBO.getExperimentName())){
                    predicateList.add(criteriaBuilder.like(root.get("experimentName"), '%'+ queryBO.getExperimentName()+'%'));
                }
                if (!ObjectUtils.isEmpty(queryBO.getExperimentId())){
                    predicateList.add(criteriaBuilder.equal(root.get("id"), queryBO.getExperimentId()));
                }
                if (!ObjectUtils.isEmpty(queryBO.getStartTime())){
                    predicateList.add(criteriaBuilder.greaterThanOrEqualTo(root.get("createTime"), queryBO.getStartTime()));
                }
@@ -619,15 +624,20 @@
                if (!ObjectUtils.isEmpty(queryBO.getAssessLevel())){
                    predicateList.add(criteriaBuilder.in(root.get("id")).value(ids));
                }
                if(roleTag == UserTagEnum.USER_TAG_0.getCode()){
                    Join<ExperimentInfo, RiskAssessPlan> experimentJion = root.join("riskAssessPlans", JoinType.LEFT);
                    predicateList.add(criteriaBuilder.or(
                            criteriaBuilder.equal(root.get("liabilityUserId"), currentUserId),
                            criteriaBuilder.equal(experimentJion.get("identificationUserId"), currentUserId),
                            criteriaBuilder.equal(experimentJion.get("evaluateUserId"), currentUserId))
                    );
                    query.groupBy(root.get("id"));
                if (ObjectUtils.isEmpty(queryBO.getExperimentId())){
                    if(roleTag == UserTagEnum.USER_TAG_0.getCode() || roleTag == UserTagEnum.USER_TAG_1.getCode()){
                        Join<ExperimentInfo, RiskAssessPlan> experimentJion = root.join("riskAssessPlans", JoinType.LEFT);
                        //criteriaBuilder.equal(root.get("liabilityUserId"), currentUserId),
                        predicateList.add(criteriaBuilder.or(
                                criteriaBuilder.equal(root.get("safeLiabilityUserId"), currentUserId),
                                criteriaBuilder.equal(experimentJion.get("identificationUserId"), currentUserId),
                                criteriaBuilder.equal(experimentJion.get("evaluateUserId"), currentUserId))
                        );
                        query.groupBy(root.get("id"));
                    }
                }
                if (!ObjectUtils.isEmpty(ExperimentTypeEnum.prase(queryBO.getExperimentType()))){
                    Join<ExperimentInfo, ExperimentAndType> typeJoin = root.join("types", JoinType.LEFT);
                    predicateList.add(criteriaBuilder.equal(typeJoin.get("typeId"), queryBO.getExperimentType()));