|
|
@@ -5,10 +5,13 @@ import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.tsf.demo.provider.bean.po.MpBankNetwork;
|
|
|
import com.tsf.demo.provider.bean.po.MpBankNetworkVO;
|
|
|
+import com.tsf.demo.provider.common.util.CoordCommonUtil;
|
|
|
+import com.tsf.demo.provider.common.util.PageUtil;
|
|
|
import com.tsf.demo.provider.dao.MpBankNetworkDao;
|
|
|
import com.tsf.demo.provider.service.MpBankNetworkService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
+import org.springframework.data.domain.Example;
|
|
|
import org.springframework.http.*;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
@@ -16,8 +19,7 @@ import org.springframework.util.LinkedMultiValueMap;
|
|
|
import org.springframework.util.MultiValueMap;
|
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
-import java.util.LinkedHashMap;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
|
|
|
@Service
|
|
|
public class MpBankNetworkServiceImpl implements MpBankNetworkService {
|
|
|
@@ -35,6 +37,8 @@ public class MpBankNetworkServiceImpl implements MpBankNetworkService {
|
|
|
return mpBankNetworkDao.findAll();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public List<MpBankNetworkVO> getList(MpBankNetworkVO mpBankNetworkVO) {
|
|
|
return null;
|
|
|
@@ -104,6 +108,75 @@ public class MpBankNetworkServiceImpl implements MpBankNetworkService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<MpBankNetwork> returnUserNearBank(double star1, double star2,int page ,int size) {
|
|
|
+
|
|
|
+ Map<Integer , MpBankNetwork > map = new HashMap<Integer , MpBankNetwork >();
|
|
|
+ TreeSet<Integer> ts = new TreeSet<Integer>();
|
|
|
+ List<MpBankNetwork> mpBankNetworkList = new ArrayList<MpBankNetwork>();
|
|
|
+
|
|
|
+ //所有银行(未排序)
|
|
|
+ List<MpBankNetwork> allMpBankNetwork = this.getAll();
|
|
|
+
|
|
|
+ //位置信息不为空
|
|
|
+ if(star1 != 0.0 && star2 != 0.0){
|
|
|
+ mpBankNetworkList = queayToNear(star1, star2, allMpBankNetwork);
|
|
|
+ }else{
|
|
|
+ mpBankNetworkList = allMpBankNetwork;
|
|
|
+ }
|
|
|
+ //分页
|
|
|
+ List<MpBankNetwork> pageList = PageUtil.doWork(mpBankNetworkList, page, size);
|
|
|
+ return pageList;
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<MpBankNetwork> queayToNear(double star1, double star2,List<MpBankNetwork> mpBankNetworkList){
|
|
|
+ List<MpBankNetwork> bankNetworkList =new ArrayList<>();
|
|
|
+ Map<Integer , MpBankNetwork > map = new HashMap<Integer , MpBankNetwork >();
|
|
|
+ TreeSet<Integer> ts = new TreeSet<Integer>();
|
|
|
+ for (MpBankNetwork mpBankNetwork : mpBankNetworkList) {
|
|
|
+ if (mpBankNetwork.getLongitude()==null && mpBankNetwork.getLatitude() == null){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ Integer distance = CoordCommonUtil.getDistance(Double.valueOf(mpBankNetwork.getLongitude()), Double.valueOf(mpBankNetwork.getLatitude()), star1, star2);
|
|
|
+ mpBankNetwork.setDistance(String.valueOf(distance));
|
|
|
+ map.put(distance,mpBankNetwork);
|
|
|
+ ts.add(distance);
|
|
|
+ }
|
|
|
+
|
|
|
+ //从近至远排序添加对象
|
|
|
+ for (Integer t : ts) {
|
|
|
+ bankNetworkList.add(map.get(t));
|
|
|
+ }
|
|
|
+ return bankNetworkList;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<MpBankNetwork> returnUserNearBankByBankNo(String bankNo, double star1, double star2, Integer bankType, int page, int size) {
|
|
|
+ Map<Integer , MpBankNetwork > map = new HashMap<Integer , MpBankNetwork >();
|
|
|
+ TreeSet<Integer> ts = new TreeSet<Integer>();
|
|
|
+ List<MpBankNetwork> bankNetworkList = new ArrayList<MpBankNetwork>();
|
|
|
+
|
|
|
+ //未排序信息
|
|
|
+ List<MpBankNetwork> mpBankNetworkList =new ArrayList<>();
|
|
|
+ if(bankType==-1){
|
|
|
+ mpBankNetworkList = mpBankNetworkDao.findByBankNo(bankNo);
|
|
|
+ }else{
|
|
|
+ mpBankNetworkList = mpBankNetworkDao.findByBankNoAndBankType(bankNo,bankType);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //位置信息不为空
|
|
|
+ if(star1 != 0 && star2 != 0){
|
|
|
+ bankNetworkList = queayToNear(star1, star2, mpBankNetworkList);
|
|
|
+ }else{
|
|
|
+ bankNetworkList = mpBankNetworkList;
|
|
|
+ }
|
|
|
+ //分页
|
|
|
+ List<MpBankNetwork> pageList = PageUtil.doWork(bankNetworkList, page, size);
|
|
|
+ return pageList;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
public static void main(String[] args) {
|
|
|
//获取token
|
|
|
String httpUrl = "http://61.48.80.80:8088/zuul/api/auth/client/login";
|