From 946ca495daf6dd1409ff81e4de9c230c774a0844 Mon Sep 17 00:00:00 2001
From: 16639036659 <577530412@qq.com>
Date: 星期五, 10 十一月 2023 16:20:16 +0800
Subject: [PATCH] 风险等级问题处理,检索条件

---
 src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentInfoServiceImpl.java |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 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 f3b5b59..c9d64fb 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
@@ -532,6 +532,14 @@
         ExperimentInfoQueryBO queryBO = pageQuery.getSearchParams();
         UserInfoDomainDTO user = userDomainService.getUserById(currentUserId);
         int roleTag = GetRoleTagUtils.GetRoleTagUtils(user);
+
+        // TODO: 2023/11/10
+        List<ReportRiskAssessInfo> byLevel = reportRiskAssessInfoRepository.getByLevel(queryBO.getAssessLevel());
+        List<Long> ids = new ArrayList<>();
+        for (ReportRiskAssessInfo reportRiskAssessInfo : byLevel) {
+            ids.add(reportRiskAssessInfo.getExperimentId());
+        }
+
         Specification<ExperimentInfo> specification = new Specification<ExperimentInfo>() {
             @Override
             public Predicate toPredicate(Root<ExperimentInfo> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
@@ -555,7 +563,10 @@
                 if (!ObjectUtils.isEmpty(queryBO.getEndTime())){
                     predicateList.add(criteriaBuilder.lessThanOrEqualTo(root.get("createTime"), queryBO.getEndTime()));
                 }
-                if(roleTag == UserTagEnum.USER_TAG_0.getCode()){  // todo
+                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),

--
Gitblit v1.9.2