文档库--编辑时发消息
This commit is contained in:
+55
-13
@@ -902,6 +902,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
List<OnlCgformField> fieldFileList,
|
List<OnlCgformField> fieldFileList,
|
||||||
List<OnlCgformField> fieldPullList,
|
List<OnlCgformField> fieldPullList,
|
||||||
String cut) {
|
String cut) {
|
||||||
|
//1. 处理订阅的发送消息
|
||||||
//修改的内容
|
//修改的内容
|
||||||
StringBuilder sb = getUpdateInfo(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
|
StringBuilder sb = getUpdateInfo(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
@@ -919,19 +920,14 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
List<SysUser> userList = sysUserMapper.getUserListByNames(StringUtils.join(userNameList, ","));
|
List<SysUser> userList = sysUserMapper.getUserListByNames(StringUtils.join(userNameList, ","));
|
||||||
List<String> userIdList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
|
List<String> userIdList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||||
|
|
||||||
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
|
||||||
sysAnnouncement.setDelFlag("0");
|
String content = sysUser.getRealname()+"对"+serialNumber+"进行了修改请及时查看";
|
||||||
sysAnnouncement.setSendStatus("0");
|
String contentInfo = sysUser.getRealname()+"修改标准"+serialNumber+"中"+sb.toString();
|
||||||
sysAnnouncement.setSendTime(new Date());
|
//封装消息的实体类
|
||||||
sysAnnouncement.setDocumentId((String) dataList.get(0).get("id"));
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||||
sysAnnouncement.setMsgCategory(MessageTypeEnum.READ.getValue());//消息类型
|
|
||||||
sysAnnouncement.setMsgType(CommonConstant.MSG_TYPE_UESR);//指定用户
|
|
||||||
sysAnnouncement.setMsgContent(sysUser.getRealname()+"对"+serialNumber+"进行了修改请及时查看");
|
|
||||||
sysAnnouncement.setMsgContentInfo(sysUser.getRealname()+"修改标准"+serialNumber+"中"+sb.toString());
|
|
||||||
sysAnnouncement.setUserIds(StringUtils.join(userIdList,","));
|
|
||||||
//111111111111111111111111111111111
|
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
}
|
}
|
||||||
|
//2. 处理修改代替标准的发送消息
|
||||||
//处理修改代替标准,发送通知
|
//处理修改代替标准,发送通知
|
||||||
//修改时前端传参
|
//修改时前端传参
|
||||||
String replaceStandard = (String) map.get("replace_standard");
|
String replaceStandard = (String) map.get("replace_standard");
|
||||||
@@ -939,20 +935,66 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
//代替标准(根据id查询出来的)
|
//代替标准(根据id查询出来的)
|
||||||
String replaceStandardTemp = (String) dataList.get(0).get("replace_standard");
|
String replaceStandardTemp = (String) dataList.get(0).get("replace_standard");
|
||||||
|
|
||||||
|
List<String> userNameListTemp = new ArrayList<>();
|
||||||
|
List<String> serialNumberList = new ArrayList<>();
|
||||||
|
//(1)此种情况为编辑前代替标准就已经有数据了
|
||||||
if (StringUtils.isNotBlank(replaceStandardTemp) && !replaceStandard.equals(replaceStandardTemp)) {
|
if (StringUtils.isNotBlank(replaceStandardTemp) && !replaceStandard.equals(replaceStandardTemp)) {
|
||||||
//需要向被替代标准的法规工程师发送站内通知和飞书信息,提醒内容:"新标准编号"已实施,请注意更新“替代标准编号”状态
|
//需要向被替代标准的法规工程师发送站内通知和飞书信息,提醒内容:"新标准编号"已实施,请注意更新“替代标准编号”状态
|
||||||
List<String> list = Arrays.asList(replaceStandard.split(","));
|
List<String> list = Arrays.asList(replaceStandard.split(","));
|
||||||
List<String> listTemp = Arrays.asList(replaceStandardTemp.split(","));
|
List<String> listTemp = Arrays.asList(replaceStandardTemp.split(","));
|
||||||
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对应的工程师发飞书通知
|
||||||
|
LambdaQueryWrapper<BussDocumentLibraryEO> lambdaQueryWrapperTemp = new LambdaQueryWrapper<>();
|
||||||
|
lambdaQueryWrapperTemp.in(BussDocumentLibraryEO::getId,listNew);
|
||||||
|
List<Map<String, Object>> mapList = this.listMaps(lambdaQueryWrapperTemp);
|
||||||
|
|
||||||
} else {
|
for (Map<String, Object> stringObjectMap : mapList) {
|
||||||
|
userNameListTemp.add((String) stringObjectMap.get("create_by"));
|
||||||
|
serialNumberList.add((String) stringObjectMap.get("serial_number"));
|
||||||
|
}
|
||||||
|
List<SysUser> userList = sysUserMapper.getUserListByNames(StringUtils.join(userNameListTemp, ","));
|
||||||
|
List<String> userIdList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||||
|
|
||||||
|
String content = "新标准编号已实施,请注意更新替代标准编号:"+StringUtils.join(serialNumberList,",")+"的状态,"+"链接: http://localhost:3000/docManage/library";
|
||||||
|
//封装消息的实体类
|
||||||
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, content);
|
||||||
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
|
} else if(StringUtils.isBlank(replaceStandardTemp) && StringUtils.isNotBlank(replaceStandard)) {
|
||||||
|
//(2)此种情况为编辑前代替标准没有数据
|
||||||
//向replaceStandard对应的工程师发飞书通知
|
//向replaceStandard对应的工程师发飞书通知
|
||||||
|
LambdaQueryWrapper<BussDocumentLibraryEO> lambdaQueryWrapperTemp = new LambdaQueryWrapper<>();
|
||||||
|
lambdaQueryWrapperTemp.in(BussDocumentLibraryEO::getId,Arrays.asList(replaceStandard.split(",")));
|
||||||
|
List<Map<String, Object>> mapList = this.listMaps(lambdaQueryWrapperTemp);
|
||||||
|
for (Map<String, Object> stringObjectMap : mapList) {
|
||||||
|
userNameListTemp.add((String) stringObjectMap.get("create_by"));
|
||||||
|
serialNumberList.add((String) stringObjectMap.get("serial_number"));
|
||||||
|
}
|
||||||
|
List<SysUser> userList = sysUserMapper.getUserListByNames(StringUtils.join(userNameListTemp, ","));
|
||||||
|
List<String> userIdList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||||
|
String content = "新标准编号已实施,请注意更新替代标准编号:"+StringUtils.join(serialNumberList,",")+"的状态";
|
||||||
|
String contentInfo = "新标准编号已实施,请注意更新替代标准编号:"+StringUtils.join(serialNumberList,",")+"的状态,"+"链接: http://localhost:3000/docManage/library";
|
||||||
|
//封装消息的实体类
|
||||||
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||||
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
private SysAnnouncement getSysAnnouncement(List<String> userIdList, String content, String contentInfo) {
|
||||||
|
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
||||||
|
sysAnnouncement.setDelFlag("0");
|
||||||
|
sysAnnouncement.setSendStatus("0");
|
||||||
|
sysAnnouncement.setSendTime(new Date());
|
||||||
|
// sysAnnouncement.setDocumentId((String) dataList.get(0).get("id"));
|
||||||
|
sysAnnouncement.setMsgCategory(MessageTypeEnum.READ.getValue());//消息类型
|
||||||
|
sysAnnouncement.setMsgType(CommonConstant.MSG_TYPE_UESR);//指定用户
|
||||||
|
sysAnnouncement.setMsgContent(content);
|
||||||
|
sysAnnouncement.setMsgContentInfo(contentInfo);
|
||||||
|
sysAnnouncement.setUserIds(StringUtils.join(userIdList, ","));
|
||||||
|
return sysAnnouncement;
|
||||||
|
}
|
||||||
|
|
||||||
private String getMustValues() {
|
private String getMustValues() {
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
|||||||
Reference in New Issue
Block a user