条款检索添加适用市场

This commit is contained in:
梁琦涛
2024-09-11 18:47:35 +08:00
parent d336a52a09
commit 6cb0290a62
@@ -483,25 +483,28 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
// 组织结构 // 组织结构
List<LawsTag> lawsTags2 = fieldListSelect.stream() List<LawsTag> lawsTags2 = fieldListSelect.stream()
.filter(j -> FieldCommon.GROUP.contains(j.getFieldShowType())).collect(Collectors.toList()); .filter(j -> FieldCommon.GROUP.contains(j.getFieldShowType())).collect(Collectors.toList());
List<SysDict> sysDictList = sysDictService.list();
List<SysDictItem> sysDictItemList = sysDictItemService.list();
List<SysDepart> sysDepartListAll = sysDepartService.list();
records.parallelStream().forEach(map->{ records.parallelStream().forEach(map->{
for (LawsTag lawsTag : lawsTags) { for (LawsTag lawsTag : lawsTags) {
String dbFieldName = lawsTag.getDbFieldName(); String dbFieldName = lawsTag.getDbFieldName();
if (map.containsKey(dbFieldName)){ if (map.containsKey(dbFieldName)){
// 字典查找 // 字典查找
SysDict sysDict = sysDictService.getById(lawsTag.getDictId()); Optional<SysDict> op = sysDictList.stream().filter(o->Objects.equals(o.getId(),lawsTag.getDictId())).findFirst();
if (!Objects.isNull(sysDict)){ op.ifPresent(sysDict -> setDicText(map, dbFieldName, sysDict, sysDictItemList));
setDicText(map, dbFieldName, sysDict);
}
} }
} }
for (LawsTag lawsTag : lawsTags2) { for (LawsTag lawsTag : lawsTags2) {
String dbFieldName = lawsTag.getDbFieldName(); String dbFieldName = lawsTag.getDbFieldName();
if (map.containsKey(dbFieldName)){ if (map.containsKey(dbFieldName)){
List<SysDepart> sysDepartList = if(!CollectionUtils.isEmpty(sysDepartListAll)){
sysDepartService.listByIds(Arrays.asList(map.get(dbFieldName).toString().split(","))); List<SysDepart> sysDepartList = sysDepartListAll.stream().filter(o->
List<String> itemTextList = sysDepartList.stream().map(SysDepart::getDepartName).collect(Collectors.toList()); Arrays.asList(map.get(dbFieldName).toString().split(",")).contains(o.getId()))
map.put(dbFieldName + DocumentSplitCommon.DIC_TEXT, String.join(",", itemTextList)); .collect(Collectors.toList());
List<String> itemTextList = sysDepartList.stream().map(SysDepart::getDepartName).collect(Collectors.toList());
map.put(dbFieldName + DocumentSplitCommon.DIC_TEXT, String.join(",", itemTextList));
}
} }
} }
// 特殊翻译 // 特殊翻译
@@ -531,12 +534,14 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
} }
} }
private void setDicText(Map<String, Object> map, String dbFieldName, SysDict sysDict) { private void setDicText(Map<String, Object> map, String dbFieldName, SysDict sysDict,List<SysDictItem> sysDictItemList) {
LambdaQueryWrapper<SysDictItem> queryWrapper = new LambdaQueryWrapper<SysDictItem>() if(CollectionUtils.isEmpty(sysDictItemList)){
.eq(SysDictItem::getDictId, sysDict.getId()) return;
.in(SysDictItem::getItemValue, Arrays.asList(map.get(dbFieldName).toString().split(","))); }
// 字典值查询 // 字典值查询
List<SysDictItem> list = sysDictItemService.list(queryWrapper); List<SysDictItem> list = sysDictItemList.stream().filter(o->Objects.equals(sysDict.getId(),o.getDictId()) &&
Arrays.asList(map.get(dbFieldName).toString().split(",")).contains(o.getItemValue()))
.collect(Collectors.toList());
if(!list.isEmpty()){ if(!list.isEmpty()){
List<String> itemTextList = list.stream().map(SysDictItem::getItemText).collect(Collectors.toList()); List<String> itemTextList = list.stream().map(SysDictItem::getItemText).collect(Collectors.toList());
map.put(dbFieldName + DocumentSplitCommon.DIC_TEXT, String.join(",", itemTextList)); map.put(dbFieldName + DocumentSplitCommon.DIC_TEXT, String.join(",", itemTextList));