From 35aa1adf9b4949e6d32c4a1b43501fd8168e88bc Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Sat, 30 Apr 2022 11:59:38 +0800 Subject: [PATCH 1/3] feat: There is no way the, log --- .../da/search/server/ResetSearchCenterService.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 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 c5edfa67..a4d51bbc 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 @@ -247,6 +247,7 @@ public class ResetSearchCenterService { if(!delList.isEmpty() && ("DEL".equals(searchCenter.getExecType().toUpperCase()))){ elasticsearchService.deleteBatchId(delList,"stand"); elasticsearchService.deleteBatchId(delList,"fulltextserch"); + logger.info("重置国内外标准:删除-共"+delList.size()+"条数据"); } logger.info("重置国内外标准:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(国内外标准共:"+0+"条)删除-共"+delList.size()+"条数据"); return Result.success("重置国内外标准:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(国内外标准共:"+0+"条)删除-共"+delList.size()+"条数据"); @@ -333,10 +334,11 @@ public class ResetSearchCenterService { if(!delList.isEmpty() && ("DEL".equals(searchCenter.getExecType().toUpperCase()))){ elasticsearchService.deleteBatchId(delList,"laws"); elasticsearchService.deleteBatchId(delList,"fulltextserch"); + logger.info("重置国内外政策:删除-共"+delList.size()+"条数据"); } - logger.info("重置国内外政策:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(国内外政策共:"+rowsStand.size()+"条)删除-共"+delList.size()+"条数据"); - return Result.success("重置国内外政策:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(国内外政策共:"+rowsStand.size()+"条)删除-共"+delList.size()+"条数据"); + logger.info("重置国内外政策:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(国内外政策共:"+rowsStand.size()+"条)数据"); + return Result.success(""); } private void idListFunc(SarLawsStandInfoPage sarLawsInfoEOPage, SearchCenter searchCenter) { @@ -431,9 +433,10 @@ public class ResetSearchCenterService { if(!delList.isEmpty() && ("DEL".equals(searchCenter.getExecType().toUpperCase()))){ elasticsearchService.deleteBatchId(delList,"bussstand"); elasticsearchService.deleteBatchId(delList,"fulltextserch"); + logger.info("重置企标:删除-共"+delList.size()+"条数据"); } - logger.info("重置企标:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(企标共:"+rowsStand.size()+"条)删除-共"+delList.size()+"条数据"); - return Result.success("重置企标:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(企标共:"+rowsStand.size()+"条)删除-共"+delList.size()+"条数据"); + logger.info("重置企标:新增-"+ countAddSuccess + "条 更新-"+countUpdateSuccess+"条(企标共:"+rowsStand.size()+"条)数据"); + return Result.success(""); } /** From bfc902b32f3666171d810a56bb416d736f7ab080 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Sat, 30 Apr 2022 12:19:19 +0800 Subject: [PATCH 2/3] feat: There is no way the, XXX --- .../java/com/adc/da/search/ResetSearchCenterController.java | 3 --- 1 file changed, 3 deletions(-) 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 73b8b274..0635b408 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 @@ -44,9 +44,6 @@ public class ResetSearchCenterController extends BaseController Date: Sat, 30 Apr 2022 18:45:45 +0800 Subject: [PATCH 3/3] =?UTF-8?q?feat:=20There=20is=20no=20way=20the,=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96ES?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SearchCenterServiceImpl.java | 63 +++++++++++-------- .../server/ResetSearchCenterService.java | 58 ++++++++++++++--- 2 files changed, 87 insertions(+), 34 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 975e7ab9..826f0598 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 @@ -1413,30 +1413,30 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolSelectValue = new BoolQueryBuilder(); QueryBuilder multiQueryBuilder; String[] selects = null; - if (StringUtils.isNotBlank(select)) { - //判断标准号是否企标SMTC ,标准列别 (),/,字母 - Pattern pattern = Pattern.compile("^[a-zA-Z\\/\\(\\)\\(\\)]+$"); - if (pattern.matcher(value).matches()) { - Pattern patternbianhao = Pattern.compile("^[0-9a-zA-Z\\.\\(\\(\\)\\)\\-\\s]+$"); - if (patternbianhao.matcher(select).matches()) { - //符合标准编号 - selects = select.replace(" ","-").split("-"); - } else { - //不符合标准编号 使用wildcard查询 编号 - selects = select.replace(" ","-").split("-"); - } - } else { - //不符合标准类别,wildcard 查询整体 real 6/23 解决搜索DRE的问题 - selects = null; - value = real; -// isReal = true; - } - }else{ - //没有空格,存在问题,使用wildcard查询 real - selects = null; - value = real; -// isReal = true; - } +// if (StringUtils.isNotBlank(select)) { +// //判断标准号是否企标SMTC ,标准列别 (),/,字母 +// Pattern pattern = Pattern.compile("^[a-zA-Z\\/\\(\\)\\(\\)]+$"); +// if (pattern.matcher(value).matches()) { +// Pattern patternbianhao = Pattern.compile("^[0-9a-zA-Z\\.\\(\\(\\)\\)\\-\\s]+$"); +// if (patternbianhao.matcher(select).matches()) { +// //符合标准编号 +// selects = select.replace(" ","-").split("-"); +// } else { +// //不符合标准编号 使用wildcard查询 编号 +// selects = select.replace(" ","-").split("-"); +// } +// } else { +// //不符合标准类别,wildcard 查询整体 real 6/23 解决搜索DRE的问题 +// selects = null; +// value = real; +//// isReal = true; +// } +// }else{ +// //没有空格,存在问题,使用wildcard查询 real +// selects = null; +// value = real; +//// isReal = true; +// } if (isReal){ //查询real @@ -1444,9 +1444,13 @@ public class SearchCenterServiceImpl implements SearchCenterService { selects = null; } - if(null != value || null != selects){ - if (null != value && selects == null) { + if(null != value || null != select){ + if (null != value && select == null) { boolSelectValue + .should(QueryBuilders.wildcardQuery("sortTitle.keyword", "*" + value.toUpperCase() + "*").boost(1005f)) + .should(QueryBuilders.wildcardQuery("numberTitle.keyword", "*" + value.toUpperCase() + "*").boost(1003f)) + .should(QueryBuilders.wildcardQuery("yearOrder.keyword", "*" + value.toUpperCase() + "*").boost(1002f)) + .should(QueryBuilders.wildcardQuery("nameTitle.keyword", "*" + value.toUpperCase() + "*").boost(1001f)) .should(QueryBuilders.wildcardQuery("title.keyword", "*" + value.toUpperCase() + "*").boost(1000f)) .should(QueryBuilders.wildcardQuery("textContent.keyword", "*" + value.toUpperCase() + "*").boost(0.0000000000000000000000000000000001f)) .should(QueryBuilders.wildcardQuery("issue_time", "*" + value.toUpperCase() + "*")); @@ -1456,8 +1460,12 @@ public class SearchCenterServiceImpl implements SearchCenterService { // boolQueryShould.should(multiQueryBuilder); } // searchInfoEO.setSelectValue(searchInfoEO.getSelectValue().replace("-","\\-")); - if (null != selects) { + if (null != select) { boolSelectValue + .should(QueryBuilders.wildcardQuery("sortTitle.keyword", "*" + real.toUpperCase() + "*").boost(1005f)) + .should(QueryBuilders.wildcardQuery("numberTitle.keyword", "*" + real.toUpperCase() + "*").boost(1003f)) + .should(QueryBuilders.wildcardQuery("yearOrder.keyword", "*" + real.toUpperCase() + "*").boost(1002f)) + .should(QueryBuilders.wildcardQuery("nameTitle.keyword", "*" + real.toUpperCase() + "*").boost(1001f)) .should(QueryBuilders.wildcardQuery("title.keyword", "*" + real.toUpperCase() + "*").boost(1000f)) .should(QueryBuilders.wildcardQuery("textContent.keyword", "*" + real.toUpperCase() + "*").boost(0.0000000000000000000000000000000001f)) .should(QueryBuilders.wildcardQuery("issue_time", "*" + real.toUpperCase() + "*")); @@ -1511,6 +1519,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()); 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 a4d51bbc..b48f4b7f 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 @@ -75,6 +75,9 @@ public class ResetSearchCenterService { int count = iSarStandardsInfoService.count(qw); standSearch.setExecType(searchCenter.getExecType()); standSearch.setCountStand(count); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty()){ + standSearch.setIdList(searchCenter.getIdList()); + } SarStandardsInfoEOPage page = new SarStandardsInfoEOPage(); ResponseMessage stand = resetStandSearchCenter(page,standSearch); List r = new ArrayList<>(); @@ -88,6 +91,9 @@ public class ResetSearchCenterService { int count2 = iSarLawsStandInfoService.count(qw2); lawsSearch.setExecType(searchCenter.getExecType()); lawsSearch.setCountStand(count2); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty()){ + lawsSearch.setIdList(searchCenter.getIdList()); + } SarLawsStandInfoPage lawsPage = new SarLawsStandInfoPage(); ResponseMessage laws = resetLawsSearchCenter(lawsPage,lawsSearch); if(laws.isOk() && StringUtils.isNotBlank(laws.getData().toString())){ @@ -100,6 +106,9 @@ public class ResetSearchCenterService { int count3 = iSarBussionessStandService.count(qw3); bussSearch.setExecType(searchCenter.getExecType()); bussSearch.setCountStand(count3); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty()){ + bussSearch.setIdList(searchCenter.getIdList()); + } SarBussionessStandEOPage bussPage = new SarBussionessStandEOPage(); ResponseMessage buss = resetBussStandSearchCenter(bussPage,bussSearch); if(buss.isOk() && StringUtils.isNotBlank(buss.getData().toString())){ @@ -200,14 +209,26 @@ public class ResetSearchCenterService { .filter(item -> !new ArrayList<>(esIdList) .contains(item.getId())) .collect(Collectors.toList()); - insList.addAll(distinctByUniqueList); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty() && !distinctByUniqueList.isEmpty()){ + List collect = distinctByUniqueList.stream() + .filter(item -> searchCenter.getIdList().contains(item.getId())).collect(Collectors.toList()); + insList.addAll(collect); + }else{ + insList.addAll(distinctByUniqueList); + } // 交集 更新 List intersection = rowsStand.stream() .filter(item -> new ArrayList<>(esIdList) .contains(item.getId())) .collect(Collectors.toList()); - updList.addAll(intersection); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty() && !intersection.isEmpty()){ + List collect = intersection.stream() + .filter(item -> searchCenter.getIdList().contains(item.getId())).collect(Collectors.toList()); + updList.addAll(collect); + }else{ + updList.addAll(intersection); + } // 差集 (list2 - list1) 删除 List delDataList = esIdList.stream().filter(num -> !standIdList.contains(num)) @@ -287,14 +308,25 @@ public class ResetSearchCenterService { .filter(item -> !new ArrayList<>(esIdList) .contains(item.getId())) .collect(Collectors.toList()); - insList.addAll(distinctByUniqueList); - + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty() && !distinctByUniqueList.isEmpty()){ + List collect = distinctByUniqueList.stream() + .filter(item -> searchCenter.getIdList().contains(item.getId())).collect(Collectors.toList()); + insList.addAll(collect); + }else{ + insList.addAll(distinctByUniqueList); + } // 交集 更新 List intersection = rowsStand.stream() .filter(item -> new ArrayList<>(esIdList) .contains(item.getId())) .collect(Collectors.toList()); - updList.addAll(intersection); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty() && !intersection.isEmpty()){ + List collect = intersection.stream() + .filter(item -> searchCenter.getIdList().contains(item.getId())).collect(Collectors.toList()); + updList.addAll(collect); + }else{ + updList.addAll(intersection); + } // 差集 (list2 - list1) 删除 List delDataList = esIdList.stream().filter(num -> !standIdList.contains(num)) @@ -387,14 +419,26 @@ public class ResetSearchCenterService { .filter(item -> !new ArrayList<>(esIdList) .contains(item.getId())) .collect(Collectors.toList()); - insList.addAll(distinctByUniqueList); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty() && !distinctByUniqueList.isEmpty()){ + List collect = distinctByUniqueList.stream() + .filter(item -> searchCenter.getIdList().contains(item.getId())).collect(Collectors.toList()); + insList.addAll(collect); + }else{ + insList.addAll(distinctByUniqueList); + } // 交集 更新 List intersection = rowsStand.stream() .filter(item -> new ArrayList<>(esIdList) .contains(item.getId())) .collect(Collectors.toList()); - updList.addAll(intersection); + if(searchCenter.getIdList() != null && !searchCenter.getIdList().isEmpty() && !intersection.isEmpty()){ + List collect = intersection.stream() + .filter(item -> searchCenter.getIdList().contains(item.getId())).collect(Collectors.toList()); + updList.addAll(collect); + }else{ + updList.addAll(intersection); + } // 差集 (list2 - list1) 删除 List delDataList = esIdList.stream().filter(num -> !standIdList.contains(num))