From 8586161442cbe058fae93bfd35a468485b9b505e Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 30 六月 2025 21:15:46 +0800
Subject: [PATCH] bug修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java |   53 +++++++++++++++++++++++++++++++++++------------------
 1 files changed, 35 insertions(+), 18 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java
index 3db12d7..5b49d0e 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java
@@ -111,25 +111,42 @@
                 }
             }
             if(roleType == 4){
-                // 查询检验报告
-                List<TInspectionReport> inspectionReports = inspectionReportService.list(Wrappers.lambdaQuery(TInspectionReport.class)
-                        .eq(TInspectionReport::getStatus, 1));
-                if (!CollectionUtils.isEmpty(inspectionReports)) {
-                    List<String> dispatchIds = inspectionReports.stream().map(TInspectionReport::getDispatchId).distinct().collect(Collectors.toList());
-                    List<String> dispatchIds1 = query.getDispatchIds();
-                    Iterator<String> iterator = dispatchIds1.iterator();
-                    while (iterator.hasNext()) {
-                        String next = iterator.next();
-                        if (!dispatchIds.contains(next)) {
-                            iterator.remove();
+                // 查询当前用户所在的项目组
+                List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class)
+                        .eq(TProjectTeamStaff::getUserId, userId));
+                if (!CollectionUtils.isEmpty(projectTeamStaffs)) {
+                    List<String> teamIds = projectTeamStaffs.stream().map(TProjectTeamStaff::getTeamId).distinct().collect(Collectors.toList());
+                    List<TProjectProposal> projectProposals = projectProposalService.list(Wrappers.lambdaQuery(TProjectProposal.class)
+                            .in(TProjectProposal::getTeamId, teamIds));
+                    if (!CollectionUtils.isEmpty(projectProposals)) {
+                        List<String> projectIds = projectProposals.stream().map(TProjectProposal::getId).collect(Collectors.toList());
+                        List<TExperimentDispatch> experimentDispatches = experimentDispatchService.list(Wrappers.lambdaQuery(TExperimentDispatch.class)
+                                .in(TExperimentDispatch::getProposalId, projectIds));
+                        if (!CollectionUtils.isEmpty(experimentDispatches)) {
+                            List<String> dispatchIds2 = experimentDispatches.stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
+                            // 查询检验报告
+                            List<TInspectionReport> inspectionReports = inspectionReportService.list(Wrappers.lambdaQuery(TInspectionReport.class)
+                                    .eq(TInspectionReport::getStatus, 2)
+                                    .in(TInspectionReport::getDispatchId, dispatchIds2));
+                            if (!CollectionUtils.isEmpty(inspectionReports)) {
+                                List<String> dispatchIds = inspectionReports.stream().map(TInspectionReport::getDispatchId).distinct().collect(Collectors.toList());
+                                List<String> dispatchIds1 = query.getDispatchIds();
+                                Iterator<String> iterator = dispatchIds1.iterator();
+                                while (iterator.hasNext()) {
+                                    String next = iterator.next();
+                                    if (dispatchIds.contains(next)) {
+                                        iterator.remove();
+                                    }
+                                }
+                                //                    if(CollectionUtils.isEmpty(dispatchIds1)){
+                                //                        List<String> id = new ArrayList<>();
+                                //                        id.add("-1");
+                                //                        query.setDispatchIds(id);
+                                //                    }else {
+                                query.setDispatchIds(dispatchIds1);
+                                //                    }
+                            }
                         }
-                    }
-                    if(CollectionUtils.isEmpty(dispatchIds1)){
-                        List<String> id = new ArrayList<>();
-                        id.add("-1");
-                        query.setDispatchIds(id);
-                    }else {
-                        query.setDispatchIds(dispatchIds1);
                     }
                 }
             }

--
Gitblit v1.7.1