package doumeemes.core.utils.edpg;
|
|
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONObject;
|
import com.iflytek.antelope.other.client.dto.resp.UserDTO;
|
import doumeemes.core.utils.HttpsUtil;
|
import doumeemes.core.utils.edpg.bean.AccessTokenModel;
|
import doumeemes.core.utils.edpg.bean.AppDepartListModel;
|
import doumeemes.core.utils.edpg.bean.AppUserInfoModel;
|
import lombok.Data;
|
import lombok.extern.slf4j.Slf4j;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
|
@Slf4j
|
@Data
|
public class EdgpServerUtil {
|
|
public static void main(String[] args) {
|
}
|
private String appKey;
|
private String appSecret;
|
private String aesToken;
|
private String url;
|
public static final String GET_ACCESSTOKEN_URL = "/apps/web/accessToken";
|
public static final String GET_USERINFO_URL = "/apps/web/user/infoById";
|
public static final String GET_USERINFO_TOKEN_URL = "/apps/web//user/infoByToken";
|
public static final String GET_ALL_DEPARTMENT_TREE_URL = "/apps/web/department/tree";
|
public EdgpServerUtil(String url,String appKey,String appSecret){
|
this.appKey = appKey;
|
this.url=url;
|
this.appSecret=appSecret;
|
}
|
|
public String getAccessToken() {
|
try {
|
String acturl = url+GET_ACCESSTOKEN_URL+"?accessKey="+appKey+"&secret="+appSecret;
|
String result = HttpsUtil.sendGetByHttps(acturl,null);
|
log.error("EDGP:===============获取accessToken:"+acturl+"\n返回:"+result);
|
JSONObject jsonObject = JSONObject.parseObject(result);
|
if(jsonObject !=null && jsonObject.getBoolean("success")){
|
AccessTokenModel model = JSONObject.toJavaObject(jsonObject.getJSONObject("data"), AccessTokenModel.class);
|
if(model != null){
|
return model.getAccessToken();
|
}
|
}
|
}catch (Exception e){
|
log.error("EDGP:===============获取accessToken失败!"+e.getMessage());
|
}
|
return null;
|
}
|
public AppUserInfoModel getUserInfoById(String acccessToken, String userid ) {
|
try {
|
String acturl =url+GET_ALL_DEPARTMENT_TREE_URL+"?accessToken="+acccessToken+"&userId="+userid;
|
String result = HttpsUtil.sendGetByHttps(acturl,null);
|
log.error("EDGP:===============获取用户编码获取用户信息:"+acturl+"\n返回:"+result);
|
JSONObject jsonObject = JSONObject.parseObject(result);
|
if(jsonObject !=null && jsonObject.getBoolean("success")){
|
AppUserInfoModel model = JSONObject.toJavaObject(jsonObject.getJSONObject("data"), AppUserInfoModel.class);
|
if(model != null){
|
return model;
|
}
|
}
|
}catch (Exception e){
|
log.error("EDGP:===============获取用户编码获取用户信息失败!"+e.getMessage());
|
}
|
return null;
|
}
|
public List<AppDepartListModel> getAllDepartList(String acccessToken ,String companyId) {
|
List<AppDepartListModel> list = null;
|
try {
|
String acturl =url+GET_USERINFO_URL+"?accessToken="+acccessToken+"&companyId="+companyId;
|
String result = HttpsUtil.sendGetByHttps(acturl,null);
|
log.error("EDGP:===============获取企业部门树形信息失败:"+acturl+"\n返回:"+result);
|
JSONObject jsonObject = JSONObject.parseObject(result);
|
if(jsonObject !=null && jsonObject.getBoolean("success")){
|
JSONArray model = jsonObject.getJSONArray("data") ;
|
if(model != null && model.size()>0){
|
list = new ArrayList<>();
|
for (int i = 0; i < model.size(); i++) {
|
list.add(JSONObject.toJavaObject(model.getJSONObject(i),AppDepartListModel.class));
|
}
|
}
|
}
|
}catch (Exception e){
|
log.error("EDGP:===============获取企业部门树形信息失败!"+e.getMessage());
|
}
|
return list;
|
}
|
public AppUserInfoModel getUserInfoByToken(String token ) {
|
try {
|
String acturl = url+GET_USERINFO_TOKEN_URL+"?token="+token;
|
String result = HttpsUtil.sendGetByHttps(acturl,null);
|
log.error("EDGP:===============根据授权登录码获取用户信息:"+acturl+"\n返回:"+result);
|
JSONObject jsonObject = JSONObject.parseObject(result);
|
if(jsonObject !=null && jsonObject.getBoolean("success")){
|
AppUserInfoModel model = JSONObject.toJavaObject(jsonObject.getJSONObject("data"), AppUserInfoModel.class);
|
if(model != null){
|
return model;
|
}
|
}
|
}catch (Exception e){
|
log.error("EDGP:===============根据授权登录码获取用户信息失败!"+e.getMessage());
|
}
|
return null;
|
}
|
}
|