|
@@ -155,18 +155,26 @@ public class AddressQueryEngine {
|
|
|
*/
|
|
|
private AddressResult yyszMultiSearch(List<String> addrs, AddressLevel level) {
|
|
|
try{
|
|
|
- for (String addr : addrs) {
|
|
|
- AddressResult.ContentBean contentBean = verificaData(yyszSearchByName(addr), level, addr);
|
|
|
- if (contentBean != null) {
|
|
|
- contentBean.setSearchAddress(addr);
|
|
|
-
|
|
|
- List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
- contentBeans.add(contentBean);
|
|
|
- AddressResult addressResult = new AddressResult();
|
|
|
- addressResult.setData(contentBeans);
|
|
|
- addressResult.setCode(AddressResultEnum.YYSZ_SUCCESS);
|
|
|
- addressResult.setMessage("成功");
|
|
|
- return addressResult;
|
|
|
+
|
|
|
+ if(addrs != null && addrs.size() == 1){
|
|
|
+ AddressResult addressResult = yyszSearchByName(addrs.get(0));
|
|
|
+ addressResult.setCode(AddressResultEnum.YYSZ_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ } else {
|
|
|
+ for (String addr : addrs) {
|
|
|
+ AddressResult.ContentBean contentBean = verificaData(yyszSearchByName(addr), level, addr);
|
|
|
+ if (contentBean != null) {
|
|
|
+ contentBean.setSearchAddress(addr);
|
|
|
+
|
|
|
+ List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
+ contentBeans.add(contentBean);
|
|
|
+ AddressResult addressResult = new AddressResult();
|
|
|
+ addressResult.setData(contentBeans);
|
|
|
+ addressResult.setCode(AddressResultEnum.YYSZ_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}catch (Exception e){
|
|
@@ -179,17 +187,24 @@ public class AddressQueryEngine {
|
|
|
*/
|
|
|
private AddressResult wdMultiSearch(List<String> addrs, AddressLevel level) {
|
|
|
try {
|
|
|
- for (String addr : addrs) {
|
|
|
- AddressResult.ContentBean contentBean = verificaData(wdjaSearchByName(addr), level, addr);
|
|
|
- if (contentBean != null) {
|
|
|
- contentBean.setSearchAddress(addr);
|
|
|
- List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
- contentBeans.add(contentBean);
|
|
|
- AddressResult addressResult = new AddressResult();
|
|
|
- addressResult.setData(contentBeans);
|
|
|
- addressResult.setCode(AddressResultEnum.WDJA_SUCCESS);
|
|
|
- addressResult.setMessage("成功");
|
|
|
- return addressResult;
|
|
|
+ if(addrs != null && addrs.size() == 1){
|
|
|
+ AddressResult addressResult = yyszSearchByName(addrs.get(0));
|
|
|
+ addressResult.setCode(AddressResultEnum.WDJA_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ } else {
|
|
|
+ for (String addr : addrs) {
|
|
|
+ AddressResult.ContentBean contentBean = verificaData(wdjaSearchByName(addr), level, addr);
|
|
|
+ if (contentBean != null) {
|
|
|
+ contentBean.setSearchAddress(addr);
|
|
|
+ List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
+ contentBeans.add(contentBean);
|
|
|
+ AddressResult addressResult = new AddressResult();
|
|
|
+ addressResult.setData(contentBeans);
|
|
|
+ addressResult.setCode(AddressResultEnum.WDJA_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
@@ -202,17 +217,24 @@ public class AddressQueryEngine {
|
|
|
*/
|
|
|
private AddressResult szxMultiSearch(List<String> addrs, AddressLevel level) {
|
|
|
try {
|
|
|
- for (String addr : addrs) {
|
|
|
- AddressResult.ContentBean contentBean = verificaData(szxSearchByName(addr), level, addr);
|
|
|
- if (contentBean != null) {
|
|
|
- contentBean.setSearchAddress(addr);
|
|
|
- List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
- contentBeans.add(contentBean);
|
|
|
- AddressResult addressResult = new AddressResult();
|
|
|
- addressResult.setData(contentBeans);
|
|
|
- addressResult.setCode(AddressResultEnum.SZX_SUCCESS);
|
|
|
- addressResult.setMessage("成功");
|
|
|
- return addressResult;
|
|
|
+ if(addrs != null && addrs.size() == 1){
|
|
|
+ AddressResult addressResult = yyszSearchByName(addrs.get(0));
|
|
|
+ addressResult.setCode(AddressResultEnum.SZX_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ } else {
|
|
|
+ for (String addr : addrs) {
|
|
|
+ AddressResult.ContentBean contentBean = verificaData(szxSearchByName(addr), level, addr);
|
|
|
+ if (contentBean != null) {
|
|
|
+ contentBean.setSearchAddress(addr);
|
|
|
+ List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
+ contentBeans.add(contentBean);
|
|
|
+ AddressResult addressResult = new AddressResult();
|
|
|
+ addressResult.setData(contentBeans);
|
|
|
+ addressResult.setCode(AddressResultEnum.SZX_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
@@ -225,17 +247,24 @@ public class AddressQueryEngine {
|
|
|
*/
|
|
|
private AddressResult gdMultiSearch(List<String> addrs, AddressLevel level) {
|
|
|
try {
|
|
|
- for (String addr : addrs) {
|
|
|
- AddressResult.ContentBean contentBean = verificaData(gdSearchByName(addr), level, addr);
|
|
|
- if (contentBean != null) {
|
|
|
- contentBean.setSearchAddress(addr);
|
|
|
- List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
- contentBeans.add(contentBean);
|
|
|
- AddressResult addressResult = new AddressResult();
|
|
|
- addressResult.setData(contentBeans);
|
|
|
- addressResult.setCode(AddressResultEnum.GD_SUCCESS);
|
|
|
- addressResult.setMessage("成功");
|
|
|
- return addressResult;
|
|
|
+ if(addrs != null && addrs.size() == 1){
|
|
|
+ AddressResult addressResult = yyszSearchByName(addrs.get(0));
|
|
|
+ addressResult.setCode(AddressResultEnum.GD_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ } else {
|
|
|
+ for (String addr : addrs) {
|
|
|
+ AddressResult.ContentBean contentBean = verificaData(gdSearchByName(addr), level, addr);
|
|
|
+ if (contentBean != null) {
|
|
|
+ contentBean.setSearchAddress(addr);
|
|
|
+ List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
+ contentBeans.add(contentBean);
|
|
|
+ AddressResult addressResult = new AddressResult();
|
|
|
+ addressResult.setData(contentBeans);
|
|
|
+ addressResult.setCode(AddressResultEnum.GD_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
@@ -247,17 +276,24 @@ public class AddressQueryEngine {
|
|
|
*/
|
|
|
public AddressResult gdV3MultiSearch(List<String> addrs, AddressLevel level) {
|
|
|
try {
|
|
|
- for (String addr : addrs) {
|
|
|
- AddressResult.ContentBean contentBean = verificaData(gdV3SearchByName(addr), level, addr);
|
|
|
- if (contentBean != null) {
|
|
|
- contentBean.setSearchAddress(addr);
|
|
|
- List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
- contentBeans.add(contentBean);
|
|
|
- AddressResult addressResult = new AddressResult();
|
|
|
- addressResult.setData(contentBeans);
|
|
|
- addressResult.setCode(AddressResultEnum.GDV3_SUCCESS);
|
|
|
- addressResult.setMessage("成功");
|
|
|
- return addressResult;
|
|
|
+ if(addrs != null && addrs.size() == 1){
|
|
|
+ AddressResult addressResult = yyszSearchByName(addrs.get(0));
|
|
|
+ addressResult.setCode(AddressResultEnum.GDV3_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ } else {
|
|
|
+ for (String addr : addrs) {
|
|
|
+ AddressResult.ContentBean contentBean = verificaData(gdV3SearchByName(addr), level, addr);
|
|
|
+ if (contentBean != null) {
|
|
|
+ contentBean.setSearchAddress(addr);
|
|
|
+ List<com.skyversation.poiaddr.bean.AddressResult.ContentBean> contentBeans = new ArrayList<>();
|
|
|
+ contentBeans.add(contentBean);
|
|
|
+ AddressResult addressResult = new AddressResult();
|
|
|
+ addressResult.setData(contentBeans);
|
|
|
+ addressResult.setCode(AddressResultEnum.GDV3_SUCCESS);
|
|
|
+ addressResult.setMessage("成功");
|
|
|
+ return addressResult;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
@@ -271,13 +307,14 @@ public class AddressQueryEngine {
|
|
|
* yysz_address地名搜索
|
|
|
*/
|
|
|
public AddressResult yyszSearchByName(String address){
|
|
|
- ResponseEntity response = AddressNetTools.getInstance().requestGet(yyszAddressService+"/search/searchByName?address="+address, null, null, 10);
|
|
|
+ ResponseEntity response = AddressNetTools.getInstance().requestGet(yyszAddressService+"/search/searchByNameV3?address="+address, null, null, 10);
|
|
|
if (response != null) {
|
|
|
String body = response.getBody() + "";
|
|
|
if (!StringUtils.hasText(body))
|
|
|
return AddressTools.getInstance().faildQuery(AddressResultEnum.RESULT_NULL, "搜索无结果");
|
|
|
try {
|
|
|
AddressResult addressResult = yyszResultToResult(JSONObject.parseObject(body));
|
|
|
+ if(addressResult.getCode() == AddressResultEnum.DB_RECOMMEND_SUCCESS) return null;
|
|
|
return addressResult;
|
|
|
} catch (Exception e) {
|
|
|
System.err.println(e);
|