From a069a12647ab551281091efb0f066163d1c8c156 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期一, 02 六月 2025 17:36:30 +0800 Subject: [PATCH] 首页待办事项 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java | 44 +++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 41 insertions(+), 3 deletions(-) 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 839d2a4..3b261e1 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 @@ -12,17 +12,20 @@ import com.ruoyi.system.dto.AuditStatusDTO; import com.ruoyi.system.dto.TQaProduceReportDTO; import com.ruoyi.system.dto.TQaProduceReportEvaluateDTO; +import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.model.TProjectTeam; import com.ruoyi.system.model.TProjectTeamStaff; import com.ruoyi.system.model.TQaProduceReport; import com.ruoyi.system.model.TQaReportFile; import com.ruoyi.system.query.TQaProduceReportQuery; import com.ruoyi.system.service.*; +import com.ruoyi.system.vo.TProjectTeamVO; import com.ruoyi.system.vo.TQaProduceReportVO; 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.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; @@ -49,14 +52,18 @@ private final TProjectTeamService projectTeamService; private final TProjectTeamStaffService projectTeamStaffService; private final ISysUserService sysUserService; + private final SysUserMapper sysUserMapper; + private final TNoticeService noticeService; @Autowired - public TQaProduceReportController(TQaProduceReportService qaProduceReportService, TQaReportFileService qaReportFileService, TokenService tokenService, TProjectTeamService projectTeamService, TProjectTeamStaffService projectTeamStaffService, ISysUserService sysUserService) { + public TQaProduceReportController(TQaProduceReportService qaProduceReportService, TQaReportFileService qaReportFileService, TokenService tokenService, TProjectTeamService projectTeamService, TProjectTeamStaffService projectTeamStaffService, ISysUserService sysUserService, SysUserMapper sysUserMapper, TNoticeService noticeService) { this.qaProduceReportService = qaProduceReportService; this.qaReportFileService = qaReportFileService; this.tokenService = tokenService; this.projectTeamService = projectTeamService; this.projectTeamStaffService = projectTeamStaffService; this.sysUserService = sysUserService; + this.sysUserMapper = sysUserMapper; + this.noticeService = noticeService; } /** @@ -172,6 +179,16 @@ } } qaReportFileService.saveBatch(qaReportFiles); + + // MESSAGE 添加消息 + TProjectTeamStaff teamStaff = projectTeamStaffService.getOne(Wrappers.lambdaQuery(TProjectTeamStaff.class) + .eq(TProjectTeamStaff::getTeamId, projectTeam.getId()) + .eq(TProjectTeamStaff::getRoleType, 3) + .last("LIMIT 1")); + if(Objects.nonNull(teamStaff)){ + noticeService.saveNotice(teamStaff.getUserId(), "您有【1】条【项目检测项、检验包列表】/【中试、生产验证试验检验分析报告】/【原辅料、包材、竞品检验分析报告】/【产品报批及项目工作总结报告】等待审核", tokenService.getLoginUser().getUser().getNickName(),9); + } + return R.ok(); } @@ -225,8 +242,25 @@ .eq(TQaReportFile::getReportId, id) .ne(TQaReportFile::getReportType, QaReportFileEnum.TEST_REPORT.getCode())); qaProduceReportVO.setQaReportFileList(qaReportFiles); - // 获取项目组名称 - qaProduceReportVO.setTeamName(projectTeamService.getById(qaProduceReport.getTeamId()).getTeamName()); + // 查询项目组名称 + TProjectTeam projectTeam = projectTeamService.getById(qaProduceReport.getTeamId()); + TProjectTeamVO projectTeamVO = new TProjectTeamVO(); + BeanUtils.copyProperties(projectTeam, projectTeamVO); + // 查询项目组成员 + List<TProjectTeamStaff> list = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class).eq(TProjectTeamStaff::getTeamId, qaProduceReport.getTeamId())); + if (!CollectionUtils.isEmpty(list)){ + List<Long> userIds = list.stream().map(TProjectTeamStaff::getUserId).distinct().collect(Collectors.toList()); + // 查询所有人员 + List<SysUser> sysUsers = sysUserMapper.selectUserByIds(userIds); + for (TProjectTeamStaff tProjectTeamStaff : list) { + sysUsers.stream().filter(sysUser -> sysUser.getUserId().equals(tProjectTeamStaff.getUserId())).forEach(sysUser -> { + tProjectTeamStaff.setNickName(sysUser.getNickName()); + tProjectTeamStaff.setAvatar(sysUser.getAvatar()); + }); + } + projectTeamVO.setStaffs(list); + } + qaProduceReportVO.setProjectTeamVO(projectTeamVO); // 获取审批人名称 SysUser sysUser = sysUserService.selectUserById(qaProduceReport.getAuditPersonId()); if (Objects.nonNull(sysUser)) { @@ -298,6 +332,10 @@ qaProduceReport.setAuditPersonId(userId); qaProduceReport.setAuditTime(LocalDateTime.now()); qaProduceReportService.updateById(qaProduceReport); + + // MESSAGE 添加消息 + noticeService.saveNotice(userId, "您有【1】条【项目检测项、检验包列表】/【中试、生产验证试验检验分析报告】/【原辅料、包材、竞品检验分析报告】/【产品报批及项目工作总结报告】等待评定", tokenService.getLoginUser().getUser().getNickName(),10); + return R.ok(); } -- Gitblit v1.7.1