GSO模板处理
This commit is contained in:
+50
-68
@@ -388,11 +388,7 @@ public class FileSpiltService {
|
|||||||
treeList.add(documentTreeEO);
|
treeList.add(documentTreeEO);
|
||||||
|
|
||||||
List<String> nowStart = new ArrayList<>();
|
List<String> nowStart = new ArrayList<>();
|
||||||
// if (sarFileSplitInfoEO.getStartNumber()<4){
|
nowStart.add("1");
|
||||||
nowStart.add("1");
|
|
||||||
// } else {
|
|
||||||
// nowStart.add(String.valueOf(sarFileSplitInfoEO.getStartNumber()));
|
|
||||||
// }
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
//获取文件地址
|
//获取文件地址
|
||||||
@@ -411,8 +407,8 @@ public class FileSpiltService {
|
|||||||
InputStream is = new FileInputStream(readFilePath); //需要将文件路更改为word文档所在路径。
|
InputStream is = new FileInputStream(readFilePath); //需要将文件路更改为word文档所在路径。
|
||||||
XWPFDocument doc = new XWPFDocument(is);
|
XWPFDocument doc = new XWPFDocument(is);
|
||||||
|
|
||||||
Pattern ptest ;
|
// Pattern ptest ;
|
||||||
Matcher matcher;
|
// Matcher matcher;
|
||||||
|
|
||||||
// 记录拆分后的每一段文字
|
// 记录拆分后的每一段文字
|
||||||
List<IBodyElement> elements = doc.getBodyElements();
|
List<IBodyElement> elements = doc.getBodyElements();
|
||||||
@@ -430,78 +426,64 @@ public class FileSpiltService {
|
|||||||
paragraphString = paragraphString.replace((char) 12288, ' ');
|
paragraphString = paragraphString.replace((char) 12288, ' ');
|
||||||
paragraphString = paragraphString.trim();
|
paragraphString = paragraphString.trim();
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) {
|
// if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) {
|
||||||
String numberParent = p.getNumLevelText().substring(0,p.getNumLevelText().lastIndexOf("."));
|
// String numberParent = p.getNumLevelText().substring(0,p.getNumLevelText().lastIndexOf("."));
|
||||||
if (numberMap.containsKey(numberParent)){
|
// if (numberMap.containsKey(numberParent)){
|
||||||
Integer numbernow =(Integer)numberMap.get(numberParent)+1;
|
// Integer numbernow =(Integer)numberMap.get(numberParent)+1;
|
||||||
if (messageList != null && !messageList.isEmpty() && messageList.get(messageList.size()-1).getItemsNum().equals(numberParent + "." + String.valueOf(numbernow))){
|
// if (messageList != null && !messageList.isEmpty() && messageList.get(messageList.size()-1).getItemsNum().equals(numberParent + "." + String.valueOf(numbernow))){
|
||||||
numberMap.put(numberParent,numbernow+1);
|
// numberMap.put(numberParent,numbernow+1);
|
||||||
paragraphString = numberParent + "." + String.valueOf(numbernow+1)+ p.getText();
|
// paragraphString = numberParent + "." + String.valueOf(numbernow+1)+ p.getText();
|
||||||
} else {
|
// } else {
|
||||||
numberMap.put(numberParent,numbernow);
|
// numberMap.put(numberParent,numbernow);
|
||||||
paragraphString = numberParent + "." + String.valueOf(numbernow)+ p.getText();
|
// paragraphString = numberParent + "." + String.valueOf(numbernow)+ p.getText();
|
||||||
}
|
// }
|
||||||
} else {
|
// } else {
|
||||||
numberMap.put(numberParent,1);
|
// numberMap.put(numberParent,1);
|
||||||
paragraphString = numberParent+".1"+ p.getText();
|
// paragraphString = numberParent+".1"+ p.getText();
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
ptest = Pattern.compile("^[\\d.]*$");
|
// ptest = Pattern.compile("^[\\d.]*$");
|
||||||
boolean hasGoIf = false;
|
boolean hasGoIf = false;
|
||||||
for (int i=0;i<nowStart.size();i++){
|
for (int i=0;i<nowStart.size();i++){
|
||||||
System.out.println(nowStart.get(i));
|
System.out.println(nowStart.get(i));
|
||||||
if(paragraphString.startsWith(nowStart.get(i)) ){
|
if(paragraphString.startsWith(nowStart.get(i)) ){
|
||||||
if(paragraphString.length()>nowStart.get(i).length()
|
// 判断名称,如果大于10位,取十位,
|
||||||
&& !ptest.matcher(paragraphString.substring(nowStart.get(i).length(),nowStart.get(i).length()+1)).matches()){
|
String itemName = paragraphString.substring(nowStart.get(i).length()).length()>10?paragraphString.substring(nowStart.get(i).length(),nowStart.get(i).length()+10):paragraphString.substring(nowStart.get(i).length());
|
||||||
// 判断名称,如果大于10位,取十位,
|
List<String> clauseContent = new ArrayList<>();
|
||||||
String itemName = paragraphString.substring(nowStart.get(i).length()).length()>10?paragraphString.substring(nowStart.get(i).length(),nowStart.get(i).length()+10):paragraphString.substring(nowStart.get(i).length());
|
clauseContent.add(paragraphString);
|
||||||
List<String> clauseContent = new ArrayList<>();
|
SarFileSplitItemsEO message = getSarFileSplitItemsEO(sarFileSplitInfoEO.getId(),nowStart.get(i),itemName,clauseContent);
|
||||||
clauseContent.add(paragraphString);
|
|
||||||
SarFileSplitItemsEO message = getSarFileSplitItemsEO(sarFileSplitInfoEO.getId(),nowStart.get(i),itemName,clauseContent);
|
|
||||||
|
|
||||||
String[] numberStr = nowStart.get(i).split("\\.");
|
String[] numberStr = nowStart.get(i).split("\\.");
|
||||||
if (Integer.valueOf(numberStr[0]) > sarFileSplitInfoEO.getStopNumber()){
|
if (Integer.valueOf(numberStr[0]) > sarFileSplitInfoEO.getStopNumber()){
|
||||||
menuCanAdd = false;
|
menuCanAdd = false;
|
||||||
} else {
|
} else {
|
||||||
// 增加一条数据,需要在数结构中加一条数据
|
// 增加一条数据,需要在数结构中加一条数据
|
||||||
SarFileSplitMenuEO sarFileSplitMenuEO = getTreeList(nowStart.get(i),treeList,generalCatalogueId,sarFileSplitInfoEO ,treeListDisplay++,itemName,enumByValue);
|
SarFileSplitMenuEO sarFileSplitMenuEO = getTreeList(nowStart.get(i),treeList,generalCatalogueId,sarFileSplitInfoEO ,treeListDisplay++,itemName,enumByValue);
|
||||||
treeList.add(sarFileSplitMenuEO) ;
|
treeList.add(sarFileSplitMenuEO) ;
|
||||||
message.setMenuId(sarFileSplitMenuEO.getId());
|
message.setMenuId(sarFileSplitMenuEO.getId());
|
||||||
addItermsConditionsText(message,itemValList,paragraphString.substring(nowStart.get(i).length()));
|
addItermsConditionsText(message,itemValList,paragraphString.substring(nowStart.get(i).length()));
|
||||||
messageList.add(message);
|
messageList.add(message);
|
||||||
nowStart = getNewNowStart(nowStart.get(i));
|
nowStart = getNewNowStart(nowStart.get(i));
|
||||||
menuCanAdd = true;
|
menuCanAdd = true;
|
||||||
}
|
|
||||||
hasGoIf = true;
|
|
||||||
break;
|
|
||||||
}else {
|
|
||||||
// 判断名称,如果大于10位,取十位,
|
|
||||||
String itemName = paragraphString.substring(nowStart.get(i).length()).length()>10?paragraphString.substring(nowStart.get(i).length(),nowStart.get(i).length()+10):paragraphString.substring(nowStart.get(i).length());
|
|
||||||
List<String> clauseContent = new ArrayList<>();
|
|
||||||
clauseContent.add(paragraphString);
|
|
||||||
SarFileSplitItemsEO message = getSarFileSplitItemsEO(sarFileSplitInfoEO.getId(),nowStart.get(i),itemName,clauseContent);
|
|
||||||
|
|
||||||
String[] numberStr = nowStart.get(i).split("\\.");
|
|
||||||
if (Integer.valueOf(numberStr[0]) > sarFileSplitInfoEO.getStopNumber()){
|
|
||||||
menuCanAdd = false;
|
|
||||||
} else {
|
|
||||||
// 增加一条数据,需要在数结构中加一条数据
|
|
||||||
SarFileSplitMenuEO sarFileSplitMenuEO = getTreeList(nowStart.get(i),treeList,generalCatalogueId,sarFileSplitInfoEO ,treeListDisplay++,itemName,enumByValue);
|
|
||||||
treeList.add(sarFileSplitMenuEO) ;
|
|
||||||
message.setMenuId(sarFileSplitMenuEO.getId());
|
|
||||||
addItermsConditionsText(message,itemValList,paragraphString.substring(nowStart.get(i).length()));
|
|
||||||
messageList.add(message);
|
|
||||||
nowStart = getNewNowStart(nowStart.get(i));
|
|
||||||
menuCanAdd = true;
|
|
||||||
}
|
|
||||||
hasGoIf = true;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
hasGoIf = true;
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(!hasGoIf && menuCanAdd) {
|
||||||
|
if (!p.getText().equals("") ){
|
||||||
|
addItermsConditionsText(messageList.get(messageList.size()-1),itemValList,p.getText());
|
||||||
|
}
|
||||||
|
List<String> imageBundleList = readImageInParagraph((XWPFParagraph)p);
|
||||||
|
if(CollectionUtils.isNotEmpty(imageBundleList)) {
|
||||||
|
addItermsConditionsImage(messageList.get(messageList.size()-1),itemValList, p,imageBundleList);
|
||||||
|
}
|
||||||
|
// }
|
||||||
|
hasGoIf = true;
|
||||||
|
}
|
||||||
// 判断是否直接跳出所有循环
|
// 判断是否直接跳出所有循环
|
||||||
if (!menuCanAdd && messageList.size()>0) {
|
if (!menuCanAdd && messageList.size()>0) {
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -638,8 +638,8 @@ module.exports = {
|
|||||||
KMVSS_Article: 'KMVSS Article',
|
KMVSS_Article: 'KMVSS Article',
|
||||||
America: '美国',
|
America: '美国',
|
||||||
Europe: '欧洲',
|
Europe: '欧洲',
|
||||||
Japan_one: '日本 Attachment',
|
Japan_one: 'Japan Attachment',
|
||||||
Japan_two: '日本 Article',
|
Japan_two: 'Japan Article',
|
||||||
China: '中国',
|
China: '中国',
|
||||||
onlyOnefileUploaded: '只能上传一个文件',
|
onlyOnefileUploaded: '只能上传一个文件',
|
||||||
typeCannotUploaded: '不支持上传该类型的文件',
|
typeCannotUploaded: '不支持上传该类型的文件',
|
||||||
|
|||||||
Reference in New Issue
Block a user