From 9cb78a5414cdbfdd59931b14759bf9800d275448 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 19 五月 2025 14:39:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java |  665 +++++++++++++++++++++++++++++--------------------------
 1 files changed, 352 insertions(+), 313 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 17ba696..5fba2d1 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
@@ -3,12 +3,15 @@
 
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.basic.PageInfo;
 import com.ruoyi.common.core.domain.BaseModel;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
+import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.framework.web.service.TokenService;
+import com.ruoyi.system.dto.TQaTestItemDTO;
 import com.ruoyi.system.model.*;
 import com.ruoyi.system.query.TQaTestItemReportQuery;
 import com.ruoyi.system.query.TResultWorkEvaluateQuery;
@@ -30,12 +33,13 @@
 
 /**
  * <p>
- * 实验员工作评定 前端控制器
+ * 实验结果工作评定 前端控制器
  * </p>
  *
  * @author xiaochen
  * @since 2025-04-08
  */
+@Api(tags = "实验结果工作评定管理")
 @RestController
 @RequestMapping("/t-result-work-evaluate")
 public class TResultWorkEvaluateController {
@@ -66,6 +70,22 @@
         this.projectTeamStaffService = projectTeamStaffService;
         this.sysUserService = sysUserService;
     }
+
+    /**
+     * 添加QA检测项管理管理
+     */
+    //@PreAuthorize("@ss.hasPermi('system:resultWorkEvaluate:add')")
+    @Log(title = "QA检测项管理信息-新增QA检测项管理", businessType = BusinessType.INSERT)
+    @ApiOperation(value = "添加QA检测项管理",response = TQaTestItemDTO.class)
+    @PostMapping(value = "/api/t-qa-test-item/add")
+    public R<Boolean> add(@RequestBody String param) {
+        TQaTestItemDTO dto = JSON.parseObject(param,TQaTestItemDTO.class);
+//        resultWorkEvaluateService.save(dto);
+        return R.ok();
+    }
+
+
+
     @ApiOperation(value = "项目组总积分分页列表",tags = "项目组总积分",response = TQaTestItemReportQuery.class)
     @PostMapping(value = "/api/t-result-work-evaluate/pageList")
     public R<PageInfo<TResultWorkEvaluateVO>> pageList(@RequestBody String param) {
@@ -690,7 +710,7 @@
     @GetMapping(value = "/open/t-result-work-evaluate/getDetailByIdLeftTwo")
     public R<TResultWorkEvaluateDetailVO> getDetailByIdLeftTwo(@RequestParam String id) {
         TResultWorkEvaluateDetailVO tResultWorkEvaluateDetailVO = new TResultWorkEvaluateDetailVO();
-
+        List<TResultWorkEvaluateDetailUserVO> tResultWorkEvaluateDetailUserVOS = new ArrayList<>();
         TResultWorkEvaluate resultWorkEvaluate = tResultWorkEvaluateService.getById(id);
         TProjectTeam projectTeam = projectTeamService.getById(resultWorkEvaluate.getTeamId());
         TProjectTeamStaff one = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getTeamId, resultWorkEvaluate.getTeamId()).eq(TProjectTeamStaff::getRoleType, 3).last("limit 1")
@@ -701,339 +721,358 @@
                 .eq(TProjectTeamStaff::getRoleType, 5).eq(TProjectTeamStaff::getTeamId, resultWorkEvaluate.getTeamId()).list()
                 .stream().map(TProjectTeamStaff::getUserId).collect(Collectors.toList());
         List<SysUser> user5 = new ArrayList<>();
-        for (Long l : role5) {
-            SysUser sysUser = sysUserService.selectUserById(l);
-            if (sysUser != null) {
-                user5.add(sysUser);
+        SysUser sysUser1 = sysUserService.selectUserById(tokenService.getLoginUser().getUserId());
+        if (sysUser1.getRoleType()==4||sysUser1.getRoleType()==5){
+            //只能查看自己的
+            user5.add(sysUser1);
+        }else{
+            for (Long l : role5) {
+                SysUser sysUser = sysUserService.selectUserById(l);
+                if (sysUser != null) {
+                    user5.add(sysUser);
+                }
             }
         }
-        Long userId = one.getUserId();
+
 
         List<TFeasibilityStudyReport> total = feasibilityStudyReportService.lambdaQuery()
                 .eq(TFeasibilityStudyReport::getStatus,3)
-                .eq(TFeasibilityStudyReport::getEvaluatePersonId, userId).list();
+                .eq(TFeasibilityStudyReport::getTeamId, resultWorkEvaluate.getTeamId()).list();
         List<TResultWorkEvaluateDetailEngineerVO> tResultWorkEvaluateDetailEngineerVOS = new ArrayList<>();
-
-        // 开发阶段
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO2 = new TResultWorkEvaluateDetailEngineerVO();
-        List<Integer> status = new ArrayList<>();
-        status.add(-1);
-        status.add(1);
-        status.add(3);
-        status.add(4);
-        status.add(5);
-        List<TProjectProposal> list2 = projectProposalService.lambdaQuery().eq(TProjectProposal::getCommitUserId, userId)
-                .notIn(TProjectProposal::getAuditStatus, status).list();
-        List<String> collect5 = list2.stream().filter(e -> e.getProjectStage().equals(1)).map(TProjectProposal::getId).collect(Collectors.toList());
-        if (collect5.isEmpty()){
-            collect5.add("0");
-        }
-        List<String> collect6 = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getProposalId, collect5)
-                .ne(TExperimentDispatch::getStatus, -1)
-                .ne(TExperimentDispatch::getStatus, 1).list().stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
-        if (collect6.isEmpty()){
-            collect6.add("0");
-        }
-        List<Integer> status1 = new ArrayList<>();
-        status1.add(-1);
-        status1.add(1);
-        status1.add(2);
-        status1.add(4);
-        List<TResultWorkEvaluate> list1 = tResultWorkEvaluateService.lambdaQuery().in(TResultWorkEvaluate::getDispatchId, collect6).list();
-        int tempDetail2 = 0;
-        for (TResultWorkEvaluate tResultWorkEvaluate : list1) {
-            Integer evaluateOne = tResultWorkEvaluate.getEvaluateOne();
-            switch (evaluateOne){
-                case 1:
-
-                    tempDetail2+=2;
-                    break;
-                case 2:
-                    tempDetail2+=1;
-
-                    break;
-
+        for (SysUser sysUser : user5) {
+            TResultWorkEvaluateDetailUserVO tResultWorkEvaluateDetailUserVO = new TResultWorkEvaluateDetailUserVO();
+            tResultWorkEvaluateDetailUserVO.setUserName(sysUser.getNickName());
+            // 开发阶段
+            List<TResultWorkEvaluate> list1 = tResultWorkEvaluateService.lambdaQuery()
+                    .eq(TResultWorkEvaluate::getEvaluateType,2)
+                    .eq(TResultWorkEvaluate::getUserId,sysUser.getUserId())
+                    .eq(TResultWorkEvaluate::getTeamId, resultWorkEvaluate.getTeamId()).list();
+            // 调度ids
+            List<String> collect = list1.stream().map(TResultWorkEvaluate::getDispatchId).collect(Collectors.toList());
+            if (collect.isEmpty()){
+                collect.add("0");
             }
-            Integer evaluateTwo = tResultWorkEvaluate.getEvaluateTwo();
-            switch (evaluateTwo){
-                case 1:
-                    tempDetail2+=2;
-                    break;
-                case 2:
-                    tempDetail2+=1;
-
-                    break;
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO2 = new TResultWorkEvaluateDetailEngineerVO();
+            List<Integer> status = new ArrayList<>();
+            status.add(-1);
+            status.add(1);
+            status.add(3);
+            status.add(4);
+            status.add(5);
+            // 课题方案ids
+            List<String> collect6 = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getId, collect)
+                    .ne(TExperimentDispatch::getStatus, -1)
+                    .ne(TExperimentDispatch::getStatus, 1).list().stream().map(TExperimentDispatch::getProposalId).collect(Collectors.toList());
+            if (collect6.isEmpty()){
+                collect6.add("0");
             }
-            Integer evaluateThree = tResultWorkEvaluate.getEvaluateThree();
-            switch (evaluateThree){
-                case 1:
-                    tempDetail2+=2;
+            List<TProjectProposal> list2 = projectProposalService.lambdaQuery().in(TProjectProposal::getId, collect6)
+                    .notIn(TProjectProposal::getAuditStatus, status).list();
+            List<String> collect5 = list2.stream().filter(e -> e.getProjectStage().equals(1)).map(TProjectProposal::getId).collect(Collectors.toList());
 
-                    break;
-                case 2:
-                    tempDetail2+=1;
-                    break;
+            if (collect6.isEmpty()){
+                collect6.add("0");
             }
-            Integer evaluateFour = tResultWorkEvaluate.getEvaluateFour();
-            switch (evaluateFour){
-                case 1:
-                    tempDetail2+=2;
+            List<Integer> status1 = new ArrayList<>();
+            status1.add(-1);
+            status1.add(1);
+            status1.add(2);
+            status1.add(4);
+            int tempDetail2 = 0;
+            for (TResultWorkEvaluate tResultWorkEvaluate : list1) {
+                Integer evaluateOne = tResultWorkEvaluate.getEvaluateOne();
+                switch (evaluateOne){
+                    case 1:
 
-                    break;
-                case 2:
-                    tempDetail2+=1;
-                    break;
-            }
-            Integer evaluateFive = tResultWorkEvaluate.getEvaluateFive();
-            switch (evaluateFive){
-                case 1:
-                    tempDetail2+=2;
+                        tempDetail2+=2;
+                        break;
+                    case 2:
+                        tempDetail2+=1;
 
-                    break;
-                case 2:
-                    tempDetail2+=1;
-                    break;
-            }
-            Integer evaluateSix = tResultWorkEvaluate.getEvaluateSix();
-            switch (evaluateSix){
-                case 1:
-                    tempDetail2-=3;
-                    break;
-            }
-        }
-        if (!list1.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO2.setEndTime(list1.get(list1.size()-1).getEvaluateTime());
-        }
-        tResultWorkEvaluateDetailEngineerVO2.setStartTime(projectTeam.getCreateTime());
+                        break;
 
-        tResultWorkEvaluateDetailEngineerVO2.setCount(list1.size());
-        tResultWorkEvaluateDetailEngineerVO2.setIntegral(tempDetail2);
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO2);
+                }
+                Integer evaluateTwo = tResultWorkEvaluate.getEvaluateTwo();
+                switch (evaluateTwo){
+                    case 1:
+                        tempDetail2+=2;
+                        break;
+                    case 2:
+                        tempDetail2+=1;
 
-        // 中试试验阶段
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO3 = new TResultWorkEvaluateDetailEngineerVO();
+                        break;
+                }
+                Integer evaluateThree = tResultWorkEvaluate.getEvaluateThree();
+                switch (evaluateThree){
+                    case 1:
+                        tempDetail2+=2;
 
-        List<String> collect7 = list2.stream().filter(e -> e.getProjectStage().equals(2)).map(TProjectProposal::getId).collect(Collectors.toList());
-        if (collect7.isEmpty()){
-            collect7.add("0");
-        }
-        List<String> collect8 = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getProposalId, collect7)
-                .ne(TExperimentDispatch::getStatus, -1)
-                .ne(TExperimentDispatch::getStatus, 1).list().stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
-        if (collect8.isEmpty()){
-            collect8.add("0");
-        }
-        List<Integer> status2 = new ArrayList<>();
-        status2.add(-1);
-        status2.add(1);
-        status2.add(2);
-        status2.add(4);
-        List<TResultWorkEvaluate> list3 = tResultWorkEvaluateService.lambdaQuery().in(TResultWorkEvaluate::getDispatchId, collect8).list();
-        int tempDetail3 = 0;
-        for (TResultWorkEvaluate tResultWorkEvaluate : list3) {
-            Integer evaluateOne = tResultWorkEvaluate.getEvaluateOne();
-            switch (evaluateOne){
-                case 1:
+                        break;
+                    case 2:
+                        tempDetail2+=1;
+                        break;
+                }
+                Integer evaluateFour = tResultWorkEvaluate.getEvaluateFour();
+                switch (evaluateFour){
+                    case 1:
+                        tempDetail2+=2;
 
-                    tempDetail3+=2;
-                    break;
-                case 2:
-                    tempDetail3+=1;
+                        break;
+                    case 2:
+                        tempDetail2+=1;
+                        break;
+                }
+                Integer evaluateFive = tResultWorkEvaluate.getEvaluateFive();
+                switch (evaluateFive){
+                    case 1:
+                        tempDetail2+=2;
 
-                    break;
-
-            }
-            Integer evaluateTwo = tResultWorkEvaluate.getEvaluateTwo();
-            switch (evaluateTwo){
-                case 1:
-                    tempDetail3+=2;
-                    break;
-                case 2:
-                    tempDetail3+=1;
-
-                    break;
-            }
-            Integer evaluateThree = tResultWorkEvaluate.getEvaluateThree();
-            switch (evaluateThree){
-                case 1:
-                    tempDetail3+=2;
-
-                    break;
-                case 2:
-                    tempDetail3+=1;
-                    break;
-            }
-            Integer evaluateFour = tResultWorkEvaluate.getEvaluateFour();
-            switch (evaluateFour){
-                case 1:
-                    tempDetail3+=2;
-
-                    break;
-                case 2:
-                    tempDetail3+=1;
-                    break;
-            }
-            Integer evaluateFive = tResultWorkEvaluate.getEvaluateFive();
-            switch (evaluateFive){
-                case 1:
-                    tempDetail3+=2;
-
-                    break;
-                case 2:
-                    tempDetail3+=1;
-                    break;
-            }
-            Integer evaluateSix = tResultWorkEvaluate.getEvaluateSix();
-            switch (evaluateSix){
-                case 1:
-                    tempDetail3-=3;
-                    break;
-            }
-        }
-        if (!list3.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO3.setStartTime(list3.get(0).getEvaluateTime());
-            tResultWorkEvaluateDetailEngineerVO3.setEndTime(list3.get(list3.size()-1).getEvaluateTime());
-        }
-        tResultWorkEvaluateDetailEngineerVO3.setCount(list3.size());
-        tResultWorkEvaluateDetailEngineerVO3.setIntegral(tempDetail3);
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO3);
-        // 验证试验阶段
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO4 = new TResultWorkEvaluateDetailEngineerVO();
-
-        List<String> collect10 = list2.stream().filter(e -> e.getProjectStage().equals(2)).map(TProjectProposal::getId).collect(Collectors.toList());
-        if (collect10.isEmpty()){
-            collect10.add("0");
-        }
-        List<String> collect11 = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getProposalId, collect10)
-                .ne(TExperimentDispatch::getStatus, -1)
-                .ne(TExperimentDispatch::getStatus, 1).list().stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
-        if (collect11.isEmpty()){
-            collect11.add("0");
-        }
-        List<TResultWorkEvaluate> list4 = tResultWorkEvaluateService.lambdaQuery().in(TResultWorkEvaluate::getDispatchId, collect11).list();
-        int tempDetail4 = 0;
-        for (TResultWorkEvaluate tResultWorkEvaluate : list4) {
-            Integer evaluateOne = tResultWorkEvaluate.getEvaluateOne();
-            switch (evaluateOne){
-                case 1:
-
-                    tempDetail4+=2;
-                    break;
-                case 2:
-                    tempDetail4+=1;
-
-                    break;
-
-            }
-            Integer evaluateTwo = tResultWorkEvaluate.getEvaluateTwo();
-            switch (evaluateTwo){
-                case 1:
-                    tempDetail4+=2;
-                    break;
-                case 2:
-                    tempDetail4+=1;
-
-                    break;
-            }
-            Integer evaluateThree = tResultWorkEvaluate.getEvaluateThree();
-            switch (evaluateThree){
-                case 1:
-                    tempDetail4+=2;
-
-                    break;
-                case 2:
-                    tempDetail4+=1;
-                    break;
-            }
-            Integer evaluateFour = tResultWorkEvaluate.getEvaluateFour();
-            switch (evaluateFour){
-                case 1:
-                    tempDetail4+=2;
-
-                    break;
-                case 2:
-                    tempDetail4+=1;
-                    break;
-            }
-            Integer evaluateFive = tResultWorkEvaluate.getEvaluateFive();
-            switch (evaluateFive){
-                case 1:
-                    tempDetail4+=2;
-
-                    break;
-                case 2:
-                    tempDetail4+=1;
-                    break;
-            }
-            Integer evaluateSix = tResultWorkEvaluate.getEvaluateSix();
-            switch (evaluateSix){
-                case 1:
-                    tempDetail4-=3;
-                    break;
-            }
-        }
-        if (!list4.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO4.setStartTime(list4.get(0).getEvaluateTime());
-            tResultWorkEvaluateDetailEngineerVO4.setEndTime(list4.get(list4.size()-1).getEvaluateTime());
-        }
-        tResultWorkEvaluateDetailEngineerVO4.setCount(list4.size());
-        tResultWorkEvaluateDetailEngineerVO4.setIntegral(tempDetail4);
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO4);
-        // 工艺开发工具
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO5 = new TResultWorkEvaluateDetailEngineerVO();
-        List<TFeasibilityStudyReport> collect12 = total.stream().filter(e -> e.getReportType().equals(3)).collect(Collectors.toList());
-        int  tempDetail15= 0 ;
-        for (TFeasibilityStudyReport tFeasibilityStudyReport : collect12) {
-            if (StringUtils.hasLength(tFeasibilityStudyReport.getEvaluateScore())){
-                for (String s : tFeasibilityStudyReport.getEvaluateScore().split(",")) {
-                    tempDetail15+=Integer.parseInt(s);
+                        break;
+                    case 2:
+                        tempDetail2+=1;
+                        break;
+                }
+                Integer evaluateSix = tResultWorkEvaluate.getEvaluateSix();
+                switch (evaluateSix){
+                    case 1:
+                        tempDetail2-=3;
+                        break;
                 }
             }
-        }
-        tResultWorkEvaluateDetailEngineerVO5.setCount(collect12.size());
-        tResultWorkEvaluateDetailEngineerVO5.setIntegral(tempDetail15);
-        if (!collect12.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO5.setStartTime(collect12.get(0).getEvaluateTime());
-            tResultWorkEvaluateDetailEngineerVO5.setEndTime(collect12.get(collect12.size()-1).getEvaluateTime());
-        }
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO5);
-        // 验证与发布
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO6 = new TResultWorkEvaluateDetailEngineerVO();
-        List<TFeasibilityStudyReport> collect13 = total.stream().filter(e -> e.getReportType().equals(3)).collect(Collectors.toList());
-        int  tempDetail16= 0 ;
-        for (TFeasibilityStudyReport tFeasibilityStudyReport : collect13) {
-            if (StringUtils.hasLength(tFeasibilityStudyReport.getEvaluateScore())){
-                for (String s : tFeasibilityStudyReport.getEvaluateScore().split(",")) {
-                    tempDetail16+=Integer.parseInt(s);
+            if (!list1.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO2.setEndTime(list1.get(list1.size()-1).getEvaluateTime());
+            }
+            tResultWorkEvaluateDetailEngineerVO2.setStartTime(projectTeam.getCreateTime());
+            tResultWorkEvaluateDetailEngineerVO2.setCount(collect5.size());
+            tResultWorkEvaluateDetailEngineerVO2.setIntegral(tempDetail2);
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO2);
+
+            // 中试试验阶段
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO3 = new TResultWorkEvaluateDetailEngineerVO();
+            List<String> collect7 = list2.stream().filter(e -> e.getProjectStage().equals(2)).map(TProjectProposal::getId).collect(Collectors.toList());
+            if (collect7.isEmpty()){
+                collect7.add("0");
+            }
+            List<String> collect8 = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getProposalId, collect7)
+                    .ne(TExperimentDispatch::getStatus, -1)
+                    .ne(TExperimentDispatch::getStatus, 1).list().stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
+            if (collect8.isEmpty()){
+                collect8.add("0");
+            }
+            List<Integer> status2 = new ArrayList<>();
+            status2.add(-1);
+            status2.add(1);
+            status2.add(2);
+            status2.add(4);
+            List<TResultWorkEvaluate> list3 = tResultWorkEvaluateService.lambdaQuery().in(TResultWorkEvaluate::getDispatchId, collect8).list();
+            int tempDetail3 = 0;
+            for (TResultWorkEvaluate tResultWorkEvaluate : list3) {
+                Integer evaluateOne = tResultWorkEvaluate.getEvaluateOne();
+                switch (evaluateOne){
+                    case 1:
+
+                        tempDetail3+=2;
+                        break;
+                    case 2:
+                        tempDetail3+=1;
+
+                        break;
+
+                }
+                Integer evaluateTwo = tResultWorkEvaluate.getEvaluateTwo();
+                switch (evaluateTwo){
+                    case 1:
+                        tempDetail3+=2;
+                        break;
+                    case 2:
+                        tempDetail3+=1;
+
+                        break;
+                }
+                Integer evaluateThree = tResultWorkEvaluate.getEvaluateThree();
+                switch (evaluateThree){
+                    case 1:
+                        tempDetail3+=2;
+
+                        break;
+                    case 2:
+                        tempDetail3+=1;
+                        break;
+                }
+                Integer evaluateFour = tResultWorkEvaluate.getEvaluateFour();
+                switch (evaluateFour){
+                    case 1:
+                        tempDetail3+=2;
+
+                        break;
+                    case 2:
+                        tempDetail3+=1;
+                        break;
+                }
+                Integer evaluateFive = tResultWorkEvaluate.getEvaluateFive();
+                switch (evaluateFive){
+                    case 1:
+                        tempDetail3+=2;
+
+                        break;
+                    case 2:
+                        tempDetail3+=1;
+                        break;
+                }
+                Integer evaluateSix = tResultWorkEvaluate.getEvaluateSix();
+                switch (evaluateSix){
+                    case 1:
+                        tempDetail3-=3;
+                        break;
                 }
             }
+            if (!list3.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO3.setStartTime(list3.get(0).getEvaluateTime());
+                tResultWorkEvaluateDetailEngineerVO3.setEndTime(list3.get(list3.size()-1).getEvaluateTime());
+            }
+            tResultWorkEvaluateDetailEngineerVO3.setCount(list3.size());
+            tResultWorkEvaluateDetailEngineerVO3.setIntegral(tempDetail3);
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO3);
+            // 验证试验阶段
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO4 = new TResultWorkEvaluateDetailEngineerVO();
+
+            List<String> collect10 = list2.stream().filter(e -> e.getProjectStage().equals(2)).map(TProjectProposal::getId).collect(Collectors.toList());
+            if (collect10.isEmpty()){
+                collect10.add("0");
+            }
+            List<String> collect11 = experimentDispatchService.lambdaQuery().in(TExperimentDispatch::getProposalId, collect10)
+                    .ne(TExperimentDispatch::getStatus, -1)
+                    .ne(TExperimentDispatch::getStatus, 1).list().stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
+            if (collect11.isEmpty()){
+                collect11.add("0");
+            }
+            List<TResultWorkEvaluate> list4 = tResultWorkEvaluateService.lambdaQuery().in(TResultWorkEvaluate::getDispatchId, collect11).list();
+            int tempDetail4 = 0;
+            for (TResultWorkEvaluate tResultWorkEvaluate : list4) {
+                Integer evaluateOne = tResultWorkEvaluate.getEvaluateOne();
+                switch (evaluateOne){
+                    case 1:
+
+                        tempDetail4+=2;
+                        break;
+                    case 2:
+                        tempDetail4+=1;
+
+                        break;
+
+                }
+                Integer evaluateTwo = tResultWorkEvaluate.getEvaluateTwo();
+                switch (evaluateTwo){
+                    case 1:
+                        tempDetail4+=2;
+                        break;
+                    case 2:
+                        tempDetail4+=1;
+
+                        break;
+                }
+                Integer evaluateThree = tResultWorkEvaluate.getEvaluateThree();
+                switch (evaluateThree){
+                    case 1:
+                        tempDetail4+=2;
+
+                        break;
+                    case 2:
+                        tempDetail4+=1;
+                        break;
+                }
+                Integer evaluateFour = tResultWorkEvaluate.getEvaluateFour();
+                switch (evaluateFour){
+                    case 1:
+                        tempDetail4+=2;
+
+                        break;
+                    case 2:
+                        tempDetail4+=1;
+                        break;
+                }
+                Integer evaluateFive = tResultWorkEvaluate.getEvaluateFive();
+                switch (evaluateFive){
+                    case 1:
+                        tempDetail4+=2;
+
+                        break;
+                    case 2:
+                        tempDetail4+=1;
+                        break;
+                }
+                Integer evaluateSix = tResultWorkEvaluate.getEvaluateSix();
+                switch (evaluateSix){
+                    case 1:
+                        tempDetail4-=3;
+                        break;
+                }
+            }
+            if (!list4.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO4.setStartTime(list4.get(0).getEvaluateTime());
+                tResultWorkEvaluateDetailEngineerVO4.setEndTime(list4.get(list4.size()-1).getEvaluateTime());
+            }
+            tResultWorkEvaluateDetailEngineerVO4.setCount(list4.size());
+            tResultWorkEvaluateDetailEngineerVO4.setIntegral(tempDetail4);
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO4);
+            // 工艺开发工具
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO5 = new TResultWorkEvaluateDetailEngineerVO();
+            List<TFeasibilityStudyReport> collect12 = total.stream().filter(e -> e.getReportType().equals(3)).collect(Collectors.toList());
+            int  tempDetail15= 0 ;
+            for (TFeasibilityStudyReport tFeasibilityStudyReport : collect12) {
+                if (StringUtils.hasLength(tFeasibilityStudyReport.getEvaluateScore())){
+                    for (String s : tFeasibilityStudyReport.getEvaluateScore().split(",")) {
+                        tempDetail15+=Integer.parseInt(s);
+                    }
+                }
+            }
+            tResultWorkEvaluateDetailEngineerVO5.setCount(collect12.size());
+            tResultWorkEvaluateDetailEngineerVO5.setIntegral(tempDetail15);
+            if (!collect12.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO5.setStartTime(collect12.get(0).getEvaluateTime());
+                tResultWorkEvaluateDetailEngineerVO5.setEndTime(collect12.get(collect12.size()-1).getEvaluateTime());
+            }
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO5);
+            // 验证与发布
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO6 = new TResultWorkEvaluateDetailEngineerVO();
+            List<TFeasibilityStudyReport> collect13 = total.stream().filter(e -> e.getReportType().equals(3)).collect(Collectors.toList());
+            int  tempDetail16= 0 ;
+            for (TFeasibilityStudyReport tFeasibilityStudyReport : collect13) {
+                if (StringUtils.hasLength(tFeasibilityStudyReport.getEvaluateScore())){
+                    for (String s : tFeasibilityStudyReport.getEvaluateScore().split(",")) {
+                        tempDetail16+=Integer.parseInt(s);
+                    }
+                }
+            }
+            tResultWorkEvaluateDetailEngineerVO6.setCount(collect13.size());
+            tResultWorkEvaluateDetailEngineerVO6.setIntegral(tempDetail16);
+            if (!collect13.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO6.setStartTime(collect13.get(0).getEvaluateTime());
+                tResultWorkEvaluateDetailEngineerVO6.setEndTime(collect13.get(collect13.size()-1).getEvaluateTime());
+            }
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO6);
+            // 立项报告
+            List<TProjectApprovalReport> list5 = projectApprovalReportService.lambdaQuery().orderByDesc(BaseModel::getCreateTime).eq(TProjectApprovalReport::getTeamId, projectTeam.getId()).eq(TProjectApprovalReport::getStatus, 2).list();
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO7 = new TResultWorkEvaluateDetailEngineerVO();
+            tResultWorkEvaluateDetailEngineerVO7.setCount(list5.size());
+            if (!list5.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO7.setEndTime(list5.get(list5.size()-1).getAuditTime());
+            }
+            tResultWorkEvaluateDetailEngineerVO7.setStartTime(projectTeam.getCreateTime());
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO7);
+            // todo 临床试验积分
+            List<TClinicalTrialPoints> list6 = clinicalTrialPointsService.lambdaQuery().eq(TClinicalTrialPoints::getTeamId, projectTeam.getId()).list();
+            TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO8 = new TResultWorkEvaluateDetailEngineerVO();
+            tResultWorkEvaluateDetailEngineerVO8.setCount(list6.size());
+            if (!list6.isEmpty()){
+                tResultWorkEvaluateDetailEngineerVO8.setEndTime(list6.get(list6.size()-1).getCreateTime());
+            }
+            tResultWorkEvaluateDetailEngineerVO8.setStartTime(projectTeam.getCreateTime());
+            tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO8);
+            tResultWorkEvaluateDetailUserVO.setList(tResultWorkEvaluateDetailEngineerVOS);
+            tResultWorkEvaluateDetailUserVOS.add(tResultWorkEvaluateDetailUserVO);
         }
