From 2a7393d2b714ed54f339af6b888423f8d5ee885c Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Thu, 7 Apr 2022 21:08:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=90=9C=E7=B4=A2=E6=AE=B5=E8=90=BD=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/DocumentSearchServiceImpl.java | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/DocumentSearchServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/DocumentSearchServiceImpl.java index b23cade30..20444c590 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/DocumentSearchServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/DocumentSearchServiceImpl.java @@ -849,11 +849,20 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Map mapTwo = (Map) map.get("mapTwo"); JSONArray queryMapJson = new JSONArray(); + JSONArray queryMapJsonTemp = new JSONArray(); JSONArray queryMapJsonTwo = new JSONArray(); JSONArray queryMapJsonThree = new JSONArray(); JSONArray queryMapJsonAll = new JSONArray(); //首次查询条件 if (ObjectUtils.isNotEmpty(mapOne)) { + if(StringUtils.isNotBlank((String)mapOne.get("title")) + || StringUtils.isNotBlank((String)mapOne.get("serial_number"))){ + Map queryMap = new HashMap<>(); + Map queryMapTemp = new HashMap<>(); + queryMapTemp.put("flag",SEARCH_FLAG ); + queryMap.put("match_phrase", queryMapTemp); + queryMapJsonTemp.add(queryMap); + } for (Map.Entry entry : mapOne.entrySet()) { String key = entry.getKey(); String value = (String) entry.getValue(); @@ -867,10 +876,27 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { } } } - if(CollectionUtils.isNotEmpty(queryMapJson)){ - JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJson); + if(CollectionUtils.isNotEmpty(queryMapJsonTemp)){ + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJsonTemp, null, null); queryMapJsonAll.add(jsonObject); } + if(CollectionUtils.isNotEmpty(queryMapJson)){ + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, null, null); + queryMapJsonAll.add(jsonObject); + } + //首次查询所有的条件是and的关系 +// if(ObjectUtils.isEmpty(mapTwo)){ +// if(CollectionUtils.isNotEmpty(queryMapJson)){ +// JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, null, null); +// queryMapJsonAll.add(jsonObject); +// } +// }else{ +// if(CollectionUtils.isNotEmpty(queryMapJson)){ +// JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJson); +// queryMapJsonAll.add(jsonObject); +// } +// } + } String ids = (String) mapTwo.get("ids"); @@ -891,7 +917,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { } } if(CollectionUtils.isNotEmpty(queryMapJsonTwo)){ - JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJsonTwo); + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJsonTwo, null, null); queryMapJsonAll.add(jsonObject); } }