diff --git a/magic-boot/src/main/java/org/ssssssss/magicboot/constant/CertificateConstant.java b/magic-boot/src/main/java/org/ssssssss/magicboot/constant/CertificateConstant.java index 89227f4..5f17199 100644 --- a/magic-boot/src/main/java/org/ssssssss/magicboot/constant/CertificateConstant.java +++ b/magic-boot/src/main/java/org/ssssssss/magicboot/constant/CertificateConstant.java @@ -8,9 +8,15 @@ package org.ssssssss.magicboot.constant; * @Author weiloong_zhang */ public class CertificateConstant { - public static final String APP_ID = "FSAID_131f56a";//appId - public static final String PERMANENT_CODE = "1A49B50861909007935CAB5E33E52BAA";//永久授权码 - public static final String APP_SECRET = "5bda722932a54e80a05d2cc9b1722fed";//appSecret - public static final String CORP_ID = "FSCID_11F505C980B5FE43D5D7230567802E09";//企业Id - public static final String CURRENT_OPEN_USERID = "FSUID_50D3C26809B163F663DC8557268A8D44";//当前登录用户id +// public static final String APP_ID = "FSAID_131f56a";//appId +// public static final String PERMANENT_CODE = "1A49B50861909007935CAB5E33E52BAA";//永久授权码 +// public static final String APP_SECRET = "5bda722932a54e80a05d2cc9b1722fed";//appSecret +// public static final String CORP_ID = "FSCID_11F505C980B5FE43D5D7230567802E09";//企业Id +// public static final String CURRENT_OPEN_USERID = "FSUID_50D3C26809B163F663DC8557268A8D44";//当前登录用户id + + public static final String APP_ID = "FSAID_131fa51";//appId + public static final String PERMANENT_CODE = "EF03533F6929B59934A7E1155221420B";//永久授权码 + public static final String APP_SECRET = "1ce9804037ff4baf9d308bd32a4ec6ef";//appSecret + public static final String CORP_ID = "FSCID_EC935623350FB07DBF52F84F49874A81";//企业Id + public static final String CURRENT_OPEN_USERID = "FSUID_7B52D1CF1B01E5A2A143E250A5B60595";//当前登录用户id } diff --git a/magic-boot/src/main/java/org/ssssssss/magicboot/controller/KDTokenController.java b/magic-boot/src/main/java/org/ssssssss/magicboot/controller/KDTokenController.java index 97b9d3e..9efedae 100644 --- a/magic-boot/src/main/java/org/ssssssss/magicboot/controller/KDTokenController.java +++ b/magic-boot/src/main/java/org/ssssssss/magicboot/controller/KDTokenController.java @@ -138,4 +138,106 @@ public class KDTokenController { return accessToken; } + + + /** + * 金蝶测试系统App授权码获取 + * @return java.lang.String + * @Author weiloong_zhang + */ + public String getKDAppTokenTest() { + log.info("开始获取金蝶的AppToken"); + + //开始封装 + //接口地址 + String appTokenUrl = "http://192.168.31.158:8022/ierp/api/getAppToken.do"; + //请求参数 + LinkedHashMap appTokenParams = new LinkedHashMap<>(); + appTokenParams.put("appId", "apitest"); + appTokenParams.put("appSecret", "ZHYkdERPapi@2025"); + appTokenParams.put("tenantid", "zyierp"); + appTokenParams.put("accountId", "2096108315279888384"); + + //开始发起请求 + String appTokenRes = ""; + + try { + appTokenRes = restTemplate.postForObject(appTokenUrl, appTokenParams, String.class); + } catch (RestClientException e) { + e.printStackTrace(); + } + + //转换为JSONObject + JSONObject appTokenJSON = JSONObject.parseObject(appTokenRes); + + if (!"success".equals(appTokenJSON.getString("state")) || appTokenJSON.getJSONObject("data") == null) { + log.error("获取金蝶的AppToken失败,{}", appTokenRes); + return ""; + } + + //获取apptoken成功 + String appToken = appTokenJSON.getJSONObject("data").getString("app_token"); + + log.info("获取金蝶的AppToken成功,{}", appToken); + + return appToken; + } + + /** + * 金蝶a测试access_token获取 + * + * @return java.lang.String + * @Author weiloong_zhang + */ + public String getKDAccessTokenTest() { + log.info("开始获取金蝶accessToken"); + + //用来接收token的字符串 + String accessToken = ""; + + //判断咖啡因中是否存在accessToken + if (CaffeineCacheUtil.get("kd_access_token") != null && !"".equals(CaffeineCacheUtil.get("kd_access_token"))) { + log.info("获取到缓存中的accessToken,{}", accessToken); + accessToken = CaffeineCacheUtil.get("kd_access_token").toString(); + return accessToken; + } + + //不存在,将执行获取accessToken的逻辑 + //开始封装参数 + //URL + String accessTokenUrl = "http://192.168.31.158:8022/ierp/api/login.do"; + + //请求参数 + LinkedHashMap accessTokenParams = new LinkedHashMap<>(); + accessTokenParams.put("user", "19819780536"); + accessTokenParams.put("usertype", "Mobile"); + accessTokenParams.put("apptoken", getKDAppTokenTest()); + accessTokenParams.put("tenantid", "zyierp"); + accessTokenParams.put("accountId", "2096108315279888384"); + accessTokenParams.put("language", "zh_CN"); + + //开始向金蝶发起请求 + String accessTokenRes = ""; + + try { + accessTokenRes = restTemplate.postForObject(accessTokenUrl, accessTokenParams, String.class); + } catch (RestClientException e) { + e.printStackTrace(); + } + + JSONObject accessTokenJSON = JSONObject.parseObject(accessTokenRes); + + if (!"success".equals(accessTokenJSON.getString("state")) || accessTokenJSON.getJSONObject("data") == null) { + log.error("获取金蝶的accessToken失败,{}", accessTokenRes); + return ""; + } + + log.info("获取金蝶的accessToken成功,{}", accessTokenJSON.getJSONObject("data").getString("access_token")); + accessToken = accessTokenJSON.getJSONObject("data").getString("access_token"); + + //存放到咖啡因之中 + CaffeineCacheUtil.put("kd_access_token", accessToken); + + return accessToken; + } }