文档库--消息推送
This commit is contained in:
+41
-12
@@ -127,6 +127,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
@Value(value = "${jero.path.upload}")
|
||||
private String uploadpath;
|
||||
|
||||
@Value(value = "${jero.backUrl}")
|
||||
private String backUrl;
|
||||
|
||||
public static final String SEARCH_FLAG = "魑";
|
||||
|
||||
|
||||
@@ -1316,7 +1319,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
//新增时如果填写代替标准,需要向填写的代替标准的负责人发消息
|
||||
replaceStandardSend(Arrays.asList(replaceStandard.split(",")));
|
||||
}
|
||||
//向订阅该领域管理的人发消息
|
||||
//向订阅该领域管理的人发消息和飞书
|
||||
sendMsg(map, idTemp);
|
||||
//添加es
|
||||
map.put("id", idTemp);
|
||||
@@ -1527,20 +1530,26 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
mapTemp.put("domainId", map.get("technology_territory"));
|
||||
mapTemp.put("documentId", "");
|
||||
List<String> userIdList = domainUserRelService.queryDomainUserRelInfo(mapTemp);
|
||||
//给发送消息的用户
|
||||
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
|
||||
List<String> thirdIdList = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList());
|
||||
if (userIdList.size() != 0) {
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String title = (String) map.get("title");
|
||||
String serialNumber = (String) map.get("serial_number");
|
||||
String href = "<a href='/docManage/library/detail?id=" + idTemp +
|
||||
"&title=" + title +
|
||||
"&serial_number=" + serialNumber + "'" + " target='_blank'>" + serialNumber + "</a>";
|
||||
|
||||
String href = backUrl + "/docManage/library/detail?id=" + idTemp;
|
||||
String content = sysUser.getRealname() + "新增了" + serialNumber + "请及时查看";
|
||||
String contentInfo = sysUser.getRealname() + "新增了" + href + "请及时查看";
|
||||
//封装消息的实体类
|
||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||
sendWebsocket(idTemp, idTemp);
|
||||
//飞书
|
||||
try {
|
||||
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.PUSH.getName(), href);
|
||||
} catch (IOException e) {
|
||||
log.error("文档新增飞书消息推送失败");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3479,27 +3488,40 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
List<String> thirdIdList = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(departIds)) {
|
||||
//查询部门下的人员
|
||||
List<SysUser> userList = sysUserService.getUserListByDepIds(new ArrayList<>(allDepartIds));
|
||||
List<SysUser> userList = new ArrayList<>();
|
||||
if(allDepartIds.size() != 0){
|
||||
userList = sysUserService.getUserListByDepIds(new ArrayList<>(allDepartIds));
|
||||
}
|
||||
|
||||
if (userList.size() != 0) {
|
||||
userIdList = userList.stream().map(SysUser::getId).distinct().collect(Collectors.toList());
|
||||
thirdIdList = userList.stream().map(SysUser::getThirdId).distinct().collect(Collectors.toList());
|
||||
}
|
||||
}
|
||||
if(userIdList.size() == 0 && StringUtils.isNotBlank(userIds)){
|
||||
List<SysUser> sysUsers = sysUserService.listByIds(Arrays.asList(userIds.split(",")));
|
||||
if(sysUsers.size() != 0){
|
||||
List<String> userId = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||
List<String> thirdId = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList());
|
||||
userIdList.addAll(userId);
|
||||
thirdIdList.addAll(thirdId);
|
||||
}
|
||||
}
|
||||
|
||||
// userIdList.addAll(Arrays.asList(userIds.split(",")));
|
||||
//查询文档
|
||||
List<Map<String, Object>> mapList = bussDocumentLibraryEOMapper.selectMapsAll(documentIds);
|
||||
List<String> serialNumberList = new ArrayList<>();
|
||||
List<String> urlList = new ArrayList<>();
|
||||
List<String> hrefList = new ArrayList<>();
|
||||
for (Map<String, Object> map : mapList) {
|
||||
serialNumberList.add((String) map.get("serial_number"));
|
||||
// String href = "<a href='/docManage/library/detail?id:" + idTemp +
|
||||
// "&title:" + title +
|
||||
// "&serial_number:" + serialNumber + "'" + " target='_blank'>" + serialNumber + "</a>";
|
||||
String url = backUrl + "/docManage/library/detail?id=" + (String) map.get("id");
|
||||
|
||||
String href = "<a href='/docManage/library/detail?id=" + (String) map.get("id") +
|
||||
"&title=" + (String) map.get("title") +
|
||||
"&serial_number=" + (String) map.get("serial_number") + "'" + " target='_blank'>" + (String) map.get("serial_number") + "</a>,";
|
||||
urlList.add(url);
|
||||
hrefList.add(href);
|
||||
}
|
||||
|
||||
@@ -3512,9 +3534,16 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||
//飞书
|
||||
try {
|
||||
for (String s : hrefList) {
|
||||
String msg = sysUser.getRealname() + "推送了" + s;
|
||||
iFeishuService.batchSendMessage(new String[thirdIdList.size()], content, "转发推送", msg);
|
||||
for (String s : urlList) {
|
||||
List<String> list = new ArrayList<>();
|
||||
mapList.stream().forEach(e->{
|
||||
if(s.contains((String)e.get("id"))){
|
||||
String serialNumber = (String) e.get("serial_number");
|
||||
list.add(serialNumber);
|
||||
}
|
||||
});
|
||||
String contentTemp = sysUser.getRealname() + "向您推送了" + StringUtils.join(list, ",") + ",请注意查看。";
|
||||
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), contentTemp, MessageTypeEnum.PUSH.getName(), s);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
log.error("飞书推送失败");
|
||||
|
||||
@@ -190,6 +190,7 @@ mybatis-plus:
|
||||
jero :
|
||||
# 本地:local\Minio:minio\阿里云:alioss
|
||||
uploadType: local
|
||||
backUrl: http://localhost:3000
|
||||
path :
|
||||
#文件上传根目录 设置
|
||||
upload: D://opt//upFiles
|
||||
|
||||
Reference in New Issue
Block a user