-        tResultWorkEvaluateDetailEngineerVO6.setCount(collect13.size());
-        tResultWorkEvaluateDetailEngineerVO6.setIntegral(tempDetail16);
-        if (!collect13.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO6.setStartTime(collect13.get(0).getEvaluateTime());
-            tResultWorkEvaluateDetailEngineerVO6.setEndTime(collect13.get(collect13.size()-1).getEvaluateTime());
-        }
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO6);
-        // 立项报告
-        List<TProjectApprovalReport> list5 = projectApprovalReportService.lambdaQuery().orderByDesc(BaseModel::getCreateTime).eq(TProjectApprovalReport::getTeamId, projectTeam.getId()).eq(TProjectApprovalReport::getStatus, 2).list();
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO7 = new TResultWorkEvaluateDetailEngineerVO();
-        tResultWorkEvaluateDetailEngineerVO7.setCount(list5.size());
-        if (!list5.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO7.setEndTime(list5.get(list5.size()-1).getAuditTime());
-        }
-        tResultWorkEvaluateDetailEngineerVO7.setStartTime(projectTeam.getCreateTime());
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO7);
-        // todo 临床试验积分
-        List<TClinicalTrialPoints> list6 = clinicalTrialPointsService.lambdaQuery().eq(TClinicalTrialPoints::getTeamId, projectTeam.getId()).list();
-        TResultWorkEvaluateDetailEngineerVO tResultWorkEvaluateDetailEngineerVO8 = new TResultWorkEvaluateDetailEngineerVO();
-        tResultWorkEvaluateDetailEngineerVO8.setCount(list6.size());
-        if (!list6.isEmpty()){
-            tResultWorkEvaluateDetailEngineerVO8.setEndTime(list6.get(list6.size()-1).getCreateTime());
-        }
-        tResultWorkEvaluateDetailEngineerVO8.setStartTime(projectTeam.getCreateTime());
-        tResultWorkEvaluateDetailEngineerVOS.add(tResultWorkEvaluateDetailEngineerVO8);
-        tResultWorkEvaluateDetailVO.setEngineerList(tResultWorkEvaluateDetailEngineerVOS);
+
         return R.ok(tResultWorkEvaluateDetailVO);
     }
 }

--
Gitblit v1.7.1