From 6bf77f70ff3396fc1b7050c9454225523f506b1f Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期二, 01 七月 2025 09:20:08 +0800 Subject: [PATCH] bug修改 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java | 79 ++++++++++++++++++++++++++++----------- 1 files changed, 56 insertions(+), 23 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java index 9fac33e..d381c0c 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java @@ -81,12 +81,16 @@ // 获取当前用户 Long userId = tokenService.getLoginUser().getUserId(); Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); + query.setRoleType(roleType); if (roleType != 1){ query.setUserId(userId); if(roleType ==2){ // 查询项目组 TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getUserId, userId)); + if(Objects.isNull(projectTeamStaff)){ + return R.fail("当前用户未加入项目组,无法进行操作"); + } // 查询项目的工艺工程师id TProjectTeamStaff teamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) .eq(TProjectTeamStaff::getTeamId, projectTeamStaff.getTeamId()) @@ -122,14 +126,36 @@ // 获取当前用户 Long userId = tokenService.getLoginUser().getUserId(); Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); + query.setRoleType(roleType); if (roleType != 1){ query.setUserId(userId); - // 查询实验参与人员 - List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) - .eq(TExperimentDispatchParticipants::getUserId, userId)); - if(!CollectionUtils.isEmpty(experimentDispatchParticipants)){ - List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); - query.setDispatchIds(dispatchIds); + if(roleType ==2){ + // 查询项目组 + TProjectTeamStaff projectTeamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) + .eq(TProjectTeamStaff::getUserId, userId)); + if(Objects.isNull(projectTeamStaff)){ + return R.fail("当前用户未加入项目组,无法进行操作"); + } + // 查询项目的工艺工程师id + TProjectTeamStaff teamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) + .eq(TProjectTeamStaff::getTeamId, projectTeamStaff.getTeamId()) + .eq(TProjectTeamStaff::getRoleType, 3) + .last("LIMIT 1")); + // 查询实验参与人员 + List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) + .eq(TExperimentDispatchParticipants::getUserId, teamStaff.getUserId())); + if(!CollectionUtils.isEmpty(experimentDispatchParticipants)){ + List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); + query.setDispatchIds(dispatchIds); + } + }else { + // 查询实验参与人员 + List<TExperimentDispatchParticipants> experimentDispatchParticipants = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) + .eq(TExperimentDispatchParticipants::getUserId, userId)); + if(!CollectionUtils.isEmpty(experimentDispatchParticipants)){ + List<String> dispatchIds = experimentDispatchParticipants.stream().map(TExperimentDispatchParticipants::getDispatchId).distinct().collect(Collectors.toList()); + query.setDispatchIds(dispatchIds); + } } } return R.ok(experimentSchemeService.auditPageList(query)); @@ -152,6 +178,7 @@ if(sysUser != null){ tExperimentDispatchParticipant.setNickName(sysUser.getNickName()); tExperimentDispatchParticipant.setAvatar(sysUser.getAvatar()); + tExperimentDispatchParticipant.setCreateTime(sysUser.getCreateTime()); } }); } @@ -249,23 +276,6 @@ TExperimentSchemeVO experimentSchemeVO = new TExperimentSchemeVO(); BeanUtils.copyProperties(experimentScheme, experimentSchemeVO); - // 查询实验调度信息 - TExperimentDispatch experimentDispatch = experimentDispatchService.getById(experimentSchemeVO.getDispatchId()); - if(Objects.nonNull(experimentDispatch)){ - // 查询课题方案名称 - TProjectProposal projectProposal = projectProposalService.getById(experimentDispatch.getProposalId()); - if(Objects.nonNull(projectProposal)){ - experimentDispatch.setProjectName(projectProposal.getProjectName()); - experimentDispatch.setProjectCode(projectProposal.getProjectCode()); - } - } - experimentSchemeVO.setExperimentDispatch(experimentDispatch); - - // 查询组别 - List<TExperimentDispatchParticipants> list = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) - .eq(TExperimentDispatchParticipants::getDispatchId, experimentSchemeVO.getDispatchId())); - experimentSchemeVO.setExperimentDispatchParticipants(list); - // 获取实验人员 List<TExperimentSchemePerson> experimentSchemePersons = experimentSchemePersonService.list(Wrappers.lambdaQuery(TExperimentSchemePerson.class) .eq(TExperimentSchemePerson::getSchemeId, id)); @@ -278,6 +288,29 @@ }); }); experimentSchemeVO.setExperimentSchemePersons(experimentSchemePersons); + // 查询实验调度信息 + TExperimentDispatch experimentDispatch = experimentDispatchService.getById(experimentSchemeVO.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); + } + experimentSchemeVO.setExperimentDispatch(experimentDispatch); + + // 查询组别 + List<TExperimentDispatchParticipants> list = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) + .eq(TExperimentDispatchParticipants::getDispatchId, experimentSchemeVO.getDispatchId())); + experimentSchemeVO.setExperimentDispatchParticipants(list); // 查询审核人姓名 SysUser sysUser = sysUserService.selectUserById(experimentScheme.getAuditPersonId()); -- Gitblit v1.7.1