update 文档拆分 编辑译文

This commit is contained in:
lijiarao
2024-08-01 19:11:51 +08:00
parent 7df9803cd6
commit d908964490
2 changed files with 42 additions and 1 deletions
@@ -4,7 +4,7 @@
<insert id="addBatchItemsVal">
insert into SAR_FILE_SPLIT_ITEMS_VAL
(id, type, item_id, valid_flag, creation_user, creation_time, modify_time, modify_user, display_seq, img_name, item_content, index_item)
(id, type, item_id, valid_flag, creation_user, creation_time, modify_time, modify_user, display_seq, img_name, item_content, translation, index_item)
values
<foreach collection="valList" item="item" index="index" separator=",">(
#{item.id, jdbcType=VARCHAR}, #{item.type, jdbcType=VARCHAR},
@@ -14,6 +14,7 @@
#{item.modifyUser, jdbcType=VARCHAR}, #{item.displaySeq, jdbcType=INTEGER},
#{item.imgName, jdbcType=INTEGER},
#{item.itemContent, jdbcType=CLOB},
#{item.translation, jdbcType=CLOB},
#{item.indexItem, jdbcType=INTEGER})
</foreach>
</insert>
@@ -465,6 +465,10 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
if (ITEM_CONTENT.equals(k)){
v = itemContentJoin(valList, (String) parameter.get(ID));
}
// 条文内容拼接
if (TRANSLATION.equals(k)){
v = translationJoin(valList, (String) parameter.get(ID));
}
// 条文解读
if (INTERPRETATION_ARTICLES.equals(k)){
v = articlesJoin(articlesList, (String) parameter.get(ID));
@@ -532,6 +536,42 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
return valContent.toString();
}
private String translationJoin(List<SarFileSplitItemsValEO> valList, String itemId) {
StringBuilder valContent = new StringBuilder();
if (!Objects.isNull(valList) && !valList.isEmpty()){
int index = 0;
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
for (SarFileSplitItemsValEO sarFileSplitItemsValEO : valList) {
String translation = sarFileSplitItemsValEO.getTranslation();
// 条文内容拼接
if (DocumentSplitCommon.TEXT.equals(sarFileSplitItemsValEO.getType())) {
if (StringUtils.isNotBlank(translation)){
sarFileSplitItemsValEO.setTranslation(translation
.replace("<", "&lt;").replace(">", "&gt;"));
}
valContent.append("<p>").append(translation).append("</p>");
} else if (DocumentSplitCommon.IMG.equals(sarFileSplitItemsValEO.getType())) {
valContent.append("<img class=\"wordImg\" style=\"width:100%;height:100%\" src=\"")
.append(translation).append("\">");
} else if (DocumentSplitCommon.TABLE.equals(sarFileSplitItemsValEO.getType())) {
valContent.append(translation);
}
// 条目信息
index += 1;
sarFileSplitItemsValEO.setId(UUIDUtils.randomUUID20());
sarFileSplitItemsValEO.setItemId(itemId);
sarFileSplitItemsValEO.setDisplaySeq(index);
sarFileSplitItemsValEO.setValidFlag(0);
sarFileSplitItemsValEO.setCreationTime(new Date());
sarFileSplitItemsValEO.setModifyTime(new Date());
sarFileSplitItemsValEO.setCreationUser(sysUser.getId());
sarFileSplitItemsValEO.setModifyUser(sysUser.getId());
}
}
return valContent.toString();
}
private String itemContentJoin(List<SarFileSplitItemsValEO> valList, String itemId) {
StringBuilder valContent = new StringBuilder();
if (!Objects.isNull(valList) && !valList.isEmpty()){