| | |
| | | import com.ruoyi.system.utils.wx.tools.WxAppletTools; |
| | | import com.ruoyi.system.utils.wx.tools.WxUtils; |
| | | 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; |
| | |
| | | @Resource |
| | | private TDictDataService dictDataService; |
| | | @Resource |
| | | private TNoticeSetService noticeSetService; |
| | | @Resource |
| | | private TLeaveService leaveService; |
| | | @Resource |
| | | private TLeaveAuditService leaveAuditService; |
| | |
| | | sysUserService.updateUser(sysUser); |
| | | return R.ok(); |
| | | } |
| | | @Resource |
| | | private MsgUtils msgUtils; |
| | | |
| | | @ApiOperation(value = "消息通知列表") |
| | | @PostMapping(value = "/noticeList") |
| | |
| | | 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); |
| | | } |
| | |
| | | |
| | | @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(); |
| | |
| | | |
| | | @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"))); |
| | |
| | | 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(); |
| | |
| | | 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); |
| | |
| | | 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); |
| | |
| | | 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); |
| | |
| | | } |
| | | } |
| | | |
| | | // 新增消息 |
| | | 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(); |
| | | } |
| | | |
| | |
| | | |
| | | @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()+"的请假申请已审核,请查收"); |
| | |
| | | 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()+"的请假申请已审核,请查收"); |
| | |
| | | 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(); |
| | | } |
| | | |