修改标准状态设置查询
This commit is contained in:
@@ -29,6 +29,11 @@ public class LawsHomeNormalSearchDTO implements Serializable {
|
||||
*/
|
||||
@ApiModelProperty(value = "资源类型 (数据字典 resource_type) (全部传空)")
|
||||
private String resourceType;
|
||||
/**
|
||||
* 标准状态设置 (1不包含废止标准,2包含废止标准) 默认不包含
|
||||
*/
|
||||
@ApiModelProperty(value = "标准状态设置 (1不包含废止标准,2包含废止标准) 默认不包含")
|
||||
private String standardStateSet;
|
||||
/**
|
||||
* 标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type) (全部传空)
|
||||
*/
|
||||
|
||||
+3
-9
@@ -103,9 +103,7 @@ public class HomeSearchCheckEsPlanJob implements Job {
|
||||
}
|
||||
|
||||
private void checkLawsEnterpriseStandard(String resourceType, Map<String, Integer> mapHash) {
|
||||
LambdaQueryWrapper<LawsEnterpriseStandard> query = new LambdaQueryWrapper<>();
|
||||
query.ne(LawsEnterpriseStandard::getStandardState,"9");
|
||||
List<LawsEnterpriseStandard> listLawsEnterpriseStandard = lawsEnterpriseStandardService.list(query);
|
||||
List<LawsEnterpriseStandard> listLawsEnterpriseStandard = lawsEnterpriseStandardService.list();
|
||||
int count3 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD, 0);
|
||||
int m3 = 0;
|
||||
if(!CollectionUtils.isEmpty(listLawsEnterpriseStandard)){
|
||||
@@ -121,9 +119,7 @@ public class HomeSearchCheckEsPlanJob implements Job {
|
||||
}
|
||||
|
||||
private void checkLawsOverseasStandard(String resourceType, Map<String, Integer> mapHash) {
|
||||
LambdaQueryWrapper<LawsOverseasStandard> query = new LambdaQueryWrapper<>();
|
||||
query.ne(LawsOverseasStandard::getStandardState,"7");
|
||||
List<LawsOverseasStandard> listLawsOverseasStandard = lawsOverseasStandardService.list(query);
|
||||
List<LawsOverseasStandard> listLawsOverseasStandard = lawsOverseasStandardService.list();
|
||||
int count2 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD, 0);
|
||||
int m2 = 0;
|
||||
if(!CollectionUtils.isEmpty(listLawsOverseasStandard)){
|
||||
@@ -139,9 +135,7 @@ public class HomeSearchCheckEsPlanJob implements Job {
|
||||
}
|
||||
|
||||
private void checkLawsDomesticStandard(String resourceType, Map<String, Integer> mapHash) {
|
||||
LambdaQueryWrapper<LawsDomesticStandard> query = new LambdaQueryWrapper<>();
|
||||
query.ne(LawsDomesticStandard::getStandardState,"7");
|
||||
List<LawsDomesticStandard> listLawsDomesticStandard = lawsDomesticStandardService.list(query);
|
||||
List<LawsDomesticStandard> listLawsDomesticStandard = lawsDomesticStandardService.list();
|
||||
// 比对数据
|
||||
int count1 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD, 0);
|
||||
int m1 = 0;
|
||||
|
||||
+4
-1
@@ -29,9 +29,12 @@ public interface LawsHomeSearchMapper extends BaseMapper<LawsHomeNormalSearchHis
|
||||
* @param page
|
||||
* @param queryWrapper
|
||||
* @param userId
|
||||
* @param standardStateSet
|
||||
* @return com.baomidou.mybatisplus.core.metadata.IPage<com.jero.modules.laws.home.vo.LawsHomeNormalSearchVO>
|
||||
*/
|
||||
IPage<LawsHomeNormalSearchVO> getPage(Page<LawsHomeNormalSearchVO> page,@Param(Constants.WRAPPER) QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper,@Param("userId") String userId);
|
||||
IPage<LawsHomeNormalSearchVO> getPage(Page<LawsHomeNormalSearchVO> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper,
|
||||
@Param("userId") String userId,@Param("standardStateSet") String standardStateSet);
|
||||
|
||||
/**
|
||||
* 首页-一般检索(标题)查询国内标准
|
||||
|
||||
+12
-3
@@ -21,7 +21,10 @@
|
||||
end as standard_state_order,
|
||||
standard_class,dynamic_type,applicable_vehicle,standard_property,standard_state,null as standard_code,null as grade_classification,
|
||||
implementation_date
|
||||
from laws_domestic_standard where del_flag = 0 and standard_state != 7
|
||||
from laws_domestic_standard where del_flag = 0
|
||||
<if test="standardStateSet == 1">
|
||||
and standard_state != 7
|
||||
</if>
|
||||
union all
|
||||
select id,'2' as resource_type,CONCAT_WS(' ',standard_number,standard_name) AS standard_name,create_time,7 as standard_type_order,
|
||||
case when standard_state = 5 then 2
|
||||
@@ -30,7 +33,10 @@
|
||||
else 4
|
||||
end as standard_state_order,
|
||||
standard_class,null,applicable_vehicle,null,standard_state,null,null,implementation_date
|
||||
from laws_overseas_standard where del_flag = 0 and standard_state != 7
|
||||
from laws_overseas_standard where del_flag = 0
|
||||
<if test="standardStateSet == 1">
|
||||
and standard_state != 7
|
||||
</if>
|
||||
union all
|
||||
select id,'3' as resource_type,CONCAT_WS(' ',standard_number,standard_name) AS standard_name,create_time,6 as standard_type_order,
|
||||
case when standard_state = 5 then 2
|
||||
@@ -39,7 +45,10 @@
|
||||
else 4
|
||||
end as standard_state_order,
|
||||
null,null,null,null,standard_state,standard_code,grade_classification,implementation_date
|
||||
from laws_enterprise_standard where del_flag = 0 and standard_state != 9
|
||||
from laws_enterprise_standard where del_flag = 0
|
||||
<if test="standardStateSet == 1">
|
||||
and standard_state != 9
|
||||
</if>
|
||||
union all
|
||||
select l1.id,'4' as resource_type,dynamic_heading as standard_name,create_time,9 as standard_type_order,
|
||||
4 AS standard_state_order,
|
||||
|
||||
+57
-20
@@ -141,6 +141,10 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
if (StringUtils.isBlank(searchContent)) {
|
||||
return new Page<>(pageNo, pageSize);
|
||||
}
|
||||
if(StringUtils.isBlank(lawsHomeNormalSearchDTO.getStandardStateSet())){
|
||||
// 默认不包含 废止状态
|
||||
lawsHomeNormalSearchDTO.setStandardStateSet("1");
|
||||
}
|
||||
// 添加检索历史
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
LawsHomeNormalSearchHistory lawsHomeNormalSearchHistory = new LawsHomeNormalSearchHistory();
|
||||
@@ -150,7 +154,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
|
||||
QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper = getQueryWrapperNormal(lawsHomeNormalSearchDTO);
|
||||
Page<LawsHomeNormalSearchVO> page = new Page<>(pageNo, pageSize);
|
||||
IPage<LawsHomeNormalSearchVO> pageList = lawsHomeSearchMapper.getPage(page,queryWrapper,loginUser.getId());
|
||||
IPage<LawsHomeNormalSearchVO> pageList = lawsHomeSearchMapper.getPage(page,queryWrapper,loginUser.getId(),lawsHomeNormalSearchDTO.getStandardStateSet());
|
||||
addContent(searchContent, pageList);
|
||||
return pageList;
|
||||
}
|
||||
@@ -467,6 +471,10 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
if (StringUtils.isBlank(searchContent)) {
|
||||
return obj;
|
||||
}
|
||||
if(StringUtils.isBlank(lawsHomeNormalSearchDTO.getStandardStateSet())){
|
||||
// 默认不包含 废止状态
|
||||
lawsHomeNormalSearchDTO.setStandardStateSet("1");
|
||||
}
|
||||
QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper = new QueryWrapper<>();
|
||||
String[] text = searchContent.split(BLANK_SPACE);
|
||||
|
||||
@@ -492,19 +500,19 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
|
||||
switch (lawsHomeNormalSearchDTO.getResourceType()){
|
||||
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
|
||||
queryWrapper.ne("standard_state",7);
|
||||
queryWrapper.ne(Objects.equals(lawsHomeNormalSearchDTO.getStandardStateSet(),"1"),"standard_state",7);
|
||||
List<LawsHomeNormalSearchCountVO> list1 = lawsHomeSearchMapper.getCount1(queryWrapper);
|
||||
setDict(list1);
|
||||
count1(list1,obj);
|
||||
break;
|
||||
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
|
||||
queryWrapper.ne("standard_state",7);
|
||||
queryWrapper.ne(Objects.equals(lawsHomeNormalSearchDTO.getStandardStateSet(),"1"),"standard_state",7);
|
||||
List<LawsHomeNormalSearchCountVO> list2 = lawsHomeSearchMapper.getCount2(queryWrapper);
|
||||
setDict(list2);
|
||||
count2(list2,obj);
|
||||
break;
|
||||
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
|
||||
queryWrapper.ne("standard_state",9);
|
||||
queryWrapper.ne(Objects.equals(lawsHomeNormalSearchDTO.getStandardStateSet(),"1"),"standard_state",9);
|
||||
List<LawsHomeNormalSearchCountVO> list3 = lawsHomeSearchMapper.getCount3(queryWrapper);
|
||||
setDict(list3);
|
||||
count3(list3,obj);
|
||||
@@ -529,7 +537,6 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
// 标准状态
|
||||
List<LawsHomeNormalSearchStatisticsObjVO> list2 = addLawsHomeNormalSearchStatistics(list, ENTERPRISE_STANDARD_STATE, STANDARD_STATE);
|
||||
if(!CollectionUtils.isEmpty(list2)){
|
||||
list2.removeIf(o->Objects.equals(o.getItemValue(),"9"));
|
||||
obj.setEnterpriseStandardState(list2);
|
||||
}
|
||||
// 标准等级分类
|
||||
@@ -553,7 +560,6 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
// 状态
|
||||
List<LawsHomeNormalSearchStatisticsObjVO> list3 = addLawsHomeNormalSearchStatistics(list, STANDARD_STATE, STANDARD_STATE);
|
||||
if(!CollectionUtils.isEmpty(list3)){
|
||||
list3.removeIf(o->Objects.equals(o.getItemValue(),"7"));
|
||||
obj.setStandardState(list3);
|
||||
}
|
||||
}
|
||||
@@ -582,7 +588,6 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
// 状态
|
||||
List<LawsHomeNormalSearchStatisticsObjVO> list5 = addLawsHomeNormalSearchStatistics(list,STANDARD_STATE, STANDARD_STATE);
|
||||
if(!CollectionUtils.isEmpty(list5)){
|
||||
list5.removeIf(o->Objects.equals(o.getItemValue(),"7"));
|
||||
obj.setStandardState(list5);
|
||||
}
|
||||
}
|
||||
@@ -635,6 +640,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
return new Page<>(pageNo, pageSize);
|
||||
}
|
||||
|
||||
|
||||
Map<String,String> mapDict = new HashMap<>();
|
||||
if(!StringUtils.isBlank(homeNormalSearchDTO.getStandardClass())){
|
||||
mapDict.put(STANDARD_CLASS,homeNormalSearchDTO.getStandardClass());
|
||||
@@ -697,6 +703,16 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
JSONObject jsonObjectShould = getJsonObject(loginUser);
|
||||
queryMapJsonDict.add(jsonObjectShould);
|
||||
|
||||
if(StringUtils.isBlank(homeNormalSearchDTO.getStandardStateSet()) || Objects.equals(homeNormalSearchDTO.getStandardStateSet(),"1")){
|
||||
// 默认不包含 废止状态
|
||||
JSONArray query = new JSONArray();
|
||||
query.add(getJSON("1",",7,"));
|
||||
query.add(getJSON("2",",7,"));
|
||||
query.add(getJSON("3",",9,"));
|
||||
JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, query);
|
||||
queryMapJsonDict.add(jsonObject);
|
||||
}
|
||||
|
||||
if(CollectionUtils.isNotEmpty(queryMapJsonDict)){
|
||||
jsonAll.put("must",queryMapJsonDict);
|
||||
JSONObject all = new JSONObject();
|
||||
@@ -744,6 +760,27 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
return page;
|
||||
}
|
||||
|
||||
private JSONObject getJSON(String s1,String s2){
|
||||
JSONObject json1 = new JSONObject();
|
||||
JSONObject json2 = new JSONObject();
|
||||
Map<String,String> map11 = new HashMap<>();
|
||||
Map<String,String> map12 = new HashMap<>();
|
||||
map11.put("resource_type",s1);
|
||||
map12.put("standard_state",s2);
|
||||
JSONObject match11 = new JSONObject();
|
||||
JSONObject match12 = new JSONObject();
|
||||
match11.put("match",map11);
|
||||
match12.put("match",map12);
|
||||
JSONArray json11 = new JSONArray();
|
||||
JSONArray json12 = new JSONArray();
|
||||
json11.add(match11);
|
||||
json12.add(match12);
|
||||
json1.put("must",json11);
|
||||
json1.put("must_not",json12);
|
||||
json2.put("bool",json1);
|
||||
return json2;
|
||||
}
|
||||
|
||||
private void addSearchContent(String searchContent, JSONArray queryMapJson) {
|
||||
String[] searchContentArr = searchContent.split(BLANK_SPACE);
|
||||
for (String s : searchContentArr) {
|
||||
@@ -958,6 +995,16 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
JSONObject object = jeroElasticsearchTemplate.buildBoolQuery(null,null,queryMapJson);
|
||||
queryAll.add(object);
|
||||
}
|
||||
|
||||
if(StringUtils.isBlank(homeNormalSearchDTO.getStandardStateSet()) || Objects.equals(homeNormalSearchDTO.getStandardStateSet(),"1")){
|
||||
// 默认不包含 废止状态
|
||||
JSONArray query = new JSONArray();
|
||||
query.add(getJSON("1",",7,"));
|
||||
query.add(getJSON("2",",7,"));
|
||||
query.add(getJSON("3",",9,"));
|
||||
JSONObject object = jeroElasticsearchTemplate.buildBoolQuery(null, null, query);
|
||||
queryAll.add(object);
|
||||
}
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
JSONObject object = getJsonObject(loginUser);
|
||||
queryAll.add(object);
|
||||
@@ -1101,10 +1148,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
while (startIndex < listIds.size()) {
|
||||
int endIndex = getEndIndex(startIndex, batchCount, listIds);
|
||||
List<String> listIdsSub = listIds.subList(startIndex, endIndex);
|
||||
LambdaQueryWrapper<LawsDomesticStandard> query = new LambdaQueryWrapper<>();
|
||||
query.in(LawsDomesticStandard::getId,listIdsSub);
|
||||
query.ne(LawsDomesticStandard::getStandardState,"7");
|
||||
List<LawsDomesticStandard> listLawsDomesticStandard = lawsDomesticStandardService.list(query);
|
||||
List<LawsDomesticStandard> listLawsDomesticStandard = lawsDomesticStandardService.listByIds(listIdsSub);
|
||||
if(CollectionUtils.isEmpty(listLawsDomesticStandard)){
|
||||
continue;
|
||||
}
|
||||
@@ -1216,10 +1260,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
while (startIndex < listIds.size()) {
|
||||
int endIndex = getEndIndex(startIndex, batchCount, listIds);
|
||||
List<String> listIdsSub = listIds.subList(startIndex, endIndex);
|
||||
LambdaQueryWrapper<LawsOverseasStandard> query = new LambdaQueryWrapper<>();
|
||||
query.in(LawsOverseasStandard::getId,listIdsSub);
|
||||
query.ne(LawsOverseasStandard::getStandardState,"7");
|
||||
List<LawsOverseasStandard> listLawsOverseasStandard = lawsOverseasStandardService.list(query);
|
||||
List<LawsOverseasStandard> listLawsOverseasStandard = lawsOverseasStandardService.listByIds(listIdsSub);
|
||||
if(CollectionUtils.isEmpty(listLawsOverseasStandard)){
|
||||
continue;
|
||||
}
|
||||
@@ -1303,10 +1344,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
while (startIndex < listIds.size()) {
|
||||
int endIndex = getEndIndex(startIndex, batchCount, listIds);
|
||||
List<String> listIdsSub = listIds.subList(startIndex, endIndex);
|
||||
LambdaQueryWrapper<LawsEnterpriseStandard> query = new LambdaQueryWrapper<>();
|
||||
query.in(LawsEnterpriseStandard::getId,listIdsSub);
|
||||
query.ne(LawsEnterpriseStandard::getStandardState,"9");
|
||||
List<LawsEnterpriseStandard> listLawsEnterpriseStandard = lawsEnterpriseStandardService.list(query);
|
||||
List<LawsEnterpriseStandard> listLawsEnterpriseStandard = lawsEnterpriseStandardService.listByIds(listIdsSub);
|
||||
if(CollectionUtils.isEmpty(listLawsEnterpriseStandard)){
|
||||
continue;
|
||||
}
|
||||
@@ -1375,7 +1413,6 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
||||
int startIndex = 0;
|
||||
int batchCount = 2000;
|
||||
List<String> listIds = Arrays.asList(ids.split(","));
|
||||
ForkJoinPool pool = new ForkJoinPool();
|
||||
// 异步执行
|
||||
while (startIndex < listIds.size()) {
|
||||
int endIndex = getEndIndex(startIndex, batchCount, listIds);
|
||||
|
||||
Reference in New Issue
Block a user