...
|
...
|
@@ -29,8 +29,17 @@ public class SearchServiceHelper { |
|
|
*/
|
|
|
public QueryBuilder constructGeoDistanceRangeQueryBuilder(Map<String, String> paramMap) {
|
|
|
if (paramMap.get("range_start") != null && paramMap.get("range_end") != null) {
|
|
|
//经纬度校验
|
|
|
Double latitude = Double.valueOf(paramMap.get("latitude"));
|
|
|
if (latitude > 90 || latitude < -90) {
|
|
|
latitude = 0.0;
|
|
|
}
|
|
|
Double longitude = Double.valueOf(paramMap.get("longitude"));
|
|
|
if (longitude > 180 || longitude < -180) {
|
|
|
longitude = 0.0;
|
|
|
}
|
|
|
QueryBuilder builder = new GeoDistanceRangeQueryBuilder("pin.location")
|
|
|
.point(Double.valueOf(paramMap.get("latitude")), Double.valueOf(paramMap.get("longitude")))//注意纬度在前,经度在后
|
|
|
.point(latitude, longitude)//注意纬度在前,经度在后
|
|
|
.from(paramMap.get("range_start") + "m")
|
|
|
.to(paramMap.get("range_end") + "m")
|
|
|
.includeLower(true)
|
...
|
...
|
|