From 25b19e60e004290531f61fdf608d1adb5e531903 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期六, 12 七月 2025 14:40:12 +0800 Subject: [PATCH] 保洁巡检本周代码 --- ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java | 151 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 129 insertions(+), 22 deletions(-) diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java index 4360667..2548608 100644 --- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java +++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java @@ -26,6 +26,8 @@ import com.ruoyi.system.query.TaskListQuery; import com.ruoyi.system.service.*; import com.ruoyi.system.vo.system.*; +import com.ruoyi.web.controller.tool.EmailUtils; +import com.ruoyi.web.controller.tool.MsgUtils; import com.sun.jna.platform.win32.LMAccess; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -81,6 +83,8 @@ @Resource private TDictDataService dictDataService; @Resource + private TNoticeSetService noticeSetService; + @Resource private TLeaveService leaveService; @Resource private TLeaveAuditService leaveAuditService; @@ -96,6 +100,8 @@ private TProblemEscalationService problemEscalationService; @Resource private TNoticeService noticeService; + @Resource + private MsgUtils msgUtils; @ApiOperation(value = "消息通知列表") @PostMapping(value = "/noticeList") @@ -443,10 +449,10 @@ public R<List<TaskListAllVO>> listAllTask(@RequestBody AppealListDTO appealListDTO) { appealListDTO.setUserId(tokenService.getLoginUserApplet().getUserId() + ""); SysUser sysUser = sysUserService.selectUserById(tokenService.getLoginUserApplet().getUserId()); - if (sysUser.getDeptType()==2){ - // 公司部门查询所有任务 - appealListDTO.setUserId(null); - } +// if (sysUser.getDeptType()==2){ +// // 公司部门查询所有任务 +// appealListDTO.setUserId(null); +// } List<TaskListAllVO> res = appealService.listAllTask(appealListDTO); return R.ok(res); } @@ -463,22 +469,17 @@ @ApiOperation(value = "上传督察任务") @PostMapping(value = "/addInspector") - public R<Boolean> addInspector(@RequestBody InspectorAddDTO dto) { + public R<Boolean> addInspector(@RequestBody InspectorAddDTO dto) throws Exception { TTask task = taskCleanerService.getById(dto.getTaskId()); TLocation location = locationService.getById(task.getLocationId()); SysUser sysUser = sysUserService.selectUserById(Long.valueOf(task.getPatrolInspector())); dto.setCommitPerson(tokenService.getLoginUserApplet().getUserId() + ""); + if (dto.getClearStatus() == 1) { dto.setStatus(4); } else { dto.setStatus(1); - TNotice tNotice = new TNotice(); - tNotice.setUserId(sysUser.getUserId()+""); - tNotice.setNoticeContent("【"+location.getLocationName()+"】任务督察不合格,请及时整改!"); - tNotice.setStatus(1); - tNotice.setDataId(dto.getTaskId()); - tNotice.setNoticeType(8); - noticeService.save(tNotice); + } inspectorService.save(dto); return R.ok(); @@ -636,7 +637,7 @@ @ApiOperation(value = "发起请假") @PostMapping(value = "/addLeave") - public R addLeave(@RequestBody LeaveDTO leaveDTO) { + public R addLeave(@RequestBody LeaveDTO leaveDTO) throws Exception { // String startTime1 = leaveDTO.getStartTime1(); // // 轉化爲LocalDateTime類型 // leaveDTO.setStartTime(LocalDateTime.parse(startTime1, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); @@ -658,6 +659,12 @@ leaveDTO.setTemplateId(user.getTemplateId()); leaveDTO.setLeavePerson(userId + ""); leaveService.save(leaveDTO); + TNoticeSet noticeSet = noticeSetService.lambdaQuery().eq(TNoticeSet::getType, 2).last("limit 1") + .one(); + // 邮箱 + TDictData email = dictDataService.lambdaQuery().eq(TDictData::getDataType,4).one(); + // 授权码 + TDictData code = dictDataService.lambdaQuery().eq(TDictData::getDataType,5).one(); //项目部负责人、部门负责人、公司成员提交由最终审批人审批; if (user.getDeptType() == 2 || sysRole.getRoleName().contains("项目部负责人") || sysRole.getRoleName().contains("部门负责人")) { TLeaveAudit tLeaveAudit1 = new TLeaveAudit(); @@ -696,6 +703,29 @@ tLeaveAudit1.setAuditId(sysUser.getUserId() + ""); tLeaveAudit1.setAuditType(1); leaveAuditService.save(tLeaveAudit1); + // 新增消息 + TNotice tNotice = new TNotice(); + tNotice.setUserId(sysUser.getUserId()+""); + tNotice.setNoticeContent(user.getNickName() + "提交了请假申请,请尽快审核"); + tNotice.setStatus(1); + tNotice.setDataId(leaveDTO.getId()); + tNotice.setNoticeType(6); + + switch (noticeSet.getNoticeType()) { + case 1: + msgUtils.sendMsg4(sysUser.getPhonenumber()); + break; + case 2: + if (StringUtils.hasLength(email.getDataContent()) && StringUtils.hasLength(code.getDataContent())) { + EmailUtils.sendEmail(sysUser.getEmail(), email.getDataContent(), code.getDataContent(), "你有一条请假申请待处理,请登录沿海市政质管小程序处理。"); + } + break; + case 3: + break; + } + + + noticeService.save(tNotice); TLeaveAudit tLeaveAudit2 = new TLeaveAudit(); tLeaveAudit2.setLeaveId(leaveDTO.getId()); tLeaveAudit2.setAuditStatus(2); @@ -716,6 +746,26 @@ tLeaveAudit1.setAuditId(sysUser.getUserId() + ""); tLeaveAudit1.setAuditType(1); leaveAuditService.save(tLeaveAudit1); + // 新增消息 + TNotice tNotice = new TNotice(); + tNotice.setUserId(sysUser.getUserId()+""); + tNotice.setNoticeContent(user.getNickName() + "提交了请假申请,请尽快审核"); + tNotice.setStatus(1); + tNotice.setDataId(leaveDTO.getId()); + tNotice.setNoticeType(6); + noticeService.save(tNotice); + switch (noticeSet.getNoticeType()) { + case 1: + msgUtils.sendMsg4(sysUser.getPhonenumber()); + break; + case 2: + if (StringUtils.hasLength(email.getDataContent()) && StringUtils.hasLength(code.getDataContent())) { + EmailUtils.sendEmail(sysUser.getEmail(), email.getDataContent(), code.getDataContent(), "你有一条请假申请待处理,请登录沿海市政质管小程序处理。"); + } + break; + case 3: + break; + } TLeaveAudit tLeaveAudit2 = new TLeaveAudit(); tLeaveAudit2.setLeaveId(leaveDTO.getId()); tLeaveAudit2.setAuditStatus(2); @@ -743,6 +793,26 @@ tLeaveAudit1.setAuditId(sysUser.getUserId() + ""); tLeaveAudit1.setAuditType(1); leaveAuditService.save(tLeaveAudit1); + // 新增消息 + TNotice tNotice = new TNotice(); + tNotice.setUserId(sysUser.getUserId()+""); + tNotice.setNoticeContent(user.getNickName() + "提交了请假申请,请尽快审核"); + tNotice.setStatus(1); + tNotice.setDataId(leaveDTO.getId()); + tNotice.setNoticeType(6); + noticeService.save(tNotice); + switch (noticeSet.getNoticeType()) { + case 1: + msgUtils.sendMsg4(sysUser.getPhonenumber()); + break; + case 2: + if (StringUtils.hasLength(email.getDataContent()) && StringUtils.hasLength(code.getDataContent())) { + EmailUtils.sendEmail(sysUser.getEmail(), email.getDataContent(), code.getDataContent(), "你有一条请假申请待处理,请登录沿海市政质管小程序处理。"); + } + break; + case 3: + break; + } TLeaveAudit tLeaveAudit2 = new TLeaveAudit(); tLeaveAudit2.setLeaveId(leaveDTO.getId()); tLeaveAudit2.setAuditStatus(2); @@ -754,14 +824,7 @@ } } - // 新增消息 - TNotice tNotice = new TNotice(); - tNotice.setUserId(leaveDTO.getAuditId()); - tNotice.setNoticeContent(user.getNickName() + "提交了请假申请,请尽快审核"); - tNotice.setStatus(1); - tNotice.setDataId(leaveDTO.getId()); - tNotice.setNoticeType(6); - noticeService.save(tNotice); + return R.ok(); } @@ -774,14 +837,21 @@ @ApiOperation(value = "我的审批-审批") @PostMapping(value = "/auditLeave") - public R<Boolean> auditLeave(@RequestBody LeaveAuditDTO dto) { + public R<Boolean> auditLeave(@RequestBody LeaveAuditDTO dto) throws Exception { dto.setAuditId(tokenService.getLoginUserApplet().getUserId() + ""); dto.setAuditTime(LocalDateTime.now()); leaveService.updateById(dto); + List<SysUser> sysUsers = sysUserService.selectAllList(); SysUser sysUser = sysUserService.selectUserById(Long.valueOf(dto.getLeavePerson())); TLeaveAudit leaveAudit = leaveAuditService.lambdaQuery().eq(TLeaveAudit::getLeaveId, dto.getId()) .eq(TLeaveAudit::getAuditType, 2).one(); + TNoticeSet noticeSet = noticeSetService.lambdaQuery().eq(TNoticeSet::getType, 2).last("limit 1") + .one(); + // 邮箱 + TDictData email = dictDataService.lambdaQuery().eq(TDictData::getDataType,4).one(); + // 授权码 + TDictData code = dictDataService.lambdaQuery().eq(TDictData::getDataType,5).one(); TNotice tNotice = new TNotice(); tNotice.setUserId(leaveAudit.getAuditId().split(",")[0]); tNotice.setNoticeContent(sysUser.getNickName()+"的请假申请已审核,请查收"); @@ -789,6 +859,29 @@ tNotice.setDataId(dto.getId()); tNotice.setNoticeType(7); noticeService.save(tNotice); + LocalDateTime startTime = dto.getStartTime(); + LocalDateTime endTime = dto.getEndTime(); + SysUser sysUser1 = sysUsers.stream().filter(e -> e.getUserId().equals(Long.valueOf(leaveAudit.getAuditId().split(",")[0]))) + .findFirst().orElse(null); + SysUser sysUser2 = sysUsers.stream().filter(e -> e.getUserId().equals(Long.valueOf(leaveAudit.getAuditId().split(",")[1]))) + .findFirst().orElse(null); + // 转化为yyyy-MM-dd 格式字符串 + String leaveTime = startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))+"至"+endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); + if (sysUser1!=null){ + switch (noticeSet.getNoticeType()) { + case 1: + msgUtils.sendMsg5(sysUser1.getPhonenumber(),sysUser1.getNickName(),leaveTime); + break; + case 2: + if (StringUtils.hasLength(email.getDataContent())&&StringUtils.hasLength(code.getDataContent())){ + EmailUtils.sendEmail(sysUser1.getEmail(),email.getDataContent(),code.getDataContent(),sysUser1.getNickName()+"的请假申请已审核,请查收"); + } + break; + case 3: + break; + } + } + TNotice tNotice1 = new TNotice(); tNotice1.setUserId(leaveAudit.getAuditId().split(",")[1]); tNotice1.setNoticeContent(sysUser.getNickName()+"的请假申请已审核,请查收"); @@ -796,6 +889,20 @@ tNotice1.setDataId(dto.getId()); tNotice1.setNoticeType(7); noticeService.save(tNotice1); + if (sysUser2!=null) { + switch (noticeSet.getNoticeType()) { + case 1: + msgUtils.sendMsg5(sysUser2.getPhonenumber(), sysUser2.getNickName(), leaveTime); + break; + case 2: + if (StringUtils.hasLength(email.getDataContent()) && StringUtils.hasLength(code.getDataContent())) { + EmailUtils.sendEmail(sysUser2.getEmail(), email.getDataContent(), code.getDataContent(), sysUser2.getNickName() + "的请假申请已审核,请查收"); + } + break; + case 3: + break; + } + } return R.ok(); } -- Gitblit v1.7.1