浏览代码

网点相关

liuchang 4 年之前
父节点
当前提交
ce69790f76

+ 53 - 0
.gitignore

@@ -0,0 +1,53 @@
+# Eclipse project files
+.project
+.classpath
+.settings
+
+# IntelliJ IDEA project files and directories
+*.iml
+*.ipr
+*.iws
+.idea/
+
+# Geany project file
+.geany
+
+# KDevelop project file and directory
+.kdev4/
+*.kdev4
+
+# Build targets
+/target
+*/target
+**/target
+/out/
+*/out/
+*.class
+
+# Report directories
+/reports
+*/reports
+
+# Mac-specific directory that no other operating system needs.
+.DS_Store
+
+# JVM crash logs
+hs_err_pid*.log
+
+dependency-reduced-pom.xml
+
+*/.unison.*
+
+# exclude mainframer files
+mainframer
+.mainframer
+
+# exclude docker-sync stuff
+.docker-sync
+*/.docker-sync
+
+# exclude vscode files
+.vscode/
+*.factorypath
+
+*.pid

+ 43 - 0
provider-demo/src/main/java/com/tsf/demo/provider/bean/po/MpBankNetwork.java

@@ -0,0 +1,43 @@
+package com.tsf.demo.provider.bean.po;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.persistence.*;
+
+@Entity
+@Table(name = "mp_bank_network")
+@Getter
+@Setter
+public class MpBankNetwork {
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "id")
+    private Long id;
+    @Column(name = "bankName")
+    private String bankName;
+    @Column(name = "bankNo")
+    private String bankNo;
+    @Column(name = "bankBranchCode")
+    private String bankBranchCode;
+    @Column(name = "bankBrancName")
+    private String bankBrancName;
+    @Column(name = "areaNo")
+    private String areaNo;
+    @Column(name = "linkName")
+    private String linkName;
+    @Column(name = "linkPhone")
+    private String linkPhone;
+    @Column(name = "isMail")
+    private Integer isMail;
+    @Column(name = "bankType")
+    private Integer bankType;
+    @Column(name = "longitude")
+    private String longitude;
+    @Column(name = "latitude")
+    private String latitude;
+    @Column(name = "adress")
+    private String adress;
+
+
+}

+ 24 - 0
provider-demo/src/main/java/com/tsf/demo/provider/bean/po/MpBankNetworkVO.java

@@ -0,0 +1,24 @@
+package com.tsf.demo.provider.bean.po;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.persistence.Column;
+
+@Getter
+@Setter
+public class MpBankNetworkVO {
+    private String bankName;
+    private String bankNo;
+    private String bankBranchCode;
+    private String bankBrancName;
+    private String areaNo;
+    private String linkName;
+    private String linkPhone;
+    private Integer isMail;
+    private Integer bankType;
+    private String longitude;
+    private String latitude;
+    private String adress;
+    private String distance;
+}

+ 28 - 0
provider-demo/src/main/java/com/tsf/demo/provider/controller/MpBankNetworkController.java

@@ -0,0 +1,28 @@
+package com.tsf.demo.provider.controller;
+
+import com.tsf.demo.provider.common.R;
+import com.tsf.demo.provider.service.MpBankNetworkService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@CrossOrigin
+@RequestMapping("/mpBankNetwork")
+@Api(value = "银行网点", tags = "银行网点")
+public class MpBankNetworkController {
+    @Autowired
+    private MpBankNetworkService mpBankNetworkService;
+    @GetMapping("/addAll")
+    @ApiOperation(value = "查询用户申领以及代申领的实体卡", notes = "查询用户申领以及代申领的实体卡")
+    public R addAll(){
+        try {
+            mpBankNetworkService.sychData();
+            return R.success("同步成功");
+        } catch (Exception e) {
+            e.printStackTrace();
+            return R.fail("同步失败");
+        }
+    }
+}

+ 7 - 0
provider-demo/src/main/java/com/tsf/demo/provider/dao/MpBankNetworkDao.java

@@ -0,0 +1,7 @@
+package com.tsf.demo.provider.dao;
+
+import com.tsf.demo.provider.bean.po.MpBankNetwork;
+import org.springframework.data.jpa.repository.JpaRepository;
+
+public interface MpBankNetworkDao extends JpaRepository<MpBankNetwork,Long> {
+}

+ 18 - 0
provider-demo/src/main/java/com/tsf/demo/provider/service/MpBankNetworkService.java

@@ -0,0 +1,18 @@
+package com.tsf.demo.provider.service;
+
+import com.tsf.demo.provider.bean.po.MpBankNetwork;
+import com.tsf.demo.provider.bean.po.MpBankNetworkVO;
+
+import java.util.List;
+
+public interface MpBankNetworkService {
+ public List<MpBankNetwork> getAll();
+
+ public List<MpBankNetworkVO> getList(MpBankNetworkVO mpBankNetworkVO);
+
+ public List<MpBankNetworkVO> saveAll(List<MpBankNetwork> list);
+
+ public boolean deleteAll();
+
+ public void sychData();
+}

+ 156 - 0
provider-demo/src/main/java/com/tsf/demo/provider/service/impl/MpBankNetworkServiceImpl.java

@@ -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"
+            }
+        }
+    }
+}

+ 41 - 0
provider-demo/src/main/java/com/tsf/demo/provider/task/BankTask.java

@@ -0,0 +1,41 @@
+package com.tsf.demo.provider.task;
+
+import com.alibaba.fastjson.JSON;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.http.*;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.util.MultiValueMap;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.LinkedHashMap;
+
+@Slf4j
+@Component
+@Configuration
+public class BankTask {
+    @Value("${card.authen.tokenUrl}")
+    private String tokenUrl;
+    @Value("${card.authen.username}")
+    private String username;
+    @Value("${card.authen.password}")
+    private String password;
+
+    @Scheduled(cron = "0 0 1 * * ?")
+    public void execute() {
+        //获取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");
+    }
+}