IntelligentRecognition/ah-jjsp-service/.svn/pristine/91/9110f79fcd5d529b57f59452199...

277 lines
10 KiB
Plaintext

package com.sercurityControl.proteam.util;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.google.common.collect.Maps;
import com.securityControl.common.core.utils.aes.StringHelper;
import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 优尔数据接口调试
*/
@Slf4j
public class InterfaceUtil {
private static final String ip="sgwpdm.ah.sgcc.com.cn:20080";
private static final String ip1="10.138.236.11:20080";//优尔信息外网ip
//获取token
private static final String token_url = "http://"+ip1+"/jjqgcApp/datacenter/request/token.do";
/**
* 关键点措施照片 url
*/
private static final String ZBH_IMAGE_URL="http://"+ip1+"/jjqgcApp/datacenter/request/queryPicId.do";
private static final String TICKET_IMAGE_URL="http://"+ip1+"/jjqgcApp/datacenter/request/downTicket.do";
/**
* 施工方案
*/
private static final String PROJECT_SG_FA = "http://"+ip1+"/jjqgcApp/datacenter/request/getSgfaFile";
private static final String SG_FA_LIST = "http://"+ip1+"/jjqgcApp/datacenter/request/downSgfaFileId.do";
/**
* 考勤人员数量
*/
private static final String KQREN_URL = "http://"+ip1+"/jjqgcApp/datacenter/bns/getKqNum";
private static final String ZTSJ_STATE = "http://"+ip1+"/jjqgcApp/datacenter/request/getZbhStatus";
//接口token
private static String token = null;
/**
* 登录授权获取token
*/
private static String login() {
try{
String rucan=getJMCSData("date",DateTimeHelper.getNowDate());
com.alibaba.fastjson2.JSONObject jsonObject = new com.alibaba.fastjson2.JSONObject ();//参数封装
jsonObject.put("data",rucan);
String jm =HttpClientUtils.doHttpPost(token_url,jsonObject,token);
String str=AesEncryptUtils.decrypt(jm, AesEncryptUtils.KEY_NAME);
if (StringHelper.isNotEmpty(str)) {
com.alibaba.fastjson2.JSONObject object = com.alibaba.fastjson2.JSONObject.parseObject(str);
String type = object.getString("type");
if ("success".equals(type)) {
token = object.getString("token");
return token;
} else {
return null;
}
} else {
return null;
}
}catch (Exception e){
log.error(e.toString(),e);
}
return null;
}
public static String getJMCSData(String key, String value){
String in = "{\""+key+"\":\""+value+"\"}";
String rucan = AesEncryptUtils.encrypt(in, AesEncryptUtils.KEY_NAME);
return rucan;
}
/**
* 站班会施工图片获取
*/
public static String getZbhImageData(String imageId){
try{
login();
if (token == null) {
log.error("token为空");
}else{
String rucan=getJMCSData("picId",imageId);//参数加密
com.alibaba.fastjson2.JSONObject jsonObject = new com.alibaba.fastjson2.JSONObject();//参数封装
jsonObject.put("data",rucan);
String jmsj =HttpClientUtils.doHttpPost(ZBH_IMAGE_URL,jsonObject,token);
String str=AesEncryptUtils.decrypt(jmsj, AesEncryptUtils.KEY_NAME);//数据解密
if (StringHelper.isNotEmpty(str)) {
com.alibaba.fastjson2.JSONObject object = com.alibaba.fastjson2.JSONObject.parseObject(str);//json数据解析
String type = object.getString("type");//获取接口是是否成功
if ("success".equals(type)) {
String bast64 = object.getString("data");
return bast64;
}
}
}
return null;
}catch (Exception e){
log.error(e.toString(),e);
}
return null;
}
/**
* 获取作业票的PDF文件
*/
public static String getTicketImageData(String ticketId){
try{
login();
if (token == null) {
log.error("token为空");
}else{
String rucan=getJMCSData("ticketId",ticketId);//参数加密
com.alibaba.fastjson2.JSONObject jsonObject = new com.alibaba.fastjson2.JSONObject();//参数封装
jsonObject.put("data",rucan);
String jmsj =HttpClientUtils.doHttpPost(TICKET_IMAGE_URL,jsonObject,token);
String str=AesEncryptUtils.decrypt(jmsj, AesEncryptUtils.KEY_NAME);//数据解密
if (StringHelper.isNotEmpty(str)) {
com.alibaba.fastjson2.JSONObject object = com.alibaba.fastjson2.JSONObject.parseObject(str);//json数据解析
String type = object.getString("type");//获取接口是是否成功
if ("success".equals(type)) {
String bast64 = object.getString("data");
return bast64;
}
}
}
}catch (Exception e){
log.error(e.toString(),e);
}
return null;
}
/**
* 获取施工方案单个文件
* @param fileId
* @return
*/
public static String getSgfaFileData(String fileId){
try{
login();
if (token == null) {
log.error("token为空");
}else{
String rucan=getJMCSData("picId",fileId);//参数加密
com.alibaba.fastjson2.JSONObject jsonObject = new com.alibaba.fastjson2.JSONObject();//参数封装
jsonObject.put("data",rucan);
String jmsj =HttpClientUtils.doHttpPost(PROJECT_SG_FA,jsonObject,token);
String str=AesEncryptUtils.decrypt(jmsj, AesEncryptUtils.KEY_NAME);//数据解密
if (StringHelper.isNotEmpty(str)) {
com.alibaba.fastjson2.JSONObject object = com.alibaba.fastjson2.JSONObject.parseObject(str);//json数据解析
String type = object.getString("type");//获取接口是是否成功
if ("success".equals(type)) {
String bast64 = object.getString("data");
return bast64;
}
}
}
}catch (Exception e){
log.error(e.toString(),e);
}
return null;
}
/**
* 获取施工方案信息
* @param bidNo
* @return
*/
public static JSONArray getSgFa(String bidNo) {
try{
login();
String rucan = getJMCSData("bidNo", bidNo);
com.alibaba.fastjson2.JSONObject jsonObject = new com.alibaba.fastjson2.JSONObject();//参数封装
jsonObject.put("data",rucan);
String jm = HttpClientUtils.doHttpPost(SG_FA_LIST, jsonObject, token);
String str = AesEncryptUtils.decrypt(jm, AesEncryptUtils.KEY_NAME);//解密
if(StringHelper.isNotEmpty(str)) {
com.alibaba.fastjson2.JSONObject object = com.alibaba.fastjson2.JSONObject.parseObject(str);//json数据解析
String type = object.getString("type");//获取接口是是否成功
if ("success".equals(type)) {//转为list
JSONArray data = object.getJSONArray("data");
// List<SgFaVo> list = com.alibaba.fastjson2.JSON.parseObject(data.toJSONString(), new com.alibaba.fastjson2.TypeReference<List<SgFaVo>>() {
// });
return data;
}
}
return null;
}catch (Exception e){
log.error(e.toString(),e);
}
return null;
}
/**
* 考勤人员数量
*/
public static String getKqRyData(){
try{
login();
String rucan=getJMCSData("date",DateTimeHelper.getNowDate());//数据加密
JSONObject jsonObject = new JSONObject();//参数封装
jsonObject.put("data",rucan);
String jmsj =HttpClientUtils.doHttpPost(KQREN_URL,jsonObject,token);
String str=AesEncryptUtils.decrypt(jmsj, AesEncryptUtils.KEY_NAME);//数据揭秘
if (StringHelper.isNotEmpty(str)) {
JSONObject object = JSONObject.parseObject(str);//json数据解析
Object data=object.getString("data");
JSONObject obj = JSONObject.parseObject(data.toString());//
return obj.get("DCRY").toString();
}
}catch (Exception e){
log.error(e.toString(),e);
}
return "0";
}
public static List<Map<String,String>> getZbhZt(String classId){
List<Map<String,String>> list=new ArrayList<>();
try{
login();
String params="jhId="+classId;
String str =HttpClient.sendGet(ZTSJ_STATE,token,params);
if (StringHelper.isNotEmpty(str)) {
JSONObject object = JSONObject.parseObject(str);//json数据解析
JSONArray data = object.getJSONArray("data");
for (int i = 0; i < data.size(); i++) {
JSONObject obj= (JSONObject) data.get(i);
String status=obj.get("STATUS").toString() ;
if("02".equals(status)){
Map<String,String> map= Maps.newHashMap();
map.put("ztsj",getObject(obj,"ZTSJ"));
map.put("xhzt",getObject(obj,"SIGNAL_STATUS"));
map.put("ztyy",getObject(obj,"REASON") );
list.add(map);
}else {
Integer num=Integer.parseInt(status);
if(2==num){
Map<String,String> map= Maps.newHashMap();
map.put("ztsj",getObject(obj,"ZTSJ"));
map.put("xhzt",getObject(obj,"SIGNAL_STATUS"));
map.put("ztyy",getObject(obj,"REASON") );
list.add(map);
}
}
}
}
}catch (Exception e){
log.error(e.toString(),e);
}
return list;
}
public static String getObject(JSONObject obj,String key){
try {
Object data=obj.get(key);
if(data==null){
return "";
}
return data.toString();
}catch (Exception e){
log.error(e.toString(),e);
}
return "";
}
}