feat: There is no way the

This commit is contained in:
super_liu
2021-08-13 16:39:59 +08:00
parent 8b74f8bb24
commit a412eee2c6
@@ -1026,7 +1026,7 @@ public class SearchCenterServiceImpl implements SearchCenterService {
if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){ if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){
QueryBuilder multiQueryBuilder = QueryBuilders.multiMatchQuery(""); QueryBuilder multiQueryBuilder = QueryBuilders.multiMatchQuery("");
multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(),
"title","textContent" "title","textContent","textItems"
).minimumShouldMatch("100%").field("title",10f); ).minimumShouldMatch("100%").field("title",10f);
boolQueryBuilder.must(multiQueryBuilder); boolQueryBuilder.must(multiQueryBuilder);
// boolQueryBuilder.should() // boolQueryBuilder.should()
@@ -1041,6 +1041,8 @@ public class SearchCenterServiceImpl implements SearchCenterService {
hiBuilder.field(highlightTitle); hiBuilder.field(highlightTitle);
HighlightBuilder.Field highlightUser = new HighlightBuilder.Field("textContent"); HighlightBuilder.Field highlightUser = new HighlightBuilder.Field("textContent");
hiBuilder.field(highlightUser); hiBuilder.field(highlightUser);
HighlightBuilder.Field highlightItem = new HighlightBuilder.Field("textItems");
hiBuilder.field(highlightItem);
HighlightBuilder.Field highlightDate = new HighlightBuilder.Field("issue_time"); HighlightBuilder.Field highlightDate = new HighlightBuilder.Field("issue_time");
hiBuilder.field(highlightDate); hiBuilder.field(highlightDate);
hiBuilder.preTags("<span class='highlight-class'>"); hiBuilder.preTags("<span class='highlight-class'>");
@@ -1083,6 +1085,19 @@ public class SearchCenterServiceImpl implements SearchCenterService {
//高亮标题覆盖原标题 //高亮标题覆盖原标题
sourceAsMap.put("textContent",n_field); sourceAsMap.put("textContent",n_field);
} }
// 条款内容
Map<String, HighlightField> highlightFieldItemStr = searchHit.getHighlightFields();
HighlightField fieldItemStr= highlightFieldItemStr.get("textItems");
if(fieldItemStr!= null){
Text[] fragments = fieldItemStr.fragments();
String n_field = "";
for (Text fragment : fragments) {
n_field += fragment;
}
//高亮标题覆盖原标题
sourceAsMap.put("textItems",n_field);
}
//发布日期添加高亮 //发布日期添加高亮
// Map<String, HighlightField> highlightFieldsDatehowStr = searchHit.getHighlightFields(); // Map<String, HighlightField> highlightFieldsDatehowStr = searchHit.getHighlightFields();
// HighlightField fieldDateshowStr= highlightFieldsDatehowStr.get("issue_time"); // HighlightField fieldDateshowStr= highlightFieldsDatehowStr.get("issue_time");