From bd4830badb61f6a888218a663f3d1bc36b8056c8 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 23 七月 2025 15:57:06 +0800
Subject: [PATCH] bug修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java
index 56cea19..367cefc 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java
@@ -496,9 +496,24 @@
         if (!list.isEmpty()) {
             tResultWorkEvaluateDetailVO.setEndTime(list.get(0).getEvaluateTime());
         }
-        Long count = experimentSchemeService.lambdaQuery().eq(TExperimentScheme::getDispatchId, resultWorkEvaluate.getDispatchId())
-                .eq(TExperimentScheme::getStatus, 3).count();
-        tResultWorkEvaluateDetailVO.setTermination(count.intValue());
+        // 查询项目组总的失败次数
+        String teamId = resultWorkEvaluate.getTeamId();
+        List<String> projectProposalIds = projectProposalService.lambdaQuery().eq(TProjectProposal::getTeamId, teamId).list()
+                .stream().map(TProjectProposal::getId).collect(Collectors.toList());
+        if (projectProposalIds.isEmpty()){
+            tResultWorkEvaluateDetailVO.setTermination(0);
+        }else{
+            List<String> experimentDispatchIds = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getProposalId, projectProposalIds).list()
+                    .stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
+            if (experimentDispatchIds.isEmpty()){
+                tResultWorkEvaluateDetailVO.setTermination(0);
+            }else{
+                Long count = experimentSchemeService.lambdaQuery().in(TExperimentScheme::getDispatchId, experimentDispatchIds)
+                        .eq(TExperimentScheme::getStatus, 3).count();
+                tResultWorkEvaluateDetailVO.setTermination(count.intValue());
+            }
+        }
+
         return R.ok(tResultWorkEvaluateDetailVO);
     }
 

--
Gitblit v1.7.1