From 082bddee7df8a05ca95f473ec2643701d41a5213 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 08 十月 2026 11:09:01 +0800
Subject: [PATCH] 更新代码
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TStrainReportController.java | 50 ++++++++++++++++++++++++++++++--------------------
1 files changed, 30 insertions(+), 20 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TStrainReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TStrainReportController.java
index e75c5d4..d7ff148 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TStrainReportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TStrainReportController.java
@@ -16,20 +16,14 @@
import com.ruoyi.system.model.*;
import com.ruoyi.system.query.TStrainReportProjectQuery;
import com.ruoyi.system.query.TStrainReportQuery;
-import com.ruoyi.system.query.TTrainLibraryDetailQuery;
-import com.ruoyi.system.query.TTrainLibraryQuery;
import com.ruoyi.system.service.*;
import com.ruoyi.system.vo.*;
-import com.tencentcloudapi.tcaplusdb.v20190823.models.IdlFileInfo;
import io.swagger.annotations.ApiOperation;
-import jdk.nashorn.internal.parser.Token;
-import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
-import java.sql.Array;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@@ -202,7 +196,8 @@
LoginUser loginUser = tokenService.getLoginUser();
SysUser sysUser = sysUserService.selectUserById(loginUser.getUserId());
List<TStrainReport> tStrainReports = strainReportService.list(new LambdaQueryWrapper<TStrainReport>()
- .eq(TStrainReport::getStatus,3).eq(TStrainReport::getProjectId,id));
+ .eq(TStrainReport::getStatus,3).eq(TStrainReport::getProjectId,id)
+ .orderByDesc(TStrainReport::getEvaluateTime));
List<String> strainReportIds = tStrainReports.stream().map(TStrainReport::getId).collect(Collectors.toList());
if (strainReportIds.isEmpty())strainReportIds.add("0");
List<TStrainReportDetail> tStrainReportDetails = strainReportDetailService
@@ -258,12 +253,15 @@
}
tStrainReportDetailVO.setStartTime(project.getCreateTime());
TProjectTeamStaff projectTeamStaff = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getTeamId, project.getId())
- .eq(TProjectTeamStaff::getRoleType, 2).one();
+ .eq(TProjectTeamStaff::getRoleType, 2).last("limit 1").one();
List<TStrainReportDetailExperimentVO> tStrainReportDetailExperimentVOS = new ArrayList<>();
if (sysUser.getRoleType().equals("4")){
TStrainReportDetailExperimentVO tStrainReportDetailExperimentVO = new TStrainReportDetailExperimentVO();
tStrainReportDetailExperimentVO.setUserName(sysUser.getNickName());
- tStrainReportDetailExperimentVO.setHandleCount((int) tStrainReportDetails.stream().filter(e -> e.getExperimentId()!=null&&e.getExperimentId().equals(sysUser.getUserId() + "")).count());
+ tStrainReportDetailExperimentVO.setHandleCount((int) tStrainReportDetails.stream()
+ .filter(e -> e.getEvaluateHumanType().equals(1) && e.getReportType() == 1
+ && e.getExperimentId()!=null && e.getExperimentId().equals(sysUser.getUserId() + ""))
+ .count());
BigDecimal handleIntegral = tStrainReportDetails.stream()
.filter(e -> e.getEvaluateHumanType().equals(1)&&e.getExperimentId().equals(sysUser.getUserId()+"")
&&e.getReportType()==1)
@@ -272,9 +270,12 @@
.orElse(BigDecimal.ZERO);
tStrainReportDetailExperimentVO.setHandleIntegral(handleIntegral);
- List<TStrainReportDetail> strainReportDetails = tStrainReportDetails.stream().filter(e -> e.getExperimentId().equals(sysUser.getUserId() + "")).collect(Collectors.toList());
+ List<TStrainReportDetail> strainReportDetails = tStrainReportDetails.stream()
+ .filter(e -> e.getEvaluateHumanType().equals(1) && e.getReportType() == 1
+ && e.getExperimentId().equals(sysUser.getUserId() + ""))
+ .collect(Collectors.toList());
if (!strainReportDetails.isEmpty()){
- tStrainReportDetailExperimentVO.setHandleEndTime(strainReportDetails.get(strainReportDetails.size()-1).getCreateTime());
+ tStrainReportDetailExperimentVO.setHandleEndTime(strainReportDetails.get(0).getCreateTime());
}
tStrainReportDetailExperimentVO.setHandleStartTime(project.getCreateTime());
tStrainReportDetailExperimentVOS.add(tStrainReportDetailExperimentVO);
@@ -305,14 +306,18 @@
tStrainReportDetailExperimentVO.setUserName(sysUserService.selectUserById(Long.valueOf(tStrainReportDetail.getExperimentId())).getNickName());
tStrainReportDetailExperimentVO.setHandleCount((int) collect.stream().filter(e -> e.getExperimentId().equals(tStrainReportDetail.getExperimentId())).count());
BigDecimal handleIntegral = collect.stream()
- .filter(e -> e.getEvaluateHumanType().equals(1)&&e.getExperimentId().equals(sysUser.getUserId()+"") &&e.getReportType()==1)
+ .filter(e -> e.getEvaluateHumanType().equals(1)
+ && e.getExperimentId().equals(tStrainReportDetail.getExperimentId())
+ && e.getReportType()==1)
.map(TStrainReportDetail::getEvaluateTotal)
.reduce(BigDecimal::add)
.orElse(BigDecimal.ZERO);
tStrainReportDetailExperimentVO.setHandleIntegral(handleIntegral);
- List<TStrainReportDetail> reportDetails = collect.stream().filter(e -> e.getExperimentId().equals(sysUser.getUserId()+"")).collect(Collectors.toList());
+ List<TStrainReportDetail> reportDetails = collect.stream()
+ .filter(e -> e.getExperimentId().equals(tStrainReportDetail.getExperimentId()))
+ .collect(Collectors.toList());
if (!reportDetails.isEmpty()){
- tStrainReportDetailExperimentVO.setHandleEndTime(reportDetails.get(reportDetails.size()-1).getCreateTime());
+ tStrainReportDetailExperimentVO.setHandleEndTime(reportDetails.get(0).getCreateTime());
}
tStrainReportDetailExperimentVO.setHandleStartTime(project.getCreateTime());
tStrainReportDetailExperimentVOS1.add(tStrainReportDetailExperimentVO);
@@ -327,7 +332,7 @@
tStrainReportDetailEngineerVO.setInnovateIntegral(reportDetails.stream().filter(e->e.getEvaluateType()!=null&&e.getEvaluateType().equals(1)).map(TStrainReportDetail::getEvaluateTotal).reduce(BigDecimal::add).orElse(BigDecimal.ZERO));
List<TStrainReportDetail> tStrainReportDetails1 = reportDetails.stream().filter(e ->e.getEvaluateType()!=null&& e.getEvaluateType().equals(1)).collect(Collectors.toList());
if (!tStrainReportDetails1.isEmpty()){
- tStrainReportDetailEngineerVO.setInnovateEndTime(tStrainReportDetails1.get(tStrainReportDetails1.size()-1).getCreateTime());
+ tStrainReportDetailEngineerVO.setInnovateEndTime(tStrainReportDetails1.get(0).getCreateTime());
}
tStrainReportDetailEngineerVO.setInnovateStartTime(project.getCreateTime());
@@ -335,7 +340,7 @@
tStrainReportDetailEngineerVO.setRegulationIntegral(reportDetails.stream().filter(e->e.getEvaluateType()!=null&&e.getEvaluateType().equals(2)).map(TStrainReportDetail::getEvaluateTotal).reduce(BigDecimal::add).orElse(BigDecimal.ZERO));
List<TStrainReportDetail> collect4 = reportDetails.stream().filter(e -> e.getEvaluateType()!=null&&e.getEvaluateType().equals(2)).collect(Collectors.toList());
if (!collect4.isEmpty()){
- tStrainReportDetailEngineerVO.setRegulationEndTime(collect4.get(collect4.size()-1).getCreateTime());
+ tStrainReportDetailEngineerVO.setRegulationEndTime(collect4.get(0).getCreateTime());
}
tStrainReportDetailEngineerVO.setRegulationStartTime(project.getCreateTime());
@@ -343,7 +348,7 @@
tStrainReportDetailEngineerVO.setHandleIntegral(reportDetails.stream().filter(e->e.getReportType().equals(1)).map(TStrainReportDetail::getEvaluateTotal).reduce(BigDecimal::add).orElse(BigDecimal.ZERO));
List<TStrainReportDetail> reportDetailList = reportDetails.stream().filter(e->e.getReportType().equals(1)).collect(Collectors.toList());
if (!reportDetailList.isEmpty()){
- tStrainReportDetailEngineerVO.setHandleEndTime(reportDetailList.get(reportDetailList.size()-1).getCreateTime());
+ tStrainReportDetailEngineerVO.setHandleEndTime(reportDetailList.get(0).getCreateTime());
}
tStrainReportDetailEngineerVO.setHandleStartTime(project.getCreateTime());
@@ -356,7 +361,9 @@
.map(TStrainReportDetail::getExperimentId)
.distinct()
.collect(Collectors.toList());
- List<TStrainReportDetail> tStrainReportDetails2 = tStrainReportDetails.stream().filter(e -> e.getEvaluateHumanType().equals(1)).collect(Collectors.toList());
+ List<TStrainReportDetail> tStrainReportDetails2 = tStrainReportDetails.stream()
+ .filter(e -> e.getEvaluateHumanType().equals(1) && e.getReportType() == 1)
+ .collect(Collectors.toList());
for (String experimentId : experimentIds) {
List<TStrainReportDetail> details = tStrainReportDetails2.stream().filter(e -> e.getExperimentId().equals(experimentId)).collect(Collectors.toList());
@@ -371,8 +378,8 @@
.reduce(BigDecimal::add)
.orElse(BigDecimal.ZERO);
tStrainReportDetailExperimentVO.setHandleIntegral(handleIntegral);
- if (!tStrainReportDetails2.isEmpty()){
- tStrainReportDetailExperimentVO.setHandleEndTime(details.get(details.size()-1).getCreateTime());
+ if (!details.isEmpty()){
+ tStrainReportDetailExperimentVO.setHandleEndTime(details.get(0).getCreateTime());
}
tStrainReportDetailExperimentVO.setHandleStartTime(project.getCreateTime());
tStrainReportDetailExperimentVOS1.add(tStrainReportDetailExperimentVO);
@@ -590,6 +597,9 @@
public R<TStrainReportDetailVO> detail(@RequestParam String id) {
TStrainReportDetailVO tStrainReportDetailVO = new TStrainReportDetailVO();
TStrainReport strainReport = strainReportService.getById(id);
+ if (strainReport == null) {
+ return R.fail("报告不存在或已删除");
+ }
if (strainReport.getAuditId()!=null){
SysUser sysUser = sysUserService.selectUserById(Long.valueOf(strainReport.getAuditId()));
if (sysUser!=null){
--
Gitblit v1.7.1