修改es查询条件

This commit is contained in:
sh
2026-07-08 11:03:53 +08:00
parent 35db37b352
commit 1594f00305
2 changed files with 10 additions and 17 deletions

View File

@@ -524,20 +524,16 @@ public class ESJobSearchImpl implements IESJobSearchService
wrapper.geoDistance(ESJobDocument::getLatAndLon,Double.valueOf(esJobSearch.getRadius()), DistanceUnit.KILOMETERS,new GeoPoint(Double.parseDouble(esJobSearch.getLatitude().toString()), Double.parseDouble(esJobSearch.getLongitude().toString())));
}
if(!StringUtil.isEmptyOrNull(esJobSearch.getEducation())){
//Integer maxValue = StringUtil.findMaxValue(esJobSearch.getEducation());
//wrapper.and(x->x.le(ESJobDocument::getEducation_int,maxValue));//模糊查询
List<Integer> integers=StringUtil.convertStringToIntegerList(esJobSearch.getEducation());
wrapper.and(x->x.in(ESJobDocument::getEducation,integers));
}
if(Objects.nonNull(esJobSearch.getMaxSalary())){
wrapper.and(x->x.le(ESJobDocument::getMinSalary,esJobSearch.getMaxSalary()));
}
if (Objects.nonNull(esJobSearch.getMinSalary())) {
wrapper.and(x->x.ge(ESJobDocument::getMaxSalary,esJobSearch.getMinSalary()));
wrapper.filter(x -> x.ge(ESJobDocument::getMaxSalary, esJobSearch.getMinSalary()));
}
if (Objects.nonNull(esJobSearch.getMaxSalary())) {
wrapper.filter(x -> x.le(ESJobDocument::getMinSalary, esJobSearch.getMaxSalary()));
}
if(!StringUtil.isEmptyOrNull(esJobSearch.getExperience())){
//Integer maxValue = StringUtil.findMaxValue(esJobSearch.getExperience());
//wrapper.and(x->x.le(ESJobDocument::getExperience_int,maxValue));
List<Integer> integers = StringUtil.convertStringToIntegerList(esJobSearch.getExperience());
wrapper.and(x->x.in(ESJobDocument::getExperience_int,integers));//精准查询
}
@@ -654,8 +650,6 @@ public class ESJobSearchImpl implements IESJobSearchService
.match(ESJobDocument::getDescription,jobQuery.getJobTitle(),1.0f));
}
if(!StringUtil.isEmptyOrNull(jobQuery.getEducation())){
//wrapper.and(a->a.le(ESJobDocument::getEducation,jobQuery.getEducation()));
//wrapper.and(a->a.eq(ESJobDocument::getEducation,jobQuery.getEducation()));
List<Integer> integers=StringUtil.convertStringToIntegerList(jobQuery.getEducation());
wrapper.and(a->a.in(ESJobDocument::getEducation,integers));
}
@@ -664,15 +658,14 @@ public class ESJobSearchImpl implements IESJobSearchService
wrapper.and(x->x.in(ESJobDocument::getJobLocationAreaCode,integers));
}
if(!StringUtil.isEmptyOrNull(jobQuery.getExperience())){
//wrapper.and(a->a.le(ESJobDocument::getExperience,jobQuery.getExperience()));
List<Integer> integers = StringUtil.convertStringToIntegerList(jobQuery.getExperience());
wrapper.and(a->a.in(ESJobDocument::getExperience,integers));
}
if(Objects.nonNull(jobQuery.getMaxSalary())){
wrapper.and(x->x.le(ESJobDocument::getMaxSalary,jobQuery.getMaxSalary()));
}
if (Objects.nonNull(jobQuery.getMinSalary())) {
wrapper.and(x->x.ge(ESJobDocument::getMinSalary,jobQuery.getMinSalary()));
wrapper.filter(x -> x.ge(ESJobDocument::getMaxSalary, jobQuery.getMinSalary()));
}
if (Objects.nonNull(jobQuery.getMaxSalary())) {
wrapper.filter(x -> x.le(ESJobDocument::getMinSalary, jobQuery.getMaxSalary()));
}
if(!StringUtil.isEmptyOrNull(jobQuery.getScaleDictCode())){
wrapper.and(a->a.eq(ESJobDocument::getScaleDictCode,jobQuery.getScaleDictCode()));

View File

@@ -451,7 +451,7 @@ public class StringUtil {
*/
public static Long extractVacancyNum(String source) {
if (StringUtils.isBlank(source)) {
return -1L;
return 1L;
}
String text = source.trim();
if (text.contains("若干")) {
@@ -468,6 +468,6 @@ public class StringUtil {
}
} catch (NumberFormatException ignored) {}
}
return maxNum == null ? -1L : maxNum;
return maxNum == null ? 1L : maxNum;
}
}