文档库--文档库编辑文件后es同步变更
This commit is contained in:
+18
-2
@@ -1828,7 +1828,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
//删除文件
|
||||
List<Map<String, Object>> mapList = bussDocumentLibraryEOMapper.selectMapsAll((String) map.get("id"));
|
||||
|
||||
List<String> connectIdList = new ArrayList<>();
|
||||
List<String> connectIdList = new ArrayList<>();//已删除的文件关联id
|
||||
for (OnlCgformField onlCgformField : fieldFileList) {
|
||||
String connectId = (String) mapList.get(0).get(onlCgformField.getDbFieldName());
|
||||
//如果文件没有修改则不用删除
|
||||
@@ -1836,7 +1836,12 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
connectIdList.add(connectId);
|
||||
}
|
||||
}
|
||||
|
||||
//查询已删除的文件id(用于es删除)
|
||||
List<String> fileIdListDelete = new ArrayList<>();
|
||||
if(connectIdList.size() != 0){
|
||||
List<OSSFile> fileInfosByConnectId = iOSSFileService.getFileInfosByConnectId(StringUtils.join(connectIdList, ","));
|
||||
fileIdListDelete = fileInfosByConnectId.stream().map(OSSFile::getId).collect(Collectors.toList());
|
||||
}
|
||||
//删除文件
|
||||
iOSSFileService.deleteByConnectIdList(connectIdList);
|
||||
//删除文档库数据
|
||||
@@ -1870,6 +1875,17 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
for (Map<String, Object> objectMap : mapListTempEn) {
|
||||
jeroElasticsearchTemplate.delete(SearchEnum.FULL_TEXT_SEARCH_EN.getValue(), SearchEnum.FULL_TEXT_SEARCH_EN.getValue(), (String) objectMap.get("id"));
|
||||
}
|
||||
//处理编辑时已删除的文件(在es中同步删除文件单独生成的一条数据)
|
||||
if(fileIdListDelete.size() != 0){
|
||||
for (String fileId : fileIdListDelete) {
|
||||
jeroElasticsearchTemplate.delete(SearchEnum.FULL_TEXT_SEARCH_CN.getValue(),
|
||||
SearchEnum.FULL_TEXT_SEARCH_CN.getValue(),
|
||||
(String) map.get("id")+fileId);
|
||||
jeroElasticsearchTemplate.delete(SearchEnum.FULL_TEXT_SEARCH_EN.getValue(),
|
||||
SearchEnum.FULL_TEXT_SEARCH_EN.getValue(),
|
||||
(String) map.get("id")+fileId);
|
||||
}
|
||||
}
|
||||
jeroElasticsearchTemplate.saveOrUpdate(SearchEnum.INDEX_NAME_DOCUMENT.getValue(), SearchEnum.TYPE_NAME_DOCUMENT.getValue(), (String) map.get("id"), jsonObject);
|
||||
//添加全文
|
||||
jeroElasticsearchTemplate.saveBatch(SearchEnum.FULL_TEXT_SEARCH_CN.getValue(), SearchEnum.FULL_TEXT_SEARCH_CN.getValue(), arrayCn);
|
||||
|
||||
Reference in New Issue
Block a user