From 86e6fdd16902a45921d255e1f40ba5dc6f115aa6 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期四, 03 四月 2025 10:39:30 +0800
Subject: [PATCH] 逻辑调整

---
 src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/req/ExperimentInsertReqBO.java  |    1 +
 src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java |   31 ++++++++++++++++++-------------
 src/main/java/com/gkhy/labRiskManage/application/experiment/dto/bo/ExperimentAppInsertBO.java      |    2 ++
 src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java |   16 ++++++++++------
 4 files changed, 31 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/req/ExperimentInsertReqBO.java b/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/req/ExperimentInsertReqBO.java
index 0ee9811..4edec27 100644
--- a/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/req/ExperimentInsertReqBO.java
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/req/ExperimentInsertReqBO.java
@@ -28,6 +28,7 @@
      * 实验负责人id
      */
     private Long liabilityUserId;
+    private String liabilityUser;
     private String liabilityUserPhone;
     /**
      * 安全负责人id
diff --git a/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/bo/ExperimentAppInsertBO.java b/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/bo/ExperimentAppInsertBO.java
index 75df63d..a7d55f2 100644
--- a/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/bo/ExperimentAppInsertBO.java
+++ b/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/bo/ExperimentAppInsertBO.java
@@ -31,6 +31,8 @@
      * 实验负责人id
      */
     private Long liabilityUserId;
+
+    private String liabilityUser;
     private String liabilityUserPhone;
 
     /**
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..d4768ab 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
@@ -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());
@@ -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());
@@ -619,15 +621,17 @@
                 if (!ObjectUtils.isEmpty(queryBO.getAssessLevel())){
                     predicateList.add(criteriaBuilder.in(root.get("id")).value(ids));
                 }
-                if(roleTag == UserTagEnum.USER_TAG_0.getCode()){
+                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("liabilityUserId"), currentUserId),
+                            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()));
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java
index e720259..516f482 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/RiskAssessPlanServiceImpl.java
@@ -372,14 +372,14 @@
                 Join<RiskAssessPlan, RiskAssessPlanEvaluateUser> evaluateUserJoin = root.join("riskAssessPlanEvaluateUsers", JoinType.LEFT);
 
                 if (roleTag == UserTagEnum.USER_TAG_0.getCode()) {
-
+                    predicateList.add(criteriaBuilder.equal(root.get("planUserId"), currentUserId));
                     //此处应有谁能查询:辨识专家,评价专家,实验负责人(此处未存相关信息,以实验id为条件查询)
-                    predicateList.add(criteriaBuilder.or(
-                                    criteriaBuilder.equal(identificationUserJoin.get("identificationUserId"), currentUserId),
-                                    criteriaBuilder.equal(evaluateUserJoin.get("evaluateUserId"), currentUserId),
-                                    criteriaBuilder.in(root.get("experimentId")).value(experimentIdList)
-                            )
-                    );
+//                    predicateList.add(criteriaBuilder.or(
+//                                    criteriaBuilder.equal(identificationUserJoin.get("identificationUserId"), currentUserId),
+//                                    criteriaBuilder.equal(evaluateUserJoin.get("evaluateUserId"), currentUserId),
+//                                    criteriaBuilder.in(root.get("experimentId")).value(experimentIdList)
+//                            )
+//                    );
                 }
                 query.groupBy(root.get("id"));
                 predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"), StatusEnum.DELETE_NOT.getCode()));
@@ -1174,6 +1174,7 @@
                         predicateList.add(criteriaBuilder.equal(root.get("planExecStatus"), queryParam.getPlanExecStatus()));
                     }
                 }
+
                 if (queryParam.getTag() == 2) {
                     predicateList.add(criteriaBuilder.isNotNull(root.get("identificationTime")));
                 }
@@ -1188,14 +1189,18 @@
                 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为条件查询)
-                    predicateList.add(criteriaBuilder.or(
-                                    criteriaBuilder.equal(identificationUserJoin.get("identificationUserId"), currentUserId),
-                                    criteriaBuilder.equal(evaluateUserJoin.get("evaluateUserId"), currentUserId),
-                                    criteriaBuilder.in(root.get("experimentId")).value(experimentIdList)
-                            )
-                    );
+                    //predicateList.add(criteriaBuilder.in(root.get("experimentId")).value(experimentIdList));
 //                    predicateList.add(criteriaBuilder.or(
 //                                    criteriaBuilder.equal(root.get("identificationUserId"), currentUserId),
 //                                    criteriaBuilder.equal(root.get("evaluateUserId"), currentUserId),

--
Gitblit v1.9.2