发送消息--英文

This commit is contained in:
zhn
2022-04-25 16:17:07 +08:00
parent 5b4c1e1e75
commit ebdc0b9d6d
2 changed files with 98 additions and 37 deletions
@@ -215,8 +215,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<SysUser> userList = sysUserMapper.getUserListByNames(StringUtils.join(userNameList, ","));
List<String> userIdList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
String content = sysUser.getUsername() + "删除了" + StringUtils.join(serialNumberList, ",") + "请知晓";
String contentInfo = sysUser.getUsername() + "删除了" + sbStr + "请知晓";
String content = sysUser.getUsername() + " delete " + StringUtils.join(serialNumberList, ",") + ",Please pay attention to check.";
String contentInfo = sysUser.getUsername() + " delete " + sbStr + ",Please pay attention to check.";
//封装消息的实体类
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
@@ -879,7 +879,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//处理树形数据字典
dataList.get(0).entrySet().forEach(entry -> {
//下拉选处理数据字典
treeDictItem(categoryList, entry, treeFieldList, cut);
treeDictItem(categoryList, entry, treeFieldList, cut,null);
});
//下拉单选和下拉多选数据字典处理
@@ -887,7 +887,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
dataList.get(0).entrySet().forEach(entry -> {
if (fieldPullList.contains(entry.getKey())) {
//下拉选处理数据字典
dictItem(sysDictItems, entry, cut, finalFieldList);
dictItem(sysDictItems, entry, cut, finalFieldList,null);
}
});
@@ -1551,8 +1551,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
String title = (String) map.get("title");
String serialNumber = (String) map.get("serial_number");
String href = backUrl + "/docManage/library/detail?id=" + idTemp;
String content = sysUser.getUsername() + "新增了" + serialNumber + ",请及时查看";
String contentInfo = sysUser.getUsername() + "新增了" + href + ",请及时查看";
String content = sysUser.getUsername() + " add " + serialNumber + ",Please pay attention to check.";
String contentInfo = sysUser.getUsername() + " add " + href + ",Please pay attention to check.";
//封装消息的实体类
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
@@ -1988,7 +1988,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<OnlCgformField> fieldFileList,
List<OnlCgformField> fieldPullList,
String cut) {
StringBuilder sb = getUpdateInfo(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
StringBuilder sb = getUpdateInfo(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut,null);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (StringUtils.isNotBlank(sb)) {
String content = sb.substring(0, sb.length() - 1);
@@ -2001,7 +2001,11 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
}
@NotNull
private StringBuilder getUpdateInfo(Map<String, Object> map, List<Map<String, Object>> dataList, List<OnlCgformField> fieldList, List<OnlCgformField> fieldDateList, List<OnlCgformField> fieldFileList, List<OnlCgformField> fieldPullList, String cut) {
private StringBuilder getUpdateInfo(Map<String, Object> map, List<Map<String, Object>> dataList,
List<OnlCgformField> fieldList, List<OnlCgformField> fieldDateList,
List<OnlCgformField> fieldFileList, List<OnlCgformField> fieldPullList,
String cut,String flag) {
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//调整dataList中map中字段顺序与表单中的一致
Map<String, Object> mapNew = new LinkedHashMap<>();
for (OnlCgformField onlCgformField : fieldList) {
@@ -2033,13 +2037,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//下拉选处理数据字典
for (Map.Entry<String, Object> entry : dataList.get(0).entrySet()) {
//下拉选处理数据字典
dictItem(sysDictItems, entry, cut, fieldList);
treeDictItem(categoryList, entry, treeFieldList, cut);
dictItem(sysDictItems, entry, cut, fieldList,flag);
treeDictItem(categoryList, entry, treeFieldList, cut,flag);
}
for (Map.Entry<String, Object> entry : mapTemp.entrySet()) {
//下拉选处理数据字典
dictItem(sysDictItems, entry, cut, fieldList);
treeDictItem(categoryList, entry, treeFieldList, cut);
dictItem(sysDictItems, entry, cut, fieldList,flag);
treeDictItem(categoryList, entry, treeFieldList, cut,flag);
}
StringBuilder sb = new StringBuilder();
@@ -2051,6 +2055,11 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
if (fields.size() != 0) {
String dbFieldTxt = fields.get(0).getDbFieldTxt();
if("1".equals(flag)){
dbFieldTxt = fields.get(0).getDbFieldEnName();
}else{
dbFieldTxt = fields.get(0).getDbFieldTxt();
}
dbFieldTxt = "<text class='highlight-class'>" + dbFieldTxt + "</text>";
if (value == null) {
value = "";
@@ -2077,13 +2086,26 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//处理时间类型字段
if (ObjectUtils.isNotEmpty(value)) {
if (ObjectUtils.isNotEmpty(valueTemp) && !value.equals(valueTemp)) {
sb.append(dbFieldTxt + "" + value + "改为" + valueTemp + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt +" "+ value + " to " + valueTemp + ",");
}else{
sb.append(dbFieldTxt + "" + value + "改为" + valueTemp + ",");
}
} else if (ObjectUtils.isEmpty(valueTemp)) {
sb.append(dbFieldTxt + "" + value + "改为空" + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt + " "+value + " to empty " + ",");
}else{
sb.append(dbFieldTxt + "" + value + "改为空" + ",");
}
}
} else {
if (ObjectUtils.isNotEmpty(valueTemp)) {
sb.append(dbFieldTxt + "由空改为" + valueTemp + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt + " empty to " + valueTemp + ",");
}else{
sb.append(dbFieldTxt + "由空改为" + valueTemp + ",");
}
}
}
@@ -2106,13 +2128,28 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
boolean checkDiffrent = checkDiffrent(fileNameList, fileNameListTemp);
if (fileNameListTemp.size() != 0 && !checkDiffrent) {
sb.append(dbFieldTxt + "" + StringUtils.join(fileNameList, ",") + "改为" + StringUtils.join(fileNameListTemp, ",") + ",");
if("1".equals(flag)){
//sysUser
sb.append(dbFieldTxt +" "+ StringUtils.join(fileNameList, ",") + " to " + StringUtils.join(fileNameListTemp, ",") + ",");
}else{
sb.append(dbFieldTxt + "" + StringUtils.join(fileNameList, ",") + "改为" + StringUtils.join(fileNameListTemp, ",") + ",");
}
} else if (fileNameListTemp.size() == 0) {
sb.append(dbFieldTxt + "" + StringUtils.join(fileNameList, ",") + "改为空" + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt + " "+StringUtils.join(fileNameList, ",") + " to empty " + ",");
}else{
sb.append(dbFieldTxt + "" + StringUtils.join(fileNameList, ",") + "改为空" + ",");
}
}
} else {
if (fileNameListTemp.size() != 0) {
sb.append(dbFieldTxt + "由空改为" + StringUtils.join(fileNameListTemp, ",") + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt + " empty to " + StringUtils.join(fileNameListTemp, ",") + ",");
}else{
sb.append(dbFieldTxt + "由空改为" + StringUtils.join(fileNameListTemp, ",") + ",");
}
}
}
} else {
@@ -2128,13 +2165,25 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
if (!"replaced_standard".equals(key)) {
if (ObjectUtils.isNotEmpty(value)) {
if (ObjectUtils.isNotEmpty(valueTemp) && !value.equals(valueTemp)) {
sb.append(dbFieldTxt + "" + value + "改为" + valueTemp + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt +" "+ value + " to " + valueTemp + ",");
}else{
sb.append(dbFieldTxt + "" + value + "改为" + valueTemp + ",");
}
} else if (ObjectUtils.isEmpty(valueTemp)) {
sb.append(dbFieldTxt + "" + value + "改为空" + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt + " "+value + " to empty " + ",");
}else{
sb.append(dbFieldTxt + "" + value + "改为空" + ",");
}
}
} else {
if (ObjectUtils.isNotEmpty(valueTemp)) {
sb.append(dbFieldTxt + "由空改为" + valueTemp + ",");
if("1".equals(flag)){
sb.append(dbFieldTxt + " empty to " + valueTemp + ",");
}else{
sb.append(dbFieldTxt + "由空改为" + valueTemp + ",");
}
}
}
}
@@ -2174,7 +2223,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
String cut) {
//1. 处理订阅的发送消息
//修改的内容
StringBuilder sb = getUpdateInfo(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
String flag ="1";//消息的标识(英文)
StringBuilder sb = getUpdateInfo(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, null,flag);
String sbStr = "";
if (ObjectUtils.isNotEmpty(sb)) {
sbStr = sb.substring(0, sb.length() - 1);
@@ -2202,8 +2252,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
String url = backUrl + "/docManage/library/detail?id=" + id;
if (StringUtils.isNotBlank(sbStr.toString())) {
String content = sysUser.getUsername() + "" + serialNumber + "进行了修改,请及时查看";
String contentInfo = sysUser.getUsername() + "修改标准" + href + "" + sbStr.toString();
//您订阅的XXX已被修改
String content = "In the standard "+serialNumber+" you subscribed to, has been modified,Please pay attention to check.";
// String content = sysUser.getUsername() + " update " + serialNumber + ",Please pay attention to check.";
//您订阅的GB 7258-2021 中,由张三将技术领域"车身"改为"车门"
String contentInfo = "In the standard "+serialNumber+" you subscribed to, "+sysUser.getUsername()+" changed the "+ href+ sbStr.toString();
// String contentInfo = sysUser.getUsername() + " update " + href + sbStr.toString();
//封装消息的实体类
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
@@ -2211,7 +2266,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
}
//飞书
try {
String content = sysUser.getUsername() + "" + serialNumber + "进行了修改,请及时查看";
String content = sysUser.getUsername() + " update " + serialNumber + ",Please pay attention to check.";
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.READ.getName(), url);
} catch (IOException e) {
log.error("文档新增飞书消息推送失败");
@@ -2364,7 +2419,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
for (Object record : records) {
Map<String, Object> record1 = (Map) record;
for (Map.Entry<String, Object> entry : record1.entrySet()) {
treeDictItem(categoryList, entry, treeFieldList, (String) parameter.get("cut"));
treeDictItem(categoryList, entry, treeFieldList, (String) parameter.get("cut"),null);
if ("state".equals(entry.getKey())) {
List<OnlCgformField> onlCgformFieldList = fieldList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
//状态数据字典
@@ -2551,8 +2606,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
idList.add((String) record1.get("id"));
for (Map.Entry<String, Object> entry : record1.entrySet()) {
//下拉选处理数据字典
dictItem(sysDictItems, entry, cut, fieldList);
treeDictItem(categoryList, entry, treeFieldList, cut);
dictItem(sysDictItems, entry, cut, fieldList,null);
treeDictItem(categoryList, entry, treeFieldList, cut,null);
if(fileList.contains(entry.getKey()) && StringUtils.isNotBlank((String)entry.getValue())){
fileIdLidt.add((String)entry.getValue());
}
@@ -2702,7 +2757,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
* @param sysDictItems
* @param entry
*/
public void dictItem(List<SysDictItem> sysDictItems, Map.Entry<String, Object> entry, String cut, List<OnlCgformField> fieldList) {
public void dictItem(List<SysDictItem> sysDictItems, Map.Entry<String, Object> entry, String cut, List<OnlCgformField> fieldList,String flag) {
//通过dictField判断字段是否为下拉选(不为空则为下拉选)
List<OnlCgformField> onlCgformFieldList = fieldList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
//数据字典中文
@@ -2726,7 +2781,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<String> itemText = new ArrayList<>();
if (CutEnum.CN.getValue().equals(cut)) {
itemText = dictItems.stream().map(SysDictItem::getItemText).collect(Collectors.toList());
} else {
} else if(CutEnum.EN.getValue().equals(cut)) {
itemText = dictItems.stream().map(SysDictItem::getEnName).collect(Collectors.toList());
}else if("1".equals(flag)){
itemText = dictItems.stream().map(SysDictItem::getEnName).collect(Collectors.toList());
}
dictItemsCh.addAll(itemText);
@@ -2744,7 +2801,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|| FieldTypeEnum.PULL_MORE.getValue().equals(onlCgformFieldList.get(0).getFieldShowType())){
if (CutEnum.CN.getValue().equals(cut)) {
entry.setValue(StringUtils.join(dictItemsCh, ","));
} else {
} else if(CutEnum.EN.getValue().equals(cut)){
entry.setValue(StringUtils.join(dictItemsEn, ","));
}else if("1".equals(flag)){
entry.setValue(StringUtils.join(dictItemsEn, ","));
}
}
@@ -3067,9 +3126,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
for (Map.Entry<String, Object> entry : data.entrySet()) {
//下拉选处理数据字典
dictItem(sysDictItems, entry, cut, fieldList);
dictItem(sysDictItems, entry, cut, fieldList,null);
//处理树形数据字典
treeDictItem(categoryList, entry, treeFieldList, cut);
treeDictItem(categoryList, entry, treeFieldList, cut,null);
}
@@ -3679,7 +3738,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
* @param treeFieldList
* @param cut
*/
public void treeDictItem(List<SysCategory> categoryList, Map.Entry<String, Object> entry, List<OnlCgformField> treeFieldList, String cut) {
public void treeDictItem(List<SysCategory> categoryList, Map.Entry<String, Object> entry, List<OnlCgformField> treeFieldList, String cut,String flag) {
List<String> treeFields = treeFieldList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList());
String key = entry.getKey();
if (treeFields.contains(entry.getKey())) {
@@ -3691,7 +3750,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<String> nameEnList = sysCategoryList.stream().map(SysCategory::getEnName).collect(Collectors.toList());
if (CutEnum.CN.getValue().equals(cut)) {
entry.setValue(StringUtils.join(nameList, ","));
} else {
} else if(CutEnum.EN.getValue().equals(cut)){
entry.setValue(StringUtils.join(nameEnList, ","));
}else if("1".equals(flag)){
entry.setValue(StringUtils.join(nameEnList, ","));
}
}
@@ -229,11 +229,11 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService {
List<OSSFile> fileList = new ArrayList<>();
mapTemp.entrySet().forEach(entry -> {
//下拉选处理数据字典
bussDocumentLibraryEOService.treeDictItem(categoryList, entry, treeFieldList, (String) map.get("cut"));
bussDocumentLibraryEOService.treeDictItem(categoryList, entry, treeFieldList, (String) map.get("cut"),null);
//下拉单选和下拉多选数据字典处理
if (fieldPullList.contains(entry.getKey())) {
bussDocumentLibraryEOService.dictItem(sysDictItems, entry, (String) map.get("cut"), fieldList);
bussDocumentLibraryEOService.dictItem(sysDictItems, entry, (String) map.get("cut"), fieldList,null);
}
//处理文件
if (FieldFileList.contains(entry.getKey())) {