From bd953391a74b86db829df43992c7cf3c5207634b Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 27 六月 2025 18:07:22 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TResultWorkEvaluateController.java |   84 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 81 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 4e23bda..83c6347 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
@@ -12,6 +12,7 @@
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.dto.TResultWorkEvaluateDTO;
+import com.ruoyi.system.mapper.SysUserMapper;
 import com.ruoyi.system.model.*;
 import com.ruoyi.system.query.ResultEvaluateChemistTesterQuery;
 import com.ruoyi.system.query.TProjectApprovalReportQuery;
@@ -20,6 +21,7 @@
 import com.ruoyi.system.vo.*;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
@@ -27,6 +29,7 @@
 import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 /**
@@ -70,6 +73,8 @@
     private TProjectTeamStaffService projectTeamStaffService;
     @Autowired
     private ISysUserService sysUserService;
+    @Autowired
+    private SysUserMapper sysUserMapper;
     @Autowired
     private TExperimentDispatchParticipantsService experimentDispatchParticipantsService;
 
@@ -130,6 +135,79 @@
         TResultWorkEvaluateDTO dto = JSON.parseObject(param, TResultWorkEvaluateDTO.class);
         tResultWorkEvaluateService.save(dto);
         return R.ok();
+    }
+
+    /**
+     * 编辑化验师、实验员工作评定
+     */
+    //@PreAuthorize("@ss.hasPermi('system:resultWorkEvaluate:edit')")
+    @Log(title = "实验结果工作评定管理-编辑化验师、实验员工作评定", businessType = BusinessType.UPDATE)
+    @ApiOperation(value = "编辑化验师、实验员工作评定", response = TResultWorkEvaluateDTO.class)
+    @PostMapping(value = "/api/t-result-work-evaluate/edit")
+    public R<Boolean> edit(@RequestBody String param) {
+        TResultWorkEvaluateDTO dto = JSON.parseObject(param, TResultWorkEvaluateDTO.class);
+        tResultWorkEvaluateService.updateById(dto);
+        return R.ok();
+    }
+
+    /**
+     * 删除化验师、实验员工作评定
+     */
+    //@PreAuthorize("@ss.hasPermi('system:resultWorkEvaluate:delete')")
+    @Log(title = "实验结果工作评定管理-删除化验师、实验员工作评定", businessType = BusinessType.DELETE)
+    @ApiOperation(value = "删除化验师、实验员工作评定")
+    @DeleteMapping(value = "/open/t-result-work-evaluate/deleteById")
+    public R<Boolean> deleteById(@RequestBody String id) {
+        tResultWorkEvaluateService.removeById(id);
+        return R.ok();
+    }
+
+    /**
+     * 查看实验结果工作评定管理详情
+     */
+    //@PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:detail')")
+    @ApiOperation(value = "查看实验结果工作评定管理详情")
+    @GetMapping(value = "/open/t-result-work-evaluate/getEvaluateDetailById")
+    public R<TResultWorkEvaluateVO> getEvaluateDetailById(@RequestParam String id) {
+
+        // 查询实验结果工作评定
+        TResultWorkEvaluate resultWorkEvaluate = tResultWorkEvaluateService.getById(id);
+
+        TResultWorkEvaluateVO tResultWorkEvaluateVO = new TResultWorkEvaluateVO();
+        BeanUtils.copyProperties(resultWorkEvaluate, tResultWorkEvaluateVO);
+
+        // 查询实验调度
+        TExperimentDispatch experimentDispatch = experimentDispatchService.getById(resultWorkEvaluate.getDispatchId());
+
+        // 查询实验调度信息
+        if(Objects.nonNull(experimentDispatch)){
+            // 查询课题方案名称
+            TProjectProposal projectProposal = projectProposalService.getById(experimentDispatch.getProposalId());
+            if(Objects.nonNull(projectProposal)){
+                experimentDispatch.setProjectName(projectProposal.getProjectName());
+                experimentDispatch.setProjectCode(projectProposal.getProjectCode());
+            }
+            // 查询参与人员
+            List<TExperimentDispatchParticipants> tExperimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class)
+                    .eq(TExperimentDispatchParticipants::getDispatchId, experimentDispatch.getId()));
+            List<Long> userIds1 = tExperimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getUserId).distinct().collect(Collectors.toList());
+            List<SysUser> sysUsers1 = sysUserMapper.selectUserByIds(userIds1);
+            String participantsName = sysUsers1.stream().map(SysUser::getNickName).collect(Collectors.joining(";"));
+            experimentDispatch.setParticipantsName(participantsName);
+        }
+        tResultWorkEvaluateVO.setExperimentDispatch(experimentDispatch);
+
+        // 查询被评定人
+        SysUser sysUser = sysUserService.selectUserById(tResultWorkEvaluateVO.getUserId());
+        if(tResultWorkEvaluateVO.getEvaluateType() == 2){
+            // 化验师
+            tResultWorkEvaluateVO.setChemistName(sysUser.getNickName());
+        }else {
+            // 实验员
+            tResultWorkEvaluateVO.setTesterName(sysUser.getNickName());
+        }
+
+        return R.ok(tResultWorkEvaluateVO);
     }
 
     /**
@@ -207,11 +285,12 @@
         TResultWorkEvaluateQuery query = JSON.parseObject(param, TResultWorkEvaluateQuery.class);
         SysUser sysUser = sysUserService.selectUserById(loginUser.getUser().getUserId());
         if (sysUser.getRoleType() != 1) {
-            List<String> collect = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, loginUser.getUser().getUserId()).list()
+            List<String> teamIds = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, loginUser.getUser().getUserId()).list()
                     .stream().map(TProjectTeamStaff::getTeamId).collect(Collectors.toList());
-            if (collect.isEmpty()) {
+            if (teamIds.isEmpty()) {
                 return R.ok(new PageInfo<>());
             }
+            query.setTeamIds(teamIds);
         }
         return R.ok(tResultWorkEvaluateService.pageList(query));
     }
@@ -228,7 +307,6 @@
         TResultWorkEvaluate resultWorkEvaluate = tResultWorkEvaluateService.getById(id);
         TProjectTeam projectTeam = projectTeamService.getById(resultWorkEvaluate.getTeamId());
         tResultWorkEvaluateDetailVO.setStartTime(projectTeam.getCreateTime());
-        TProjectTeamStaff one = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getTeamId, resultWorkEvaluate.getTeamId()).eq(TProjectTeamStaff::getRoleType, 3).last("limit 1").one();
         List<Long> role4 = projectTeamStaffService.lambdaQuery()
                 .eq(TProjectTeamStaff::getRoleType, 4).eq(TProjectTeamStaff::getTeamId, resultWorkEvaluate.getTeamId()).list()
                 .stream().map(TProjectTeamStaff::getUserId).collect(Collectors.toList());

--
Gitblit v1.7.1