From 761bdc5b3f17df62aae1b424f2d2dabc11e844bc Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期五, 23 五月 2025 09:33:44 +0800
Subject: [PATCH] 变动大幅度版本

---
 src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java |   42 ++++++++++++++++++++++++++----------------
 1 files changed, 26 insertions(+), 16 deletions(-)

diff --git a/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java
index 150d579..d5ab93f 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java
+++ b/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()));

--
Gitblit v1.9.2