修改es查询条件
This commit is contained in:
@@ -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())));
|
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())){
|
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());
|
List<Integer> integers=StringUtil.convertStringToIntegerList(esJobSearch.getEducation());
|
||||||
wrapper.and(x->x.in(ESJobDocument::getEducation,integers));
|
wrapper.and(x->x.in(ESJobDocument::getEducation,integers));
|
||||||
}
|
}
|
||||||
if(Objects.nonNull(esJobSearch.getMaxSalary())){
|
if (Objects.nonNull(esJobSearch.getMinSalary())) {
|
||||||
wrapper.and(x->x.le(ESJobDocument::getMinSalary,esJobSearch.getMaxSalary()));
|
wrapper.filter(x -> x.ge(ESJobDocument::getMaxSalary, esJobSearch.getMinSalary()));
|
||||||
}
|
}
|
||||||
if(Objects.nonNull(esJobSearch.getMinSalary())){
|
if (Objects.nonNull(esJobSearch.getMaxSalary())) {
|
||||||
wrapper.and(x->x.ge(ESJobDocument::getMaxSalary,esJobSearch.getMinSalary()));
|
wrapper.filter(x -> x.le(ESJobDocument::getMinSalary, esJobSearch.getMaxSalary()));
|
||||||
}
|
}
|
||||||
if(!StringUtil.isEmptyOrNull(esJobSearch.getExperience())){
|
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());
|
List<Integer> integers = StringUtil.convertStringToIntegerList(esJobSearch.getExperience());
|
||||||
wrapper.and(x->x.in(ESJobDocument::getExperience_int,integers));//精准查询
|
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));
|
.match(ESJobDocument::getDescription,jobQuery.getJobTitle(),1.0f));
|
||||||
}
|
}
|
||||||
if(!StringUtil.isEmptyOrNull(jobQuery.getEducation())){
|
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());
|
List<Integer> integers=StringUtil.convertStringToIntegerList(jobQuery.getEducation());
|
||||||
wrapper.and(a->a.in(ESJobDocument::getEducation,integers));
|
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));
|
wrapper.and(x->x.in(ESJobDocument::getJobLocationAreaCode,integers));
|
||||||
}
|
}
|
||||||
if(!StringUtil.isEmptyOrNull(jobQuery.getExperience())){
|
if(!StringUtil.isEmptyOrNull(jobQuery.getExperience())){
|
||||||
//wrapper.and(a->a.le(ESJobDocument::getExperience,jobQuery.getExperience()));
|
|
||||||
List<Integer> integers = StringUtil.convertStringToIntegerList(jobQuery.getExperience());
|
List<Integer> integers = StringUtil.convertStringToIntegerList(jobQuery.getExperience());
|
||||||
wrapper.and(a->a.in(ESJobDocument::getExperience,integers));
|
wrapper.and(a->a.in(ESJobDocument::getExperience,integers));
|
||||||
}
|
}
|
||||||
if(Objects.nonNull(jobQuery.getMaxSalary())){
|
if (Objects.nonNull(jobQuery.getMinSalary())) {
|
||||||
wrapper.and(x->x.le(ESJobDocument::getMaxSalary,jobQuery.getMaxSalary()));
|
wrapper.filter(x -> x.ge(ESJobDocument::getMaxSalary, jobQuery.getMinSalary()));
|
||||||
}
|
}
|
||||||
if(Objects.nonNull(jobQuery.getMinSalary())){
|
if (Objects.nonNull(jobQuery.getMaxSalary())) {
|
||||||
wrapper.and(x->x.ge(ESJobDocument::getMinSalary,jobQuery.getMinSalary()));
|
wrapper.filter(x -> x.le(ESJobDocument::getMinSalary, jobQuery.getMaxSalary()));
|
||||||
}
|
}
|
||||||
if(!StringUtil.isEmptyOrNull(jobQuery.getScaleDictCode())){
|
if(!StringUtil.isEmptyOrNull(jobQuery.getScaleDictCode())){
|
||||||
wrapper.and(a->a.eq(ESJobDocument::getScaleDictCode,jobQuery.getScaleDictCode()));
|
wrapper.and(a->a.eq(ESJobDocument::getScaleDictCode,jobQuery.getScaleDictCode()));
|
||||||
|
|||||||
@@ -451,7 +451,7 @@ public class StringUtil {
|
|||||||
*/
|
*/
|
||||||
public static Long extractVacancyNum(String source) {
|
public static Long extractVacancyNum(String source) {
|
||||||
if (StringUtils.isBlank(source)) {
|
if (StringUtils.isBlank(source)) {
|
||||||
return -1L;
|
return 1L;
|
||||||
}
|
}
|
||||||
String text = source.trim();
|
String text = source.trim();
|
||||||
if (text.contains("若干")) {
|
if (text.contains("若干")) {
|
||||||
@@ -468,6 +468,6 @@ public class StringUtil {
|
|||||||
}
|
}
|
||||||
} catch (NumberFormatException ignored) {}
|
} catch (NumberFormatException ignored) {}
|
||||||
}
|
}
|
||||||
return maxNum == null ? -1L : maxNum;
|
return maxNum == null ? 1L : maxNum;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user