文档库--发送消息添添加websocket
This commit is contained in:
+11
@@ -8,8 +8,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
import com.jero.common.constant.CommonConstant;
|
import com.jero.common.constant.CommonConstant;
|
||||||
|
import com.jero.common.constant.WebsocketConst;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.common.util.oConvertUtils;
|
import com.jero.common.util.oConvertUtils;
|
||||||
|
import com.jero.modules.message.websocket.WebSocket;
|
||||||
import com.jero.modules.system.entity.SysAnnouncementSend;
|
import com.jero.modules.system.entity.SysAnnouncementSend;
|
||||||
import com.jero.modules.system.model.AnnouncementSendModel;
|
import com.jero.modules.system.model.AnnouncementSendModel;
|
||||||
import com.jero.modules.system.service.ISysAnnouncementSendService;
|
import com.jero.modules.system.service.ISysAnnouncementSendService;
|
||||||
@@ -26,6 +28,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
@@ -47,6 +50,8 @@ import java.util.List;
|
|||||||
public class SysAnnouncementSendController {
|
public class SysAnnouncementSendController {
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISysAnnouncementSendService sysAnnouncementSendService;
|
private ISysAnnouncementSendService sysAnnouncementSendService;
|
||||||
|
@Resource
|
||||||
|
private WebSocket webSocket;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
@@ -257,6 +262,12 @@ public class SysAnnouncementSendController {
|
|||||||
list.add(sysAnnouncementSend);
|
list.add(sysAnnouncementSend);
|
||||||
}
|
}
|
||||||
sysAnnouncementSendService.updateBatchById(list);
|
sysAnnouncementSendService.updateBatchById(list);
|
||||||
|
//
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put(WebsocketConst.MSG_CMD, WebsocketConst.CMD_TOPIC);
|
||||||
|
obj.put(WebsocketConst.MSG_ID, ids);
|
||||||
|
obj.put(WebsocketConst.MSG_TXT, ids);
|
||||||
|
webSocket.sendMessage(obj.toJSONString());
|
||||||
result.setSuccess(true);
|
result.setSuccess(true);
|
||||||
result.setMessage("标记已读");
|
result.setMessage("标记已读");
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
-16
@@ -1,13 +1,10 @@
|
|||||||
package com.jero.modules.document.controller;
|
package com.jero.modules.document.controller;
|
||||||
|
|
||||||
import cn.hutool.core.util.ZipUtil;
|
|
||||||
import com.aliyuncs.utils.IOUtils;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
import com.jero.common.aspect.annotation.AutoLog;
|
import com.jero.common.aspect.annotation.AutoLog;
|
||||||
import com.jero.common.exception.JeroBootException;
|
|
||||||
import com.jero.common.system.base.controller.JeroController;
|
import com.jero.common.system.base.controller.JeroController;
|
||||||
import com.jero.common.system.query.QueryGenerator;
|
import com.jero.common.system.query.QueryGenerator;
|
||||||
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
||||||
@@ -16,13 +13,6 @@ import io.swagger.annotations.Api;
|
|||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.sf.json.JSONObject;
|
import net.sf.json.JSONObject;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
|
||||||
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
|
|
||||||
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
|
||||||
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
||||||
import org.apache.poi.ss.usermodel.Row;
|
|
||||||
import org.apache.poi.ss.usermodel.VerticalAlignment;
|
|
||||||
import org.apache.poi.ss.usermodel.Workbook;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
@@ -38,12 +28,6 @@ import org.springframework.web.servlet.ModelAndView;
|
|||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.File;
|
|
||||||
import java.io.FileInputStream;
|
|
||||||
import java.io.FileOutputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.OutputStream;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|||||||
+18
@@ -1,12 +1,14 @@
|
|||||||
package com.jero.modules.document.service.impl;
|
package com.jero.modules.document.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.util.ZipUtil;
|
import cn.hutool.core.util.ZipUtil;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.aliyuncs.utils.IOUtils;
|
import com.aliyuncs.utils.IOUtils;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.constant.CommonConstant;
|
import com.jero.common.constant.CommonConstant;
|
||||||
|
import com.jero.common.constant.WebsocketConst;
|
||||||
import com.jero.common.constant.enums.CutEnum;
|
import com.jero.common.constant.enums.CutEnum;
|
||||||
import com.jero.common.constant.enums.MessageTypeEnum;
|
import com.jero.common.constant.enums.MessageTypeEnum;
|
||||||
import com.jero.common.constant.enums.ModuleEnum;
|
import com.jero.common.constant.enums.ModuleEnum;
|
||||||
@@ -25,6 +27,7 @@ import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
|||||||
import com.jero.modules.domain.service.DomainUserRelService;
|
import com.jero.modules.domain.service.DomainUserRelService;
|
||||||
import com.jero.modules.log.entity.BussLogEO;
|
import com.jero.modules.log.entity.BussLogEO;
|
||||||
import com.jero.modules.log.service.IBussLogEOService;
|
import com.jero.modules.log.service.IBussLogEOService;
|
||||||
|
import com.jero.modules.message.websocket.WebSocket;
|
||||||
import com.jero.modules.oss.entity.OSSFile;
|
import com.jero.modules.oss.entity.OSSFile;
|
||||||
import com.jero.modules.oss.service.IOSSFileService;
|
import com.jero.modules.oss.service.IOSSFileService;
|
||||||
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
||||||
@@ -63,6 +66,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@@ -120,6 +124,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
private ISysBaseAPI sysBaseAPI;
|
private ISysBaseAPI sysBaseAPI;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISysUserService sysUserService;
|
private ISysUserService sysUserService;
|
||||||
|
@Resource
|
||||||
|
private WebSocket webSocket;
|
||||||
|
|
||||||
@Value(value = "${jero.path.upload}")
|
@Value(value = "${jero.path.upload}")
|
||||||
private String uploadpath;
|
private String uploadpath;
|
||||||
@@ -1026,6 +1032,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
|
sendWebsocket((String) map.get("id"),(String) map.get("id"));
|
||||||
}
|
}
|
||||||
//2. 处理修改代替标准的发送消息
|
//2. 处理修改代替标准的发送消息
|
||||||
//处理修改代替标准,发送通知
|
//处理修改代替标准,发送通知
|
||||||
@@ -1045,14 +1052,24 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
List<String> listNew = list.stream().filter(e -> !listTemp.contains(e)).collect(Collectors.toList());
|
List<String> listNew = list.stream().filter(e -> !listTemp.contains(e)).collect(Collectors.toList());
|
||||||
//向listNew对应的工程师发飞书通知
|
//向listNew对应的工程师发飞书通知
|
||||||
replaceStandardSend(listNew);
|
replaceStandardSend(listNew);
|
||||||
|
sendWebsocket((String) map.get("id"),(String) map.get("id"));
|
||||||
} else if(StringUtils.isBlank(replaceStandardTemp) && StringUtils.isNotBlank(replaceStandard)) {
|
} else if(StringUtils.isBlank(replaceStandardTemp) && StringUtils.isNotBlank(replaceStandard)) {
|
||||||
//(2)此种情况为编辑前代替标准没有数据
|
//(2)此种情况为编辑前代替标准没有数据
|
||||||
//向replaceStandard对应的工程师发飞书通知
|
//向replaceStandard对应的工程师发飞书通知
|
||||||
replaceStandardSend(Arrays.asList(replaceStandard.split(",")));
|
replaceStandardSend(Arrays.asList(replaceStandard.split(",")));
|
||||||
|
sendWebsocket((String) map.get("id"),(String) map.get("id"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void sendWebsocket(String msgId,String msgTet) {
|
||||||
|
JSONObject obj = new JSONObject();
|
||||||
|
obj.put(WebsocketConst.MSG_CMD, WebsocketConst.CMD_TOPIC);
|
||||||
|
obj.put(WebsocketConst.MSG_ID, msgId);
|
||||||
|
obj.put(WebsocketConst.MSG_TXT, msgTet);
|
||||||
|
webSocket.sendMessage(obj.toJSONString());
|
||||||
|
}
|
||||||
|
|
||||||
private void replaceStandardSend(List<String> documentIdList) {
|
private void replaceStandardSend(List<String> documentIdList) {
|
||||||
LambdaQueryWrapper<BussDocumentLibraryEO> lambdaQueryWrapperTemp = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<BussDocumentLibraryEO> lambdaQueryWrapperTemp = new LambdaQueryWrapper<>();
|
||||||
lambdaQueryWrapperTemp.in(BussDocumentLibraryEO::getId, documentIdList);
|
lambdaQueryWrapperTemp.in(BussDocumentLibraryEO::getId, documentIdList);
|
||||||
@@ -1070,6 +1087,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
|
sendWebsocket(StringUtils.join(documentIdList,","),StringUtils.join(documentIdList,","));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user