拆分word处理
This commit is contained in:
+27
-24
@@ -51,6 +51,7 @@ import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||
import com.jero.modules.tag.entity.OnlCgformArea;
|
||||
import com.jero.modules.tag.service.impl.OnlCgformAreaServiceImpl;
|
||||
import lombok.SneakyThrows;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -2178,32 +2179,34 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
mapTemp.put("documentId", map.get("id"));
|
||||
//订阅技术领域的人和订阅该条标准的人
|
||||
List<String> userIdList = domainUserRelService.queryDomainUserRelInfo(mapTemp);
|
||||
LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(SysUser::getId,userIdList);
|
||||
List<SysUser> sysUserList = sysUserService.list(wrapper);
|
||||
List<String> thirdIdList = sysUserList.stream().map(SysUser::getThirdId).collect(Collectors.toList());
|
||||
if(CollectionUtils.isNotEmpty(userIdList)){
|
||||
LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(SysUser::getId,userIdList);
|
||||
List<SysUser> sysUserList = sysUserService.list(wrapper);
|
||||
List<String> thirdIdList = sysUserList.stream().map(SysUser::getThirdId).collect(Collectors.toList());
|
||||
|
||||
String id = (String) map.get("id");
|
||||
String title = (String) map.get("title");
|
||||
String href = "<a href='/docManage/library/detail?id=" + id +
|
||||
"&title=" + title +
|
||||
"&serial_number=" + serialNumber + "'" + " target='_blank'>" + serialNumber + "</a>";
|
||||
String url = backUrl + "/docManage/library/detail?id=" + id;
|
||||
String id = (String) map.get("id");
|
||||
String title = (String) map.get("title");
|
||||
String href = "<a href='/docManage/library/detail?id=" + id +
|
||||
"&title=" + title +
|
||||
"&serial_number=" + serialNumber + "'" + " target='_blank'>" + serialNumber + "</a>";
|
||||
String url = backUrl + "/docManage/library/detail?id=" + id;
|
||||
|
||||
if (StringUtils.isNotBlank(sbStr.toString())) {
|
||||
String content = sysUser.getRealname() + "对" + serialNumber + "进行了修改,请及时查看";
|
||||
String contentInfo = sysUser.getRealname() + "修改标准" + href + "中" + sbStr.toString();
|
||||
//封装消息的实体类
|
||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||
sendWebsocket((String) map.get("id"), (String) map.get("id"));
|
||||
}
|
||||
//飞书
|
||||
try {
|
||||
String content = sysUser.getRealname() + "对" + serialNumber + "进行了修改,请及时查看";
|
||||
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.READ.getName(), url);
|
||||
} catch (IOException e) {
|
||||
log.error("文档新增飞书消息推送失败");
|
||||
if (StringUtils.isNotBlank(sbStr.toString())) {
|
||||
String content = sysUser.getRealname() + "对" + serialNumber + "进行了修改,请及时查看";
|
||||
String contentInfo = sysUser.getRealname() + "修改标准" + href + "中" + sbStr.toString();
|
||||
//封装消息的实体类
|
||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
|
||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||
sendWebsocket((String) map.get("id"), (String) map.get("id"));
|
||||
}
|
||||
//飞书
|
||||
try {
|
||||
String content = sysUser.getRealname() + "对" + serialNumber + "进行了修改,请及时查看";
|
||||
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.READ.getName(), url);
|
||||
} catch (IOException e) {
|
||||
log.error("文档新增飞书消息推送失败");
|
||||
}
|
||||
}
|
||||
// }
|
||||
//2. 处理修改代替标准的发送消息(法规负责人)
|
||||
|
||||
+2
-1
@@ -11,7 +11,8 @@ public enum SplitFileTypeTypeEnum {
|
||||
KOREAN("Korean","韩国"),
|
||||
US("US","美国"),
|
||||
EU("EU","欧洲"),
|
||||
JAPAN("Japan","日本"),
|
||||
JAPAN_ONE("Japan_one","日本"),
|
||||
JAPAN_TWO("Japan_two","日本"),
|
||||
CN("CN","中国");
|
||||
|
||||
private String value;
|
||||
|
||||
+737
-105
File diff suppressed because it is too large
Load Diff
+10
-6
@@ -77,21 +77,25 @@ public class SarFileSplitInfoServiceImpl extends ServiceImpl<SarFileSplitInfoMap
|
||||
|
||||
switch (enumByValue){
|
||||
case CN:
|
||||
fileSpiltService.fileCHN(sarFileSplitInfoEO);
|
||||
fileSpiltService.fileCHN(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
case EU:
|
||||
fileSpiltService.fileEU(sarFileSplitInfoEO);
|
||||
fileSpiltService.fileEU(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
case US:
|
||||
fileSpiltService.fileUSA(sarFileSplitInfoEO);
|
||||
fileSpiltService.fileUSA(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
case GSO:
|
||||
fileSpiltService.fileGSO(sarFileSplitInfoEO);
|
||||
fileSpiltService.fileGSO(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
case JAPAN:
|
||||
fileSpiltService.fileJapan(sarFileSplitInfoEO);
|
||||
case JAPAN_ONE:
|
||||
fileSpiltService.fileJapanOne(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
case JAPAN_TWO:
|
||||
fileSpiltService.fileJapanTwo(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
case KOREAN:
|
||||
fileSpiltService.fileKorean(sarFileSplitInfoEO,enumByValue);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
package com.jero.modules.split.util;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
public class FileSplitUtils {
|
||||
public static void main(String[] args) {
|
||||
System.out.println(getNextUpEn("Z"));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取下一个英文字母
|
||||
* @param en
|
||||
* @return
|
||||
*/
|
||||
public static String getNextUpEn(String en) {
|
||||
if (en == null || en.equals(""))
|
||||
return "A";
|
||||
char lastE = 'Z';
|
||||
int lastEnglish = (int) lastE;
|
||||
char[] c = en.toCharArray();
|
||||
if (c.length > 1) {
|
||||
return null;
|
||||
} else {
|
||||
int now = (int) c[0];
|
||||
if (now >= lastEnglish)
|
||||
return "A";
|
||||
char uppercase = (char) (now + 1);
|
||||
return String.valueOf(uppercase);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断一个字符串是否含有数字
|
||||
* @param content
|
||||
* @return
|
||||
*/
|
||||
public static boolean hasDigit(String content) {
|
||||
boolean flag = false;
|
||||
Pattern p = Pattern.compile(".*\\d+.*");
|
||||
Matcher m = p.matcher(content);
|
||||
if (m.matches()) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断一个字符串是否含有字母
|
||||
* @param content
|
||||
* @return
|
||||
*/
|
||||
public static boolean judgeContainsStr(String content) {
|
||||
boolean flag = false;
|
||||
Pattern p = Pattern.compile(".*[a-zA-Z]+.*");
|
||||
Matcher m = p.matcher(content);
|
||||
if (m.matches()) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
}
|
||||
@@ -633,7 +633,8 @@ module.exports = {
|
||||
Korea:'Korea',
|
||||
America:'America',
|
||||
Europe:'Europe',
|
||||
Japan:'Japan',
|
||||
Japan_one:'Japan_one',
|
||||
Japan_two:'Japan_two',
|
||||
China:'China',
|
||||
onlyOnefileUploaded:'only one file can be uploaded',
|
||||
typeCannotUploaded:'this type of file cannot be uploaded',
|
||||
|
||||
@@ -637,7 +637,8 @@ module.exports = {
|
||||
Korea:'韩国',
|
||||
America:'美国',
|
||||
Europe:'欧洲',
|
||||
Japan:'日本',
|
||||
Japan_one:'日本模板1',
|
||||
Japan_two:'日本模板2',
|
||||
China:'中国',
|
||||
onlyOnefileUploaded:'只能上传一个文件',
|
||||
typeCannotUploaded:'不支持上传该类型的文件',
|
||||
|
||||
@@ -34,8 +34,11 @@
|
||||
<a-select-option value="EU" key="EU">
|
||||
{{$t('Europe')}}
|
||||
</a-select-option>
|
||||
<a-select-option value="Japan" key="Japan">
|
||||
{{$t('Japan')}}
|
||||
<a-select-option value="Japan_one" key="Japan_one">
|
||||
{{$t('Japan_one')}}
|
||||
</a-select-option>
|
||||
<a-select-option value="Japan_two" key="Japan_two">
|
||||
{{$t('Japan_two')}}
|
||||
</a-select-option>
|
||||
<a-select-option value="CN" key="CN">
|
||||
{{$t('China')}}
|
||||
|
||||
Reference in New Issue
Block a user