|
|
@@ -0,0 +1,156 @@
|
|
|
+package com.tsf.demo.provider.service.impl;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+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.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.http.*;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.util.LinkedMultiValueMap;
|
|
|
+import org.springframework.util.MultiValueMap;
|
|
|
+import org.springframework.web.client.RestTemplate;
|
|
|
+
|
|
|
+import java.util.LinkedHashMap;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+@Service
|
|
|
+public class MpBankNetworkServiceImpl implements MpBankNetworkService {
|
|
|
+ @Value("${card.authen.tokenUrl}")
|
|
|
+ private String tokenUrl;
|
|
|
+ @Value("${card.authen.username}")
|
|
|
+ private String username;
|
|
|
+ @Value("${card.authen.password}")
|
|
|
+ private String password;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private MpBankNetworkDao mpBankNetworkDao;
|
|
|
+ @Override
|
|
|
+ public List<MpBankNetwork> getAll() {
|
|
|
+ return mpBankNetworkDao.findAll();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<MpBankNetworkVO> getList(MpBankNetworkVO mpBankNetworkVO) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<MpBankNetworkVO> saveAll(List<MpBankNetwork> list) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean deleteAll() {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void sychData() {
|
|
|
+ //获取token
|
|
|
+ String httpUrl = tokenUrl;
|
|
|
+ RestTemplate client = new RestTemplate();
|
|
|
+ HttpHeaders headers = new HttpHeaders();
|
|
|
+ headers.setBasicAuth(username, password);
|
|
|
+ headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
|
|
|
+ HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity(headers);
|
|
|
+ ResponseEntity<Object> exchange = null;
|
|
|
+ exchange = client.exchange(httpUrl, HttpMethod.POST, requestEntity, Object.class);
|
|
|
+ System.out.println(JSON.toJSONString(exchange.getBody()));
|
|
|
+ LinkedHashMap linkedHashMap = (LinkedHashMap) exchange.getBody();
|
|
|
+ String accessToken = (String) ((LinkedHashMap) linkedHashMap.get("map")).get("Access-Token");
|
|
|
+
|
|
|
+ HttpHeaders headers1 = new HttpHeaders();
|
|
|
+ headers1.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
|
|
|
+ headers1.set("Access-Token", accessToken);
|
|
|
+ MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
|
|
|
+ map.add("transCode", "P210002");
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ map.add("dataString", jsonObject.toJSONString());
|
|
|
+ String url = "http://61.48.80.80:8088/api/ywzt-proxy-service/proxy/KG1008";
|
|
|
+ HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<MultiValueMap<String, String>>(map, headers1);
|
|
|
+ ResponseEntity<String> result = client.postForEntity(url, request, String.class);
|
|
|
+ JSONObject resultJsonObject = (JSONObject) JSONObject.parse(result.getBody());
|
|
|
+ JSONArray resultJSONArray = resultJsonObject.getJSONObject("map").getJSONObject("data").getJSONArray("data");
|
|
|
+ mpBankNetworkDao.deleteAll();
|
|
|
+ for (int i = 0; i < resultJSONArray.size(); i++) {
|
|
|
+ JSONObject bankJSONObject = (JSONObject) resultJSONArray.get(i);
|
|
|
+ System.out.println(bankJSONObject.get("bankId"));
|
|
|
+ System.out.println(bankJSONObject.get("bankNo"));
|
|
|
+ System.out.println(bankJSONObject.get("bankName"));
|
|
|
+ for (int j = 0; j < bankJSONObject.getJSONArray("branchs").size(); j++) {
|
|
|
+ JSONObject netWorkJSONObject = (JSONObject) bankJSONObject.getJSONArray("branchs").get(j);
|
|
|
+ MpBankNetwork mpBankNetwork = new MpBankNetwork();
|
|
|
+ mpBankNetwork.setBankNo((String)bankJSONObject.get("bankNo"));
|
|
|
+ mpBankNetwork.setBankName((String)bankJSONObject.get("bankName")==null?"":(String)bankJSONObject.get("bankName"));
|
|
|
+ mpBankNetwork.setBankBrancName(netWorkJSONObject.getString("bankBranchCode"));
|
|
|
+ mpBankNetwork.setAdress(netWorkJSONObject.getString("address"));
|
|
|
+ mpBankNetwork.setBankBranchCode(netWorkJSONObject.getString("bankBranchCode"));
|
|
|
+ mpBankNetwork.setIsMail(netWorkJSONObject.getInteger("isMail"));
|
|
|
+ mpBankNetwork.setAreaNo(netWorkJSONObject.getString("areaNo"));
|
|
|
+ mpBankNetwork.setBankType(netWorkJSONObject.getInteger("bankType"));
|
|
|
+ mpBankNetwork.setLatitude(netWorkJSONObject.getString("latitude"));
|
|
|
+ mpBankNetwork.setLongitude(netWorkJSONObject.getString("longitude"));
|
|
|
+ mpBankNetwork.setLinkName(netWorkJSONObject.getString("linkName"));
|
|
|
+ mpBankNetworkDao.save(mpBankNetwork);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public static void main(String[] args) {
|
|
|
+ //获取token
|
|
|
+ String httpUrl = "http://61.48.80.80:8088/zuul/api/auth/client/login";
|
|
|
+ RestTemplate client = new RestTemplate();
|
|
|
+ HttpHeaders headers = new HttpHeaders();
|
|
|
+ headers.setBasicAuth("test_sy", "test_sy");
|
|
|
+ headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
|
|
|
+ HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity(headers);
|
|
|
+ ResponseEntity<Object> exchange = null;
|
|
|
+ exchange = client.exchange(httpUrl, HttpMethod.POST, requestEntity, Object.class);
|
|
|
+ System.out.println(JSON.toJSONString(exchange.getBody()));
|
|
|
+ LinkedHashMap linkedHashMap = (LinkedHashMap) exchange.getBody();
|
|
|
+ String accessToken = (String) ((LinkedHashMap) linkedHashMap.get("map")).get("Access-Token");
|
|
|
+
|
|
|
+ HttpHeaders headers1 = new HttpHeaders();
|
|
|
+ headers1.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
|
|
|
+ headers1.set("Access-Token", accessToken);
|
|
|
+ MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
|
|
|
+ map.add("transCode", "P210002");
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ map.add("dataString", jsonObject.toJSONString());
|
|
|
+ String url = "http://61.48.80.80:8088/api/ywzt-proxy-service/proxy/KG1008";
|
|
|
+ HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<MultiValueMap<String, String>>(map, headers1);
|
|
|
+ ResponseEntity<String> result = client.postForEntity(url, request, String.class);
|
|
|
+ JSONObject resultJsonObject = (JSONObject) JSONObject.parse(result.getBody());
|
|
|
+ JSONArray resultJSONArray = resultJsonObject.getJSONObject("map").getJSONObject("data").getJSONArray("data");
|
|
|
+ for (int i = 0; i < resultJSONArray.size(); i++) {
|
|
|
+ JSONObject bankJSONObject = (JSONObject) resultJSONArray.get(i);
|
|
|
+// "bankId" -> "181"
|
|
|
+// "bankNo" -> "103"
|
|
|
+// "bankName" -> "农业银行
|
|
|
+ System.out.println(bankJSONObject.get("bankId"));
|
|
|
+ System.out.println(bankJSONObject.get("bankNo"));
|
|
|
+ System.out.println(bankJSONObject.get("bankName"));
|
|
|
+ for (int j = 0; j < bankJSONObject.getJSONArray("branchs").size(); j++) {
|
|
|
+ JSONObject netWorkJSONObject = (JSONObject) bankJSONObject.getJSONArray("branchs").get(j);
|
|
|
+ System.out.println(netWorkJSONObject.get("bankBrancName"));
|
|
|
+// "bankBranchCode" -> "10301"
|
|
|
+// "linkPhone" -> "15182865348"
|
|
|
+// "address" -> "北京市海淀区高梁桥斜街"
|
|
|
+// "isMail" -> "1"
|
|
|
+// "areaNo" -> "110102"
|
|
|
+// "bankBrancName" -> "小阿萧用来测试的银行66"
|
|
|
+// "bankType" -> "1"
|
|
|
+// "latitude" -> "600.00"
|
|
|
+// "linkName" -> "陆从凝"
|
|
|
+// "longitude" -> "500.00"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|