From 7e9fea768cf8ef436c6378bf29170523721bfc77 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 25 六月 2025 20:04:26 +0800
Subject: [PATCH] bug修改
---
ruoyi-admin/src/main/java/com/ruoyi/web/core/config/DataUpdateHandlerConfig.java | 2
ruoyi-system/src/main/resources/mapper/system/TQaTestItemReportMapper.xml | 9 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java | 10 +-
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaTestItemReportMapper.java | 8 +
ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItemReport.java | 7
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFeasibilityStudyReportController.java | 6 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java | 11 +
ruoyi-system/src/main/java/com/ruoyi/system/vo/ResultEvaluateChemistTesterVO.java | 5
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentResultReportServiceImpl.java | 62 ++++++++++++
ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml | 4
ruoyi-system/src/main/resources/mapper/system/TResultWorkEvaluateMapper.xml | 17 ++-
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaTestItemReportServiceImpl.java | 5 +
ruoyi-system/src/main/java/com/ruoyi/system/vo/TQaTestItemVO.java | 3
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemController.java | 14 ++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java | 11 ++
ruoyi-system/src/main/java/com/ruoyi/system/vo/TTestMethodConfirmSheetVO.java | 18 +++
ruoyi-system/src/main/java/com/ruoyi/system/service/TQaTestItemReportService.java | 7 +
ruoyi-system/src/main/java/com/ruoyi/system/vo/TResultWorkEvaluateVO.java | 2
ruoyi-system/src/main/java/com/ruoyi/system/query/TResultWorkEvaluateQuery.java | 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemReportController.java | 34 +++---
ruoyi-system/src/main/java/com/ruoyi/system/vo/TFeasibilityStudyReportVO.java | 3
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTesterWorkEvaluateServiceImpl.java | 19 ++-
ruoyi-system/src/main/java/com/ruoyi/system/vo/TClinicalTrialPointsVO.java | 3
23 files changed, 214 insertions(+), 48 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFeasibilityStudyReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFeasibilityStudyReportController.java
index a755792..8e9b53a 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFeasibilityStudyReportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TFeasibilityStudyReportController.java
@@ -284,6 +284,10 @@
List<SysUser> sysUsers = sysUserMapper.selectUserByIds(userIds);
feasibilityStudyReportVO.setStaffNames(sysUsers.stream().map(SysUser::getNickName).collect(Collectors.joining(",")));
feasibilityStudyReportVO.setProjectTeam(projectTeam);
+ SysUser sysUser = sysUserService.selectUserById(feasibilityStudyReport.getAuditPersonId());
+ if(Objects.nonNull(sysUser)){
+ feasibilityStudyReportVO.setAuditPersonName(sysUser.getNickName());
+ }
return R.ok(feasibilityStudyReportVO);
}
@@ -322,7 +326,7 @@
@PutMapping(value = "/open/t-feasibility-study-report/revokedReport")
public R<Boolean> revokedReport(@RequestParam String id) {
TFeasibilityStudyReport feasibilityStudyReport = feasibilityStudyReportService.getById(id);
- feasibilityStudyReport.setStatus(FeasibilityStudyReportStatusEnum.REVOKED.getCode());
+ feasibilityStudyReport.setStatus(FeasibilityStudyReportStatusEnum.DRAFTS.getCode());
feasibilityStudyReportService.updateById(feasibilityStudyReport);
return R.ok();
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java
index a771b69..c10266a 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java
@@ -7,7 +7,10 @@
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.common.enums.*;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.enums.QAProduceReportStatusEnum;
+import com.ruoyi.common.enums.QaReportFileEnum;
+import com.ruoyi.common.enums.QaReportTypeEnum;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.dto.AuditStatusDTO;
import com.ruoyi.system.dto.TQaProduceReportDTO;
@@ -23,6 +26,7 @@
import com.ruoyi.system.vo.TQaProduceReportVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
@@ -42,6 +46,7 @@
* @author xiaochen
* @since 2025-04-08
*/
+@Slf4j
@Api(tags = "中试、生产验证分析报告;辅料;产品报告管理")
@RestController
@RequestMapping("")
@@ -369,7 +374,7 @@
*/
//@PreAuthorize("@ss.hasPermi('system:qaTestItem:evaluate')")
@Log(title = "中试、生产验证分析报告;辅料;产品报告管理信息-评定中试、生产验证分析报告;辅料;产品报告管理信息", businessType = BusinessType.UPDATE)
- @ApiOperation(value = "评定QA检测项管理",response = TQaProduceReportEvaluateDTO.class)
+ @ApiOperation(value = "评定中试、生产验证分析报告;辅料;产品报告管理信息",response = TQaProduceReportEvaluateDTO.class)
@PostMapping(value = "/api/t-qa-produce-report/evaluate")
public R<Boolean> evaluate(@RequestBody String param) {
TQaProduceReportEvaluateDTO dto = JSON.parseObject(param,TQaProduceReportEvaluateDTO.class);
@@ -382,6 +387,6 @@
qaProduceReportService.updateById(qaProduceReport);
return R.ok();
}
-
+
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemController.java
index cee8003..f7e0446 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemController.java
@@ -34,6 +34,7 @@
import java.time.LocalDateTime;
import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
/**
@@ -149,6 +150,12 @@
BeanUtils.copyProperties(testItem, testItemVO);
// 查询QA检测项检测报告
List<TQaTestItemReportVO> qaTestItemReportVOS= qaTestItemReportService.getList(id);
+ for (TQaTestItemReportVO qaTestItemReportVO : qaTestItemReportVOS) {
+ SysUser sysUser = sysUserMapper.selectUserById(qaTestItemReportVO.getAuditPersonId());
+ if(Objects.nonNull(sysUser)){
+ qaTestItemReportVO.setAuditPersonName(sysUser.getNickName());
+ }
+ }
testItemVO.setQaTestItemReportList(qaTestItemReportVOS);
// 查询项目组名称
TProjectTeam projectTeam = projectTeamService.getById(testItemVO.getTeamId());
@@ -167,6 +174,11 @@
});
}
projectTeamVO.setStaffs(list);
+ }
+ // 查询评定人名称
+ SysUser sysUser = sysUserMapper.selectUserById(testItem.getEvaluatePersonId());
+ if (Objects.nonNull(sysUser)) {
+ testItemVO.setEvaluatePersonName(sysUser.getNickName());
}
testItemVO.setProjectTeamVO(projectTeamVO);
return R.ok(testItemVO);
@@ -222,7 +234,7 @@
public R<Boolean> evaluate(@RequestBody String param) {
TQaTestItemEvaluateDTO dto = JSON.parseObject(param,TQaTestItemEvaluateDTO.class);
Long userId = tokenService.getLoginUser().getUserId();
- TQaTestItem testItem = qaTestItemService.getById(dto);
+ TQaTestItem testItem = qaTestItemService.getById(dto.getId());
testItem.setStatus(QATestItemStatusEnum.EVALUATED.getCode());
testItem.setEvaluatePersonId(userId);
testItem.setEvaluateTime(LocalDateTime.now());
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemReportController.java
index 9c08610..3b8e640 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemReportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaTestItemReportController.java
@@ -90,9 +90,17 @@
*/
@ApiOperation(value = "获取QA检测项报告管理下拉列表-化验师使用、评定使用")
@GetMapping(value = "/open/t-qa-test-item-report/getListByItemId")
- public R<List<TQaTestItemReport>> getListByItemId(@RequestParam String itemId) {
- List<TQaTestItemReport> list = qaTestItemReportService.list(Wrappers.lambdaQuery(TQaTestItemReport.class)
- .eq(TQaTestItemReport::getItemId, itemId));
+ public R<List<TQaTestItemReportVO>> getListByItemId(@RequestParam String itemId) {
+ List<TQaTestItemReportVO> list = qaTestItemReportService.getListByItemId(itemId);
+ if(!CollectionUtils.isEmpty(list)){
+ List<SysUser> sysUsers = sysUserService.selectList();
+ list.forEach(itemReport -> {
+ SysUser sysUser = sysUsers.stream().filter(user -> user.getUserId().equals(itemReport.getAuditPersonId())).findFirst().orElse(null);
+ if(Objects.nonNull(sysUser)){
+ itemReport.setAuditPersonName(sysUser.getNickName());
+ }
+ });
+ }
return R.ok(list);
}
@@ -105,16 +113,8 @@
@PostMapping(value = "/api/t-qa-test-item-report/add")
public R<Boolean> add(@RequestBody String param) {
TQaTestItemReportDTO dto = JSON.parseObject(param,TQaTestItemReportDTO.class);
- // 通过当前用户查询项目组
- Long userId = tokenService.getLoginUser().getUserId();
- TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class)
- .eq(TProjectTeamStaff::getUserId, userId)
- .last("LIMIT 1"));
- if(Objects.isNull(projectTeamStaff)){
- return R.fail("当前用户未分配项目组,无法创建项目课题方案");
- }
// 查询项目组
- TProjectTeam projectTeam = projectTeamService.getById(projectTeamStaff.getTeamId());
+ TProjectTeam projectTeam = projectTeamService.getById(dto.getItemId());
if(Objects.isNull(projectTeam)){
return R.fail("项目组不存在");
}
@@ -133,11 +133,13 @@
qaTestItemReportService.save(dto);
// 添加检测报告文件
List<TQaReportFile> qaReportFiles = dto.getQaReportFiles();
- for (TQaReportFile qaReportFile : qaReportFiles) {
- qaReportFile.setReportId(dto.getId());
- qaReportFile.setReportType(QaReportFileEnum.TEST_REPORT.getCode());
+ if(!CollectionUtils.isEmpty(qaReportFiles)){
+ for (TQaReportFile qaReportFile : qaReportFiles) {
+ qaReportFile.setReportId(dto.getId());
+ qaReportFile.setReportType(QaReportFileEnum.TEST_REPORT.getCode());
+ }
+ qaReportFileService.saveBatch(qaReportFiles);
}
- qaReportFileService.saveBatch(qaReportFiles);
return R.ok();
}
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 4074a98..4e23bda 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
@@ -11,7 +11,6 @@
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.dto.TResultWorkEvaluateDTO;
import com.ruoyi.system.model.*;
import com.ruoyi.system.query.ResultEvaluateChemistTesterQuery;
@@ -125,11 +124,10 @@
*/
//@PreAuthorize("@ss.hasPermi('system:resultWorkEvaluate:add')")
@Log(title = "实验结果工作评定管理-新增化验师、实验员工作评定", businessType = BusinessType.INSERT)
- @ApiOperation(value = "新增化验师、实验员工作评定", response = TQaTestItemDTO.class)
+ @ApiOperation(value = "新增化验师、实验员工作评定", response = TResultWorkEvaluateDTO.class)
@PostMapping(value = "/api/t-result-work-evaluate/add")
public R<Boolean> add(@RequestBody String param) {
TResultWorkEvaluateDTO dto = JSON.parseObject(param, TResultWorkEvaluateDTO.class);
-
tResultWorkEvaluateService.save(dto);
return R.ok();
}
@@ -150,7 +148,8 @@
List<SysUser> sysUsers = sysUserService.selectListByNameAndUserIds(nickName,userIds);
return R.ok(sysUsers);
}
- return R.ok();
+ List<SysUser> sysUsers = sysUserService.selectListByNameAndUserIds(null,userIds);
+ return R.ok(sysUsers);
}
/**
* 查询可评定的实验员
@@ -168,7 +167,8 @@
List<SysUser> sysUsers = sysUserService.selectListByNameAndUserIds(nickName,userIds);
return R.ok(sysUsers);
}
- return R.ok();
+ List<SysUser> sysUsers = sysUserService.selectListByNameAndUserIds(null,userIds);
+ return R.ok(sysUsers);
}
/**
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java
index 5a18d8e..a079a3d 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTestMethodConfirmSheetController.java
@@ -215,11 +215,22 @@
if(Objects.nonNull(experimentDispatch)){
testMethodConfirmSheetVO.setExperimentName(experimentDispatch.getExperimentName());
testMethodConfirmSheetVO.setExperimentCode(experimentDispatch.getExperimentCode());
+ testMethodConfirmSheetVO.setExperimentStartTime(experimentDispatch.getExperimentStartTime());
+ testMethodConfirmSheetVO.setExperimentEndTime(experimentDispatch.getExperimentEndTime());
+ testMethodConfirmSheetVO.setExperimentDate(experimentDispatch.getExperimentDate());
// 查询项目课题方案
TProjectProposal projectProposal = projectProposalService.getById(experimentDispatch.getProposalId());
if(Objects.nonNull(projectProposal)){
testMethodConfirmSheetVO.setProjectName(projectProposal.getProjectName());
}
+ // 查询参与人员
+ List<TExperimentDispatchParticipants> tExperimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class)
+ .eq(TExperimentDispatchParticipants::getDispatchId, experimentDispatch.getId()));
+ List<Long> userIds = tExperimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getUserId).distinct().collect(Collectors.toList());
+ List<SysUser> sysUsers = sysUserMapper.selectUserByIds(userIds);
+ String participantsName = sysUsers.stream().map(SysUser::getNickName).collect(Collectors.joining(";"));
+ testMethodConfirmSheetVO.setParticipantsName(participantsName);
+ testMethodConfirmSheetVO.setStatus(experimentDispatch.getStatus());
}
// 查询审核人姓名
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/DataUpdateHandlerConfig.java b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/DataUpdateHandlerConfig.java
index 6b5aefe..d1f2ea0 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/DataUpdateHandlerConfig.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/core/config/DataUpdateHandlerConfig.java
@@ -50,10 +50,8 @@
// 获取登录信息
String userName = SecurityUtils.getLoginUser().getUser().getNickName();
if (StringUtils.isNotBlank(userName)){
- this.setFieldValByName("createBy", userName, metaObject);
this.setFieldValByName("updateBy", userName, metaObject);
} else {
- this.setFieldValByName("createBy", userName, metaObject);
this.setFieldValByName("updateBy", userName, metaObject);
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaTestItemReportMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaTestItemReportMapper.java
index d1e7e79..e41f96c 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaTestItemReportMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaTestItemReportMapper.java
@@ -33,4 +33,12 @@
* @return
*/
List<TQaTestItemReportVO> pageList(@Param("query")TQaTestItemReportQuery query, @Param("pageInfo")PageInfo<TQaTestItemReportVO> pageInfo);
+
+
+ /**
+ * 获取列表
+ * @param itemId
+ * @return
+ */
+ List<TQaTestItemReportVO> getListByItemId(@Param("itemId")String itemId);
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItemReport.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItemReport.java
index 3708ce1..737d49a 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItemReport.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItemReport.java
@@ -1,6 +1,9 @@
package com.ruoyi.system.model;
-import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseModel;
import io.swagger.annotations.ApiModel;
@@ -8,7 +11,6 @@
import lombok.Data;
import lombok.EqualsAndHashCode;
-import java.io.Serializable;
import java.time.LocalDateTime;
/**
@@ -71,5 +73,4 @@
@ApiModelProperty(value = "状态 -1=草稿箱 1=待审核 2=已通过 3=已驳回 4=已撤销")
@TableField("status")
private Integer status;
-
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/query/TResultWorkEvaluateQuery.java b/ruoyi-system/src/main/java/com/ruoyi/system/query/TResultWorkEvaluateQuery.java
index e85674a..b7fdeba 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/query/TResultWorkEvaluateQuery.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/query/TResultWorkEvaluateQuery.java
@@ -13,6 +13,8 @@
@ApiModelProperty(value = "项目组名称")
private String teamName;
+ @ApiModelProperty(value = "所属项目课题")
+ private String projectName;
@ApiModelProperty(value = "实验编号")
private String experimentCode;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaTestItemReportService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaTestItemReportService.java
index 49a7e2c..662773b 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaTestItemReportService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaTestItemReportService.java
@@ -31,4 +31,11 @@
* @return
*/
PageInfo<TQaTestItemReportVO> pageList(TQaTestItemReportQuery query);
+
+ /**
+ * 获取检测项报告列表
+ * @param itemId
+ * @return
+ */
+ List<TQaTestItemReportVO> getListByItemId(String itemId);
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentResultReportServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentResultReportServiceImpl.java
index 1cb7ac3..1b14d7b 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentResultReportServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentResultReportServiceImpl.java
@@ -117,6 +117,68 @@
public PageInfo<TExperimentResultReportVO> evaluatePageList(TExperimentResultReportQuery query) {
PageInfo<TExperimentResultReportVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
List<TExperimentResultReportVO> list = this.baseMapper.evaluatePageList(query,pageInfo);
+ if(CollectionUtils.isEmpty(list)){
+ return pageInfo;
+ }
+ List<String> dispatchIds = list.stream().map(TExperimentResultReportVO::getDispatchId).distinct().collect(Collectors.toList());
+ // 查询参与人员
+ List<TExperimentDispatchParticipants> tExperimentDispatchParticipants = experimentDispatchParticipantsMapper.selectList(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class)
+ .in(TExperimentDispatchParticipants::getDispatchId, dispatchIds));
+
+ // 设置参与人员名称
+ List<Long> userIds = tExperimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getUserId).collect(Collectors.toList());
+ List<SysUser> sysUsers = sysUserMapper.selectUserByIds(userIds);
+ tExperimentDispatchParticipants.forEach(tExperimentDispatchParticipant -> {
+ SysUser sysUser = sysUsers.stream().filter(user -> user.getUserId().equals(tExperimentDispatchParticipant.getUserId())).findFirst().orElse(null);
+ if(sysUser != null){
+ tExperimentDispatchParticipant.setNickName(sysUser.getNickName());
+ tExperimentDispatchParticipant.setAvatar(sysUser.getAvatar());
+ }
+ });
+
+ List<String> ids = list.stream().map(TExperimentResultReportVO::getId).distinct().collect(Collectors.toList());
+ // 查询结果汇报评价
+ List<TResultWorkEvaluate> resultWorkEvaluates = resultWorkEvaluateMapper.selectList(Wrappers.lambdaQuery(TResultWorkEvaluate.class)
+ .in(TResultWorkEvaluate::getResultReportId, ids));
+ for (TExperimentResultReportVO experimentResultReportVO : list) {
+ experimentResultReportVO.setExperimentDispatchParticipants(tExperimentDispatchParticipants.stream().filter(participants -> participants.getDispatchId().equals(experimentResultReportVO.getDispatchId())).collect(Collectors.toList()));
+ experimentResultReportVO.setResultWorkEvaluates(resultWorkEvaluates.stream().filter(evaluate -> evaluate.getResultReportId().equals(experimentResultReportVO.getId())).collect(Collectors.toList()));
+ // 设置工艺工程师名称
+ TExperimentDispatchParticipants dispatchParticipants = tExperimentDispatchParticipants.stream()
+ .filter(participants -> participants.getDispatchId().equals(experimentResultReportVO.getDispatchId())
+ && participants.getRoleType().equals(3)).findFirst().orElse(null);
+ if(dispatchParticipants != null){
+ experimentResultReportVO.setProcessEngineerName(dispatchParticipants.getNickName());
+ }
+ // 设置化验师名称
+ List<TExperimentDispatchParticipants> laboratoryChemist = tExperimentDispatchParticipants.stream()
+ .filter(participants -> participants.getDispatchId().equals(experimentResultReportVO.getDispatchId())
+ && participants.getRoleType().equals(4)).collect(Collectors.toList());
+ List<TResultWorkEvaluate> chemistEvaluates = resultWorkEvaluates.stream()
+ .filter(workEvaluate -> workEvaluate.getDispatchId().equals(experimentResultReportVO.getDispatchId())
+ && workEvaluate.getEvaluateType().equals(2)).collect(Collectors.toList());
+ if(laboratoryChemist.size() == chemistEvaluates.size()){
+ experimentResultReportVO.setLaboratoryChemistEvaluate(1);
+ }
+ if(!CollectionUtils.isEmpty(laboratoryChemist)){
+ String laboratoryChemistName = laboratoryChemist.stream().map(TExperimentDispatchParticipants::getNickName).collect(Collectors.joining(","));
+ experimentResultReportVO.setLaboratoryChemistName(laboratoryChemistName);
+ }
+ // 设置实验员名称
+ List<TExperimentDispatchParticipants> experimenter = tExperimentDispatchParticipants.stream()
+ .filter(participants -> participants.getDispatchId().equals(experimentResultReportVO.getDispatchId())
+ && participants.getRoleType().equals(5)).collect(Collectors.toList());
+ List<TResultWorkEvaluate> experimenterEvaluates = resultWorkEvaluates.stream()
+ .filter(workEvaluate -> workEvaluate.getDispatchId().equals(experimentResultReportVO.getDispatchId())
+ && workEvaluate.getEvaluateType().equals(3)).collect(Collectors.toList());
+ if(experimenter.size() == experimenterEvaluates.size()){
+ experimentResultReportVO.setExperimenterEvaluate(1);
+ }
+ if(!CollectionUtils.isEmpty(experimenter)){
+ String experimenterName = experimenter.stream().map(TExperimentDispatchParticipants::getNickName).collect(Collectors.joining(","));
+ experimentResultReportVO.setExperimenterName(experimenterName);
+ }
+ }
pageInfo.setRecords(list);
return pageInfo;
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaTestItemReportServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaTestItemReportServiceImpl.java
index 9edac03..a868ce5 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaTestItemReportServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaTestItemReportServiceImpl.java
@@ -56,4 +56,9 @@
pageInfo.setRecords(list);
return pageInfo;
}
+
+ @Override
+ public List<TQaTestItemReportVO> getListByItemId(String itemId) {
+ return this.baseMapper.getListByItemId(itemId);
+ }
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTesterWorkEvaluateServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTesterWorkEvaluateServiceImpl.java
index d9fdaf0..6c4e043 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTesterWorkEvaluateServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTesterWorkEvaluateServiceImpl.java
@@ -19,6 +19,7 @@
import org.springframework.util.CollectionUtils;
import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
/**
@@ -253,9 +254,12 @@
if(!CollectionUtils.isEmpty(userIds)){
List<SysUser> sysUsers = sysUserMapper.selectUserByIds(userIds);
for (ResultEvaluateChemistTesterVO resultEvaluateChemistTesterVO : list) {
- sysUsers.stream().filter(sysUser -> sysUser.getUserId().equals(resultEvaluateChemistTesterVO.getParticipantsId())).findFirst().ifPresent(sysUser -> {
- resultEvaluateChemistTesterVO.setProcessEngineerName(sysUser.getNickName());
- });
+ TExperimentDispatchParticipants dispatchParticipants = experimentDispatchParticipants.stream().filter(experimentDispatchParticipant -> experimentDispatchParticipant.getDispatchId().equals(resultEvaluateChemistTesterVO.getDispatchId())).findFirst().orElse(null);
+ if(Objects.nonNull(dispatchParticipants)){
+ sysUsers.stream().filter(sysUser -> sysUser.getUserId().equals(dispatchParticipants.getUserId())).findFirst().ifPresent(sysUser -> {
+ resultEvaluateChemistTesterVO.setProcessEngineerName(sysUser.getNickName());
+ });
+ }
}
}
}
@@ -277,9 +281,12 @@
if(!CollectionUtils.isEmpty(userIds)){
List<SysUser> sysUsers = sysUserMapper.selectUserByIds(userIds);
for (ResultEvaluateChemistTesterVO resultEvaluateChemistTesterVO : list) {
- sysUsers.stream().filter(sysUser -> sysUser.getUserId().equals(resultEvaluateChemistTesterVO.getParticipantsId())).findFirst().ifPresent(sysUser -> {
- resultEvaluateChemistTesterVO.setProcessEngineerName(sysUser.getNickName());
- });
+ TExperimentDispatchParticipants dispatchParticipants = experimentDispatchParticipants.stream().filter(experimentDispatchParticipant -> experimentDispatchParticipant.getDispatchId().equals(resultEvaluateChemistTesterVO.getDispatchId())).findFirst().orElse(null);
+ if(Objects.nonNull(dispatchParticipants)){
+ sysUsers.stream().filter(sysUser -> sysUser.getUserId().equals(dispatchParticipants.getUserId())).findFirst().ifPresent(sysUser -> {
+ resultEvaluateChemistTesterVO.setProcessEngineerName(sysUser.getNickName());
+ });
+ }
}
}
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/ResultEvaluateChemistTesterVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/ResultEvaluateChemistTesterVO.java
index 48818d2..bacf06c 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/ResultEvaluateChemistTesterVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/ResultEvaluateChemistTesterVO.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.vo;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -48,5 +49,7 @@
@ApiModelProperty(value = "评定时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime evaluateTime;
-
+ @ApiModelProperty(value = "评定分数 json")
+ @TableField("result_evaluate_json")
+ private String resultEvaluateJson;
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TClinicalTrialPointsVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TClinicalTrialPointsVO.java
index e544f0d..64d7410 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TClinicalTrialPointsVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TClinicalTrialPointsVO.java
@@ -18,5 +18,6 @@
@ApiModelProperty(value = "总分")
private Double totalScore;
-
+ @ApiModelProperty(value = "项目组名称")
+ private String teamName;
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TFeasibilityStudyReportVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TFeasibilityStudyReportVO.java
index 5ab1ed8..8d90194 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TFeasibilityStudyReportVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TFeasibilityStudyReportVO.java
@@ -28,6 +28,9 @@
@ApiModelProperty(value = "评定人员名称")
private String evaluatePersonName;
+ @ApiModelProperty(value = "审核人员名称")
+ private String auditPersonName;
+
@ApiModelProperty(value = "报告文件")
private List<TFeasibilityReportFile> feasibilityReportFiles;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TQaTestItemVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TQaTestItemVO.java
index 73fdbf9..f60a35d 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TQaTestItemVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TQaTestItemVO.java
@@ -17,6 +17,9 @@
@ApiModelProperty(value = "项目组名称")
private String teamName;
+ @ApiModelProperty(value = "评价人名称")
+ private String evaluatePersonName;
+
@ApiModelProperty(value = "检测报告列表")
private List<TQaTestItemReportVO> qaTestItemReportList;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TResultWorkEvaluateVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TResultWorkEvaluateVO.java
index e55b27e..4373fd8 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TResultWorkEvaluateVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TResultWorkEvaluateVO.java
@@ -37,5 +37,7 @@
private String chemistName;
@ApiModelProperty(value = "实验员名称")
private String testerName;
+ @ApiModelProperty(value = "项目课题方案")
+ private String projectName;
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TTestMethodConfirmSheetVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TTestMethodConfirmSheetVO.java
index 554dbe0..41ddc6d 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TTestMethodConfirmSheetVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TTestMethodConfirmSheetVO.java
@@ -1,11 +1,13 @@
package com.ruoyi.system.vo;
+import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.system.model.TTestMethodConfirmSheet;
import com.ruoyi.system.model.TTestMethodConfirmSheetTerm;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import java.time.LocalDateTime;
import java.util.List;
@Data
@@ -27,5 +29,21 @@
@ApiModelProperty(value = "审核人姓名")
private String auditPersonName;
+ @ApiModelProperty(value = "通知时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private LocalDateTime experimentDate;
+
+ @ApiModelProperty(value = "实验开始时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private LocalDateTime experimentStartTime;
+
+ @ApiModelProperty(value = "实验结束时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private LocalDateTime experimentEndTime;
+
+ @ApiModelProperty(value = "参与人员名称拼接")
+ private String participantsName;
+ @ApiModelProperty(value = "状态")
+ private Integer status;
}
diff --git a/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml
index b0b5564..1615c19 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml
@@ -50,7 +50,7 @@
and tpp.project_name like concat('%', #{query.projectName}, '%')
</if>
<if test="query.experimentCode != null and query.experimentCode != ''">
- and tes.experiment_code like concat('%', #{query.experimentCode}, '%')
+ and ted.experiment_code like concat('%', #{query.experimentCode}, '%')
</if>
<if test="query.startTime != null and query.startTime != '' and query.endTime != null and query.endTime != ''">
AND tes.create_time BETWEEN #{query.startTime} AND #{query.endTime}
@@ -85,7 +85,7 @@
and tpp.project_name like concat('%', #{query.projectName}, '%')
</if>
<if test="query.experimentCode != null and query.experimentCode != ''">
- and tes.experiment_code like concat('%', #{query.experimentCode}, '%')
+ and ted.experiment_code like concat('%', #{query.experimentCode}, '%')
</if>
<if test="query.startTime != null and query.startTime != '' and query.endTime != null and query.endTime != ''">
AND tes.create_time BETWEEN #{query.startTime} AND #{query.endTime}
diff --git a/ruoyi-system/src/main/resources/mapper/system/TQaTestItemReportMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TQaTestItemReportMapper.xml
index ba88585..054e636 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TQaTestItemReportMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TQaTestItemReportMapper.xml
@@ -70,5 +70,14 @@
</where>
ORDER BY tqtir.create_time DESC
</select>
+ <select id="getListByItemId" resultType="com.ruoyi.system.vo.TQaTestItemReportVO">
+ select
+ <include refid="Base_Column_List" />
+ from t_qa_test_item_report
+ where item_id = #{itemId}
+ and status in (1,2,3)
+ and disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+ order by create_time desc
+ </select>
</mapper>
diff --git a/ruoyi-system/src/main/resources/mapper/system/TResultWorkEvaluateMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TResultWorkEvaluateMapper.xml
index 6b12e4b..a7fbcb6 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TResultWorkEvaluateMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TResultWorkEvaluateMapper.xml
@@ -69,6 +69,9 @@
<if test="query.teamName != null and query.teamName != ''">
and tpp.team_name like concat('%',#{query.teamName},'%')
</if>
+ <if test="query.projectName != null and query.projectName != ''">
+ and tpp.project_name like concat('%',#{query.projectName},'%')
+ </if>
<if test="query.experimentCode != null and query.experimentCode != ''">
and ted.experiment_code like concat('%',#{query.experimentCode},'%')
</if>
@@ -81,7 +84,7 @@
<if test="query.status != null">
AND trwe.status = #{query.status}
</if>
- <if test="query.teamIds != null and query.teamIds > 0">
+ <if test="query.teamIds != null and query.teamIds.size() > 0">
AND trwe.team_id in
<foreach collection="query.teamIds" item="id" open="(" separator="," close=")">
#{id}
@@ -117,7 +120,7 @@
<if test="query.status != null">
AND trwe.status = #{query.status}
</if>
- <if test="query.teamIds != null and query.teamIds > 0">
+ <if test="query.teamIds != null and query.teamIds.size() > 0">
AND trwe.team_id in
<foreach collection="query.teamIds" item="id" open="(" separator="," close=")">
#{id}
@@ -132,12 +135,12 @@
select trwe.evaluate_time,CASE WHEN trwe.id IS NOT NULL THEN 1 ELSE 0 END AS isEvaluate,trwe.id,
tedp.id AS participantsId,tpp.project_name AS projectName,tpp.project_stage AS projectStage,
ted.experiment_code AS experimentCode,ted.experiment_name AS experimentName,su.nick_name AS laboratoryChemistName,
- tedp.dispatch_id AS dispatchId
+ tedp.dispatch_id AS dispatchId,tedp.result_evaluate_json AS resultEvaluateJson
from t_experiment_dispatch_participants tedp
left join t_experiment_dispatch ted on ted.id = tedp.dispatch_id
- left join t_result_work_evaluate trwe on tedp.id = trwe.dispatch_id and trwe.evaluate_type = 2
+ left join t_result_work_evaluate trwe on ted.id = trwe.dispatch_id and trwe.evaluate_type = 2
left join t_project_proposal tpp on ted.proposal_id = tpp.id
- left join sys_user su on tedp.user_id = su.id
+ left join sys_user su on tedp.user_id = su.user_id
<where>
<if test="query.experimentCode != null and query.experimentCode != ''">
and ted.experiment_code like concat('%',#{query.experimentCode},'%')
@@ -168,9 +171,9 @@
tedp.dispatch_id AS dispatchId
from t_experiment_dispatch_participants tedp
left join t_experiment_dispatch ted on ted.id = tedp.dispatch_id
- left join t_result_work_evaluate trwe on tedp.id = trwe.dispatch_id and trwe.evaluate_type = 3
+ left join t_result_work_evaluate trwe on ted.id = trwe.dispatch_id and trwe.evaluate_type = 3
left join t_project_proposal tpp on ted.proposal_id = tpp.id
- left join sys_user su on tedp.user_id = su.id
+ left join sys_user su on tedp.user_id = su.user_id
<where>
<if test="query.experimentCode != null and query.experimentCode != ''">
and ted.experiment_code like concat('%',#{query.experimentCode},'%')
--
Gitblit v1.7.1