| | |
| | | import cn.exrick.xboot.core.service.MessageSendService; |
| | | import cn.exrick.xboot.core.service.MessageService; |
| | | import cn.exrick.xboot.core.service.UserService; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import cn.hutool.http.HtmlUtil; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | |
| | | public Result<Page<Message>> getByCondition(Message message, |
| | | SearchVo searchVo, |
| | | PageVo pageVo) { |
| | | |
| | | if(pageVo.getPageSize()==0){ |
| | | pageVo.setPageSize(5); |
| | | } |
| | | if(StrUtil.isEmpty(pageVo.getOrder())){ |
| | | pageVo.setOrder("desc"); |
| | | pageVo.setSort("createTime"); |
| | | } |
| | | Page<Message> page = messageService.findByCondition(message, searchVo, PageUtil.initPage(pageVo)); |
| | | page.forEach(e->{ |
| | | e.setContentText(HtmlUtil.cleanHtmlTag(e.getContent())); |
| | |
| | | |
| | | Message m = messageService.save(message); |
| | | // 保存消息发送表 |
| | | List<MessageSend> messageSends = new ArrayList<>(); |
| | | if (CommonConstant.MESSAGE_RANGE_ALL.equals(message.getRange())) { |
| | | // 全体 |
| | | List<User> allUser = userService.getAll(); |
| | | allUser.forEach(u -> { |
| | | MessageSend ms = new MessageSend().setMessageId(m.getId()).setUserId(u.getId()); |
| | | messageSends.add(ms); |
| | | }); |
| | | sendService.saveOrUpdateAll(messageSends); |
| | | // 推送 |
| | | messagingTemplate.convertAndSend("/topic/subscribe", "您收到了新的系统消息"); |
| | | } else if (CommonConstant.MESSAGE_RANGE_USER.equals(message.getRange())) { |
| | | // 指定用户 |
| | | for (String id : message.getUserIds()) { |
| | | MessageSend ms = new MessageSend().setMessageId(m.getId()).setUserId(id); |
| | | messageSends.add(ms); |
| | | } |
| | | sendService.saveOrUpdateAll(messageSends); |
| | | // 推送 |
| | | for (String id : message.getUserIds()) { |
| | | messagingTemplate.convertAndSendToUser(id, "/queue/subscribe", "您收到了新的消息"); |
| | | } |
| | | } |
| | | // List<MessageSend> messageSends = new ArrayList<>(); |
| | | // if (CommonConstant.MESSAGE_RANGE_ALL.equals(message.getRange())) { |
| | | // // 全体 |
| | | // List<User> allUser = userService.getAll(); |
| | | // allUser.forEach(u -> { |
| | | // MessageSend ms = new MessageSend().setMessageId(m.getId()).setUserId(u.getId()); |
| | | // messageSends.add(ms); |
| | | // }); |
| | | // sendService.saveOrUpdateAll(messageSends); |
| | | // // 推送 |
| | | // messagingTemplate.convertAndSend("/topic/subscribe", "您收到了新的系统消息"); |
| | | // } else if (CommonConstant.MESSAGE_RANGE_USER.equals(message.getRange())) { |
| | | // // 指定用户 |
| | | // for (String id : message.getUserIds()) { |
| | | // MessageSend ms = new MessageSend().setMessageId(m.getId()).setUserId(id); |
| | | // messageSends.add(ms); |
| | | // } |
| | | // sendService.saveOrUpdateAll(messageSends); |
| | | // // 推送 |
| | | // for (String id : message.getUserIds()) { |
| | | // messagingTemplate.convertAndSendToUser(id, "/queue/subscribe", "您收到了新的消息"); |
| | | // } |
| | | // } |
| | | return ResultUtil.success("添加成功"); |
| | | } |
| | | |
| | |
| | | public Result<Object> delMessage(@RequestParam String[] ids) { |
| | | |
| | | for (String id : ids) { |
| | | if (ActivitiConstant.MESSAGE_PASS_ID.equals(id) || ActivitiConstant.MESSAGE_BACK_ID.equals(id) || ActivitiConstant.MESSAGE_DELEGATE_ID.equals(id) |
| | | || ActivitiConstant.MESSAGE_TODO_ID.equals(id)) { |
| | | return ResultUtil.error("抱歉,无法删除工作流相关系统消息"); |
| | | } |
| | | // if (ActivitiConstant.MESSAGE_PASS_ID.equals(id) || ActivitiConstant.MESSAGE_BACK_ID.equals(id) || ActivitiConstant.MESSAGE_DELEGATE_ID.equals(id) |
| | | // || ActivitiConstant.MESSAGE_TODO_ID.equals(id)) { |
| | | // return ResultUtil.error("抱歉,无法删除工作流相关系统消息"); |
| | | // } |
| | | messageService.delete(id); |
| | | // 删除发送表 |
| | | sendService.deleteByMessageId(id); |
| | | //sendService.deleteByMessageId(id); |
| | | } |
| | | return ResultUtil.success("编辑成功"); |
| | | } |