package com.zy.crm.manager.utils;
|
|
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSONObject;
|
import com.core.common.Cools;
|
import com.core.exception.CoolException;
|
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* 第三方API接口搜索企业信息
|
*/
|
public class CompanySearchUtils {
|
|
/**
|
* 对外暴露搜索接口
|
* @param company 企业名(模糊)
|
* @param api 调用的第三方接口
|
*/
|
public static List<Map<String, Object>> search(String company, Integer api) {
|
List<Map<String, Object>> list = new ArrayList<>();
|
switch (api) {
|
case 1:
|
List<Map<String, Object>> maps = aliyun_1(company);
|
if (Cools.isEmpty(maps)){
|
break;
|
}
|
list.addAll(maps);
|
break;
|
}
|
return list;
|
}
|
|
/**
|
* 阿里云市场API
|
*/
|
private static List<Map<String, Object>> aliyun_1(String company) {
|
if (Cools.isEmpty(company) || company.length()<=3){
|
return null;
|
}
|
ArrayList<Map<String, Object>> list = new ArrayList<>();
|
try {
|
HashMap<String, Object> headers = new HashMap<>();
|
HashMap<String, Object> param = new HashMap<>();
|
|
headers.put("Authorization", "APPCODE 15ce5d8be5e348c7b680dfd7cfb8307e");
|
|
param.put("com", company);
|
param.put("method", "企业名称");
|
param.put("page", "1");
|
|
String response = new HttpHandler.Builder()
|
.setUri("https://orgs.market.alicloudapi.com")
|
.setPath("/searchCompany")
|
.setHeaders(headers)
|
.setParams(param)
|
.build()
|
.doPost();
|
JSONObject jsonObject = JSON.parseObject(response);
|
if (Cools.isEmpty(jsonObject)){
|
throw new CoolException("无返回结果");
|
}
|
if (Integer.parseInt(jsonObject.get("error_code").toString()) == 0) {
|
JSONObject result = JSON.parseObject(jsonObject.get("result").toString());
|
List<JSONObject> data = JSON.parseArray(result.get("data").toString(), JSONObject.class);
|
for (JSONObject object : data) {
|
//将API接口数据转换成系统定义的数据
|
HashMap<String, Object> objData = new HashMap<>();
|
objData.put("creditCode", object.get("creditCode"));//企业信用代码
|
objData.put("issueTime", object.get("issueTime"));//企业创建时间
|
objData.put("companyType", object.get("companyType"));//企业类型
|
objData.put("companyPerson", object.get("faRen"));//法人
|
objData.put("companyStatus", object.get("businessStatus"));//企业状态
|
objData.put("regMoney", object.get("regMoney"));//注册资金
|
|
|
HashMap<String, Object> map = new HashMap<>();
|
map.put("value", objData);
|
map.put("name", object.get("companyName"));
|
list.add(map);
|
}
|
}
|
} catch (Exception e) {
|
if (e.getMessage().equals("无返回结果")){
|
throw new CoolException("无返回结果");
|
}
|
e.printStackTrace();
|
}
|
return list;
|
}
|
|
}
|