From bfd1ceef9efecc8b5f4cc4085aa8e3e454c0cc58 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Mon, 2 May 2022 16:08:26 +0800 Subject: [PATCH 01/11] feat: There is no way the, xxxx --- .../com/adc/da/mq/SendStandMQService.java | 29 ++++++++++++++----- .../server/ResetSearchCenterService.java | 1 - 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java index f8082445..9bcc232a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java @@ -80,7 +80,10 @@ public class SendStandMQService { } } String sarStandAttrEOStr = infoEO.getSarStandAttrEOStr(); - Map attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + Map attrInfoMap = new TreeMap<>(); + if(StringUtils.isNotBlank(sarStandAttrEOStr)){ + attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + } Map infoMap = infoEO.getAttrInfoMap(); Map infoEOMapItems = infoEO.getMapItems(); @@ -178,15 +181,25 @@ public class SendStandMQService { // 动态存储属性字段 for (String field : fieldInfoList) { - saveMap.put(field,attrInfoMap.getOrDefault(field,"")); - String fieldValue = ""; - if(infoMap.get(field) != null && StringUtils.isNotBlank(infoMap.get(field).toString())){ - Object json= new JSONTokener(infoMap.get(field).toString()).nextValue(); - if(!json.toString().equals("null")){ - fieldValue = infoMap.get(field).toString(); + String fieldValue = ""; + try { + saveMap.put(field,attrInfoMap.getOrDefault(field,"")); + if(infoMap.get(field) != null && StringUtils.isNotBlank(infoMap.get(field).toString())){ + Object json= new JSONTokener(infoMap.get(field).toString()).nextValue(); + if(json instanceof org.json.JSONArray){ + fieldValue = String.join(",", com.alibaba.fastjson.JSONObject.parseArray(standMap.get(field).toString(),String.class)); + }else { + if(!("null").equals(json)){ + fieldValue = standMap.get(field).toString(); + } + } } + saveMap.put(field+"Name",fieldValue); + }catch (Exception e){ + logger.info("国内外标准 消息队列: "+addOrUpdate+", 标准ID:"+infoEO.getId()+",问题字段:"+field); + saveMap.put(field+"Name",fieldValue); } - saveMap.put(field+"Name",fieldValue); + } if(infoEOMapItems != null && !infoEOMapItems.isEmpty()){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java b/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java index 92863c62..506cbb55 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java @@ -33,7 +33,6 @@ import com.adc.da.utils.util.FieldConvertUtil; import com.adc.da.utils.util.InitStandAttrUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.google.gson.JsonObject; import org.apache.commons.lang3.StringUtils; import org.elasticsearch.client.transport.TransportClient; import org.json.JSONTokener; From 83c54161c5064fa2b7cc906ade61af5212eb3052 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Tue, 3 May 2022 00:04:08 +0800 Subject: [PATCH 02/11] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96ES=20=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=20?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=8C=89=E5=8F=91=E5=B8=83=E6=97=A5=E6=9C=9F?= =?UTF-8?q?=E5=80=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/search/service/impl/SearchCenterServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index 3469ce58..ddbcd0a8 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -1225,6 +1225,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { searchRequestBuilder = client.prepareSearch("fulltextserch") .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .highlighter(hiBuilder) + .addSort("issue_time_order",SortOrder.DESC) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) .setSize(searchInfoEO.getPageSize()); From 24f4c7f7f03c2c39db0f3db5d603735d2056e155 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Tue, 3 May 2022 05:58:51 +0800 Subject: [PATCH 03/11] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=207=E5=A4=A9=E5=86=85=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=20=E6=96=B0=E5=A2=9E=20ES=20=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adc/da/search/ResetSearchCenterController.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/search/ResetSearchCenterController.java b/adc-da-slrs/src/main/java/com/adc/da/search/ResetSearchCenterController.java index 0635b408..90b7cf85 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/search/ResetSearchCenterController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/search/ResetSearchCenterController.java @@ -39,6 +39,17 @@ public class ResetSearchCenterController extends BaseController Date: Tue, 3 May 2022 06:05:20 +0800 Subject: [PATCH 04/11] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96ES=20=E9=AB=98=E7=BA=A7=E6=A3=80=E7=B4=A2?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../search/service/impl/SearchCenterServiceImpl.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index ddbcd0a8..2a582b0a 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -80,11 +80,11 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); - + updateIndex(searchInfoEO.getSelectIndex(),(searchInfoEO.getPage()-1)*searchInfoEO.getPageSize(),searchInfoEO.getPageSize()); searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) - .addSort("issueTime", SortOrder.DESC) + .addSort("issue_time_order", SortOrder.DESC) .setSize(searchInfoEO.getPageSize()); if(searchInfoEO.getSelectIndex().equals("stand")) { @@ -207,11 +207,11 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); - + updateIndex(searchInfoEO.getSelectIndex(),(searchInfoEO.getPage()-1)*searchInfoEO.getPageSize(),searchInfoEO.getPageSize()); searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) - .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) - .addSort("issueTime", SortOrder.DESC) + .addSort("issue_time_order", SortOrder.DESC) .setSize(searchInfoEO.getPageSize()); if(searchInfoEO.getSelectIndex().equals("stand")) { From 42237e63973fcf6e53cd4ccbb67de6a5df75fedc Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Tue, 3 May 2022 07:31:47 +0800 Subject: [PATCH 05/11] feat: There is no way the, --- .../src/main/java/com/adc/da/login/security/WebMvcConfig.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java index a810574b..acce5a53 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java @@ -121,6 +121,7 @@ public class WebMvcConfig implements WebMvcConfigurer { // 重置ES addInterceptor.excludePathPatterns("/api/search/resetSearchCenter/resetALLSearchCenter"); + addInterceptor.excludePathPatterns("/api/search/resetSearchCenter/manualResetALLSearchCenter"); addInterceptor.excludePathPatterns("/api/search/resetSearchCenter/resetAStandSearchCenter"); addInterceptor.excludePathPatterns("/api/search/resetSearchCenter/resetBLawsSearchCenter"); addInterceptor.excludePathPatterns("/api/search/resetSearchCenter/resetCBussStandSearchCenter"); From 68ae560e8ac9e6334a16bab888292a01146f8206 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Tue, 3 May 2022 08:06:48 +0800 Subject: [PATCH 06/11] feat: There is no way the, --- .../com/adc/da/search/server/ResetSearchCenterService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java b/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java index 506cbb55..fb03e5e4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java @@ -164,7 +164,7 @@ public class ResetSearchCenterService { SearchCenter lawsSearch = new SearchCenter(); lawsSearch.setExecType(searchCenter.getExecType()); SarLawsStandInfoPage lawsPage = new SarLawsStandInfoPage(); - page.setSyncParam("sync"); + lawsPage.setSyncParam("sync"); ResponseMessage laws = resetLawsSearchCenter(lawsPage,lawsSearch); if(laws.isOk() && StringUtils.isNotBlank(laws.getData().toString())){ r.add(laws.getData().toString()); @@ -173,7 +173,7 @@ public class ResetSearchCenterService { SearchCenter bussSearch = new SearchCenter(); bussSearch.setExecType(searchCenter.getExecType()); SarBussionessStandEOPage bussPage = new SarBussionessStandEOPage(); - page.setSyncParam("sync"); + bussPage.setSyncParam("sync"); ResponseMessage buss = resetBussStandSearchCenter(bussPage,bussSearch); if(buss.isOk() && StringUtils.isNotBlank(buss.getData().toString())){ r.add(buss.getData().toString()); From 6e6a04dd9ddedbc9e8ca5fa01fe13b566ad53046 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Tue, 3 May 2022 09:41:28 +0800 Subject: [PATCH 07/11] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=20es=20=E8=AF=BB=E5=8F=96=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SarStandardsInfoServiceImpl.java | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 246e15bd..231b9add 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -3045,19 +3045,30 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl Date: Tue, 3 May 2022 09:45:17 +0800 Subject: [PATCH 08/11] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96ES=20=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=20i?= =?UTF-8?q?ssue=5Ftime=5Fdata?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adc/da/search/service/impl/SearchCenterServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index 2a582b0a..3958ee4f 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -84,7 +84,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) - .addSort("issue_time_order", SortOrder.DESC) + .addSort("issue_time_data", SortOrder.DESC) .setSize(searchInfoEO.getPageSize()); if(searchInfoEO.getSelectIndex().equals("stand")) { @@ -211,7 +211,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) - .addSort("issue_time_order", SortOrder.DESC) + .addSort("issue_time_data", SortOrder.DESC) .setSize(searchInfoEO.getPageSize()); if(searchInfoEO.getSelectIndex().equals("stand")) { From f287e7c52b25d8e0ca64cbddd8d41aca04f57422 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Tue, 3 May 2022 12:30:23 +0800 Subject: [PATCH 09/11] feat: There is no way the, --- .../impl/SarStandardsInfoServiceImpl.java | 130 +++++++++--------- 1 file changed, 68 insertions(+), 62 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 231b9add..5457a19c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -2971,42 +2971,45 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl Date: Tue, 3 May 2022 12:53:35 +0800 Subject: [PATCH 10/11] feat: There is no way the, --- .../service/impl/SarStandardsInfoServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 5457a19c..f9720a00 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -2966,7 +2966,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl Date: Wed, 4 May 2022 16:14:10 +0800 Subject: [PATCH 11/11] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96ES=20=E4=BC=98=E5=88=B0=E4=BB=80=E4=B9=88?= =?UTF-8?q?=E6=97=B6=E5=80=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SearchCenterServiceImpl.java | 65 ++++++++++++++----- 1 file changed, 49 insertions(+), 16 deletions(-) diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index 3958ee4f..1fff2406 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -80,7 +80,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); - updateIndex(searchInfoEO.getSelectIndex(),(searchInfoEO.getPage()-1)*searchInfoEO.getPageSize(),searchInfoEO.getPageSize()); + updateIndex(searchInfoEO.getSelectIndex()); searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) @@ -207,10 +207,17 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); - updateIndex(searchInfoEO.getSelectIndex(),(searchInfoEO.getPage()-1)*searchInfoEO.getPageSize(),searchInfoEO.getPageSize()); + updateIndex(searchInfoEO.getSelectIndex()); + String sortField = ""; + if("laws".equals(searchInfoEO.getSelectIndex())){ + sortField = "lawsYear"; + }else { + sortField = "standYear"; + } searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) + .addSort(sortField, SortOrder.DESC) .addSort("issue_time_data", SortOrder.DESC) .setSize(searchInfoEO.getPageSize()); @@ -322,7 +329,34 @@ public class SearchCenterServiceImpl implements SearchCenterService { //在结果中检索 if (StringUtils.isNotEmpty(searchInfoEO.getSelectValue()) && !isRqFormat(searchInfoEO.getSelectValue())) { QueryBuilder multiQuery = queryInResult(searchInfoEO); - boolQueryBuilder.must(multiQuery); + BoolQueryBuilder boolSelectValue = new BoolQueryBuilder(); + boolSelectValue.should(multiQuery); + switch (searchInfoEO.getSelectIndex()){ + case "stand": + boolSelectValue + .should(QueryBuilders.wildcardQuery("standSort.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1005f)) + .should(QueryBuilders.wildcardQuery("standNumber.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1003f)) + .should(QueryBuilders.wildcardQuery("standYear.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1002f)) + .should(QueryBuilders.wildcardQuery("stand_name.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1000f)); + break; + case "laws": + boolSelectValue + .should(QueryBuilders.wildcardQuery("lawsType.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1005f)) + .should(QueryBuilders.wildcardQuery("lawsNumber.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1003f)) + .should(QueryBuilders.wildcardQuery("lawsYear.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1002f)) + .should(QueryBuilders.wildcardQuery("lawsName.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1001f)); + + break; + case "bussstand": + boolSelectValue + .should(QueryBuilders.wildcardQuery("standSort.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1005f)) + .should(QueryBuilders.wildcardQuery("standNumber.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1003f)) + .should(QueryBuilders.wildcardQuery("standYear.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1002f)) + .should(QueryBuilders.wildcardQuery("stand_name.keyword", "*" + searchInfoEO.getSelectValue().toUpperCase() + "*").boost(1000f)); + break; + default: break; + } + boolQueryBuilder.must(boolSelectValue); } searchRequestBuilder.setQuery(boolQueryBuilder).setTrackTotalHits(true); @@ -764,10 +798,10 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder(); List fieldList = getStringField(searchInfoEO); List fieldNameList = new ArrayList<>(); - String[] standStr = {"content","standSort","standNumber","standYear","stand_name","standEnName","standNatureName", + String[] standStr = {"content","standEnName","standNatureName", "textStatusName","isRelateAccessName","numbershow","standSystem","NYLXCLASS","CLLX"}; - String[] lawsStr = {"content","lawsType","lawsNumber","lawsName","lawsEnName","lawsNo","issueCompany","lawsTextState","lawsSyqy","lawsSycx","isRelateAccess","lawsYear","lawsNotisyncNum","lawsBulletin","lawsLabel","lawsRemark"}; - String[] bussstandStr = {"content","standSort","stand_code","standYear","stand_name","standEnName","nameshow","standstateshow","numbershow","textStatusBuss","textStatusBussName","NYLXCLASS","CLLX"}; + String[] lawsStr = {"content","lawsEnName","lawsNo","issueCompany","lawsTextState","lawsSyqy","lawsSycx","isRelateAccess","lawsNotisyncNum","lawsBulletin","lawsLabel","lawsRemark"}; + String[] bussstandStr = {"content","stand_code","standEnName","nameshow","standstateshow","numbershow","textStatusBuss","textStatusBussName","NYLXCLASS","CLLX"}; for (String field : fieldList) { // 关键字查询属性字段 String keyWordField2 = field + "Name"; @@ -779,7 +813,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { listStrings.addAll(fieldNameList); String[] fieldArr = listStrings.stream().toArray(String[]::new); multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(),fieldArr - ).minimumShouldMatch("100%"); + ).minimumShouldMatch("100%").boost(1L); // boolQueryBuilder.should(); // for (String field : fieldList) { // // 关键字查询属性字段 @@ -792,14 +826,14 @@ public class SearchCenterServiceImpl implements SearchCenterService { listStringLaws.addAll(fieldNameList); String[] fieldLawsArr = listStringLaws.stream().toArray(String[]::new); multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(),fieldLawsArr - ).minimumShouldMatch("100%"); + ).minimumShouldMatch("100%").boost(1L); break; case "bussstand": List listStringBussstand = Stream.of(bussstandStr).collect(Collectors.toList()); listStringBussstand.addAll(fieldNameList); String[] fieldBussstandArr = listStringBussstand.stream().toArray(String[]::new); multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(),fieldBussstandArr - ).minimumShouldMatch("100%"); + ).minimumShouldMatch("100%").boost(1L); break; default: break; } @@ -1221,7 +1255,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { hiBuilder.field(highlightDate); hiBuilder.preTags(""); hiBuilder.postTags(""); - updateIndex("fulltextserch",(searchInfoEO.getPage()-1)*searchInfoEO.getPageSize(),searchInfoEO.getPageSize()); + updateIndex("fulltextserch"); searchRequestBuilder = client.prepareSearch("fulltextserch") .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .highlighter(hiBuilder) @@ -1516,7 +1550,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { hiBuilder.preTags(""); hiBuilder.postTags(""); - updateIndex("fulltextserch",(searchInfoEO.getPage()-1)*searchInfoEO.getPageSize(),searchInfoEO.getPageSize()); + updateIndex("fulltextserch"); searchRequestBuilder = client.prepareSearch("fulltextserch") .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .highlighter(hiBuilder) @@ -1581,14 +1615,13 @@ public class SearchCenterServiceImpl implements SearchCenterService { } //更新索引的max_result_window参数 - private boolean updateIndex(String indices, int from,int size) { - int records = from * size + size; - if (records <= 10000) return true; + private boolean updateIndex(String indices) { AcknowledgedResponse indexResponse = client.admin().indices() .prepareUpdateSettings(indices) .setSettings(Settings.builder() - .put("index.max_result_window", records) - .put("highlight.max_analyzed_offset", records) + .put("index.max_result_window", 100000000) + .put("highlight.max_analyzed_offset", 100000000) + .put("index.highlight.max_analyzed_offset", 100000000) .build() ).get(); return indexResponse.isAcknowledged();