Browse Source

不知道

master
jianjun 3 years ago
parent
commit
a582053be6
  1. 145
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/api/yt/YantaiApi.java

145
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/api/yt/YantaiApi.java

@ -10,6 +10,7 @@ import com.epmet.commons.tools.utils.Result;
import com.fasterxml.jackson.core.JsonProcessingException;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import javax.crypto.BadPaddingException;
import java.security.InvalidKeyException;
@ -28,9 +29,19 @@ import java.util.Map;
@Slf4j
public class YantaiApi {
private static final String SSO_SERVER = "http://172.20.46.155:8080/sso/";
/**
* 相当于 appKey
*/
private static final String CLIENT_ID = "1000009";
/**
* 相当于 appSecret 用于解密 他们重定向回来的code 解密他们的token 获取用户嘻嘻
*/
private static final String CLIENT_SECRET = "a1f9879119bc4080ab5575f832b7d98b";
private static final String SSO_CLIENT_TOKEN = "PRm5Db96atozjPQsJOuwlA==";
/**
* 调用sso后台api接口的 秘钥
*/
private static final String SSO_API_TOKEN = "iJCDUgCBV/Zk5FkkaxLypA==";
private static final String SSO_BACKGROUND_SERVER_URL = "http://172.20.46.155:8082/";
/**
* desc:根据组织id获取下级组织
@ -46,15 +57,24 @@ public class YantaiApi {
//加密
String organizationIdEn = SM4UtilsForYanTai.dealEncryptData(organizationId);
//pwd = URLEncoder.encode(pwd, "UTF-8");
System.out.println("加密组织Id = " + organizationIdEn);
String url = "ouinfo/getChildOuInfoByGuid?organizationId=" + organizationIdEn;
String url = SSO_BACKGROUND_SERVER_URL + "person/ouinfo/getChildOuInfoByGuid";
Map<String, Object> headerMap = new HashMap<>();
Map<String, Object> paramMap = new HashMap<>();
log.info("getChildOuInfoByGuid request param: url:{},header:{}", url, headerMap);
Result<String> result = HttpClientManager.getInstance().sendGet(url, paramMap, headerMap);
paramMap.put("organizationId",organizationIdEn);
log.info("getChildOuInfoByGuid request param:{} url:{}",paramMap, url);
Result<String> result = HttpClientManager.getInstance().sendGet(url, paramMap, getApiHeaderMap());
log.info("getChildOuInfoByGuid request result:{}", result);
if (!result.success()){
return new ArrayList<>();
}
JSONObject jsonObject = JSONObject.parseObject(result.getData());
String secondCode = jsonObject.getString("code");
String secondMessage = jsonObject.getString("message");
if (!"200".equals(secondCode)) {
log.warn("getChildOuInfoByGuid 接口错误");
return new ArrayList<>();
}
//解密
String data = SM4UtilsForYanTai.dealDecryptData(jsonObject.getString("data"));
List<OrgData> orgData = JSON.parseArray(data, OrgData.class);
@ -80,15 +100,24 @@ public class YantaiApi {
//加密
String organizationIdEn = SM4UtilsForYanTai.dealEncryptData(organizationId);
//pwd = URLEncoder.encode(pwd, "UTF-8");
System.out.println("加密组织Id = " + organizationIdEn);
String url = SSO_SERVER + "ouinfo/getUserByOuGuid?organizationId=" + organizationIdEn;
String url = SSO_BACKGROUND_SERVER_URL + "person/serInfo/getUserByOuGuid";
Map<String, Object> headerMap = new HashMap<>();
Map<String, Object> paramMap = new HashMap<>();
log.info("getUserByOuGuid request param: url:{},header:{}", url, headerMap);
Result<String> result = HttpClientManager.getInstance().sendGet(url, paramMap, headerMap);
paramMap.put("organizationId",organizationIdEn);
log.info("getUserByOuGuid request param: url:{},param:{}", url, paramMap);
Result<String> result = HttpClientManager.getInstance().sendGet(url, paramMap, getApiHeaderMap());
log.info("getUserByOuGuid request result:{}", result);
if (!result.success()){
return new ArrayList<>();
}
JSONObject jsonObject = JSONObject.parseObject(result.getData());
String secondCode = jsonObject.getString("code");
String secondMessage = jsonObject.getString("message");
if (!"200".equals(secondCode)) {
log.warn("getUserByOuGuid 接口错误");
return new ArrayList<>();
}
//解密
String data = SM4UtilsForYanTai.dealDecryptData(jsonObject.getString("data"));
List<UserData> userData = JSON.parseArray(data, UserData.class);
@ -152,21 +181,15 @@ public class YantaiApi {
public static String getUserInfoMobile(String userId) {
try {
JSONObject token = new JSONObject();
token.put("token", "iJCDUgCBV/Zk5FkkaxLypA==");
// token.put("token","iJCDUgCBV/Zk5FkkaxLypA==");
token.put("expiration", System.currentTimeMillis());
String tokanStr = SM4UtilsForYanTai.dealEncryptData(token.toString());
String userIdEn = SM4UtilsForYanTai.dealEncryptData(userId);
System.out.println(tokanStr + "__" + userIdEn);
String serverUrl = "http://172.20.46.155:8082/person/userInfo/getUserByUserGuid";
String serverUrl = SSO_BACKGROUND_SERVER_URL + "person/userInfo/getUserByUserGuid";
//String serverUrl = "http://120.220.248.247:8081/person/userInfo/getUserByUserGuid";
Map<String, Object> param = new HashMap<>();
param.put("userGuid", userIdEn);
Map<String, Object> headerMap = new HashMap<>();
headerMap.put("Authorization", "Bearer " + tokanStr);
Result<String> result = HttpClientManager.getInstance().sendGet(serverUrl, param, headerMap);
Result<String> result = HttpClientManager.getInstance().sendGet(serverUrl, param, getApiHeaderMap());
System.out.println(JSON.toJSONString(result));
if (!result.success() || StringUtils.isBlank(result.getData())) {
log.info("getUserInfoMobile fail result:{}", JSON.toJSONString(result));
@ -190,36 +213,60 @@ public class YantaiApi {
return null;
}
@NotNull
private static Map<String, Object> getApiHeaderMap() {
Map<String, Object> headerMap = new HashMap<>();
try {
JSONObject token = new JSONObject();
token.put("token", SSO_API_TOKEN);
// token.put("token","iJCDUgCBV/Zk5FkkaxLypA==");
token.put("expiration", System.currentTimeMillis());
String tokanStr = SM4UtilsForYanTai.dealEncryptData(token.toString());
headerMap.put("Authorization", "Bearer " + tokanStr);
} catch (Exception e) {
log.error("getApiHeaderMap exception", e);
}
return headerMap;
}
public static void main(String[] args) throws BadPaddingException, InvalidKeyException, JsonProcessingException {
// JSONObject token = new JSONObject();
// token.put("token", SSO_CLIENT_TOKEN);
// token.put("expiration", System.currentTimeMillis());
//
// String tokanStr = SM4UtilsForYanTai.dealEncryptData(token.toString());
// String testUserId = "0ffd76e2-27b5-4b33-be9a-186f9f878bf1";
// String userId = SM4UtilsForYanTai.dealEncryptData(testUserId);
// System.out.println(tokanStr + "__" + userId);
// String serverUrl = "http://172.20.46.155:8082/person/userInfo/getUserByUserGuid";
// //String serverUrl = "http://120.220.248.247:8081/person/userInfo/getUserByUserGuid";
// Map<String, Object> param = new HashMap<>();
// param.put("userGuid", userId);
// Map<String, Object> headerMap = new HashMap<>();
// headerMap.put("Authorization", "Bearer " + tokanStr);
// Result<String> stringResult = HttpClientManager.getInstance().sendGet(serverUrl, param, headerMap);
// System.out.println(JSON.toJSONString(stringResult));
//
// String data = stringResult.getData();
// JSONObject jsonObject = JSON.parseObject(data);
// String secondCode = jsonObject.getString("code");
// String secondMessage = jsonObject.getString("message");
// System.out.println(secondCode);
// System.out.println(secondMessage);
// String data1 = SM4UtilsForYanTai.dealDecryptData(jsonObject.getString("data"));
// System.out.println("======" + data1);
String s = SM4UtilsForYanTai.dealDecryptData("R5TbfdZPJ7QA9uo02EGT/uDWyUWapZTmTQZwwLYnX5ZChQhV8bYa17yJ+d+KC5vUm9P/O9J25pkpKSzUSaXEmJz3oniLQdj3OyhmZFghKAKVbK/By+3oyVQG3ApRUMwir64RkvnjpP7MjgUaXXongNRheMrsarV2fjr8ZYDzIH0bhsTDgo0/qNSSmFc+0sWmcvraDyeeI5nRNyjaBzybuBQzOCkqf3LtQAwnqWj8lCVPi5dH7KiTzM0pwZWzhfr21xzaw80fQkUMznBfkiJJM8nI2vqgZfa6TgtTH3h7JYLq8LDcu5UMJpMuVjbWwW41N41I+c9magDCUOJ9LkbmrUTvg2Y0asccP7U3jt9NNgwmRT5L/vxNmuapDaADjFR83P3ospRaclr3vo9OWMORSw==");
System.out.println("sssssss:"+s);
//testGetUserByUserId();
//code只能用一次
//getLoginToken("0d554bccfbac4be3846d643252daf92b");
String organizationId = "44e05de9-34fa-48f6-b89f-02838d792cf9";
List<OrgData> childOuInfoByGuid = getChildOuInfoByGuid(organizationId);
System.out.println("childOuInfoByGuid:"+JSON.toJSONString(childOuInfoByGuid));
List<UserData> userByOuGuid = getUserByOuGuid(organizationId);
System.out.println("getUserByOuGuid:"+JSON.toJSONString(userByOuGuid));
getLoginToken("0d554bccfbac4be3846d643252daf92b");
Map<String, Object> apiHeaderMap = getApiHeaderMap();
System.out.println(apiHeaderMap);
//testGetUserByUserId();
}
private static void testGetUserByUserId() throws JsonProcessingException, InvalidKeyException, BadPaddingException {
String testUserId = "0ffd76e2-27b5-4b33-be9a-186f9f878bf1";
String serverUrl = SSO_BACKGROUND_SERVER_URL +"person/userInfo/getUserByUserGuid";
//String serverUrl = "http://120.220.248.247:8081/person/userInfo/getUserByUserGuid";
Map<String, Object> param = new HashMap<>();
param.put("userGuid", SM4UtilsForYanTai.dealEncryptData(testUserId));
Result<String> stringResult = HttpClientManager.getInstance().sendGet(serverUrl, param, getApiHeaderMap());
System.out.println(JSON.toJSONString(stringResult));
String data = stringResult.getData();
JSONObject jsonObject = JSON.parseObject(data);
String secondCode = jsonObject.getString("code");
String secondMessage = jsonObject.getString("message");
System.out.println(secondCode);
System.out.println(secondMessage);
String data1 = SM4UtilsForYanTai.dealDecryptData(jsonObject.getString("data"));
System.out.println("======" + data1);
String s = SM4UtilsForYanTai.dealDecryptData("EsOeQX+A8+GG26lzLnuKeuylkBDRFcTbF+gE/jURIzddlVI8RToQQhzK4EHy0WfpS/L4dSAJC93UyVLJhj+r/pup2RFq/GjpH7Md+1Mjg3dM+eyDuGql71bUrldQwJXYnHrQm3Mn7tk5m2eLhEVNkFvdELjuy3Kg8YihZXf2Sox+kxtmK4DSIn/gxhVCoUneWeL0cA6JGHI6jNuq97rzgcNK3Mwen8MxOoWP3n3r+kIpwZCwIlL70MrBjIZ6FHIhcxpqL82gpLSe1K0TFgeWw+9PMo1yv4cGZn7rU86TDlQFoDP86dVa1jrBoyUmW/vvLXrMKwfBaiv9/EUzcCLZWYxEwH93n0X/NYCYem3pfv4uXk5A7/D+Npgj9OKCEIz0ROn0UW5NiXI5Vibz0dywaq4sfsR/LiwjV81QOGY9tsHzN2+MnyTVpQg1l7looNnq1j+wwLneS0aDmbTqBLEn/baph/Hnr2L/9HYpWfXkhz93XRNAdsbxhXdG5ZIiJSwNasHinPR3e2Hmn/02GOsBPFUifbyNUtslt4RS/gwboonBoXz8wrmXi+PfzUXwN8f2CKdBNEHl72USp70NtBSJUPAkHdXZEQPgGRped63Z9GA=");
System.out.println("sssssss:" + s);
}
}

Loading…
Cancel
Save