修改编码gbk

This commit is contained in:
zhangxinah@yonyou.com 2025-05-08 14:44:23 +08:00
parent 63a4cdef68
commit bc870473e2
1 changed files with 65 additions and 65 deletions

View File

@ -72,7 +72,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
}
/**
* 检查bip参数是否完整
* 检查bip参数是否完整
* @return
*/
private Map<String,String> checkBipParam(){
@ -121,8 +121,8 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
}
String dests = bipParamMap.get("dests");//上次执行完成时间
// 获取上次执行完成后的客户账户信息
String dests = bipParamMap.get("dests");//上次执行完成时间
// 获取上次执行完成后的客户账户信息
String sel_sql="select distinct pk_cust from bd_custbank where accclass=1 ";
if(usercustcode!="") {
@ -140,7 +140,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
List<Map<String,String>> ll_cust = (List<Map<String, String>>)new BaseDAO().executeQuery(sel_sql,new MapListProcessor());
//不存在直接退出任务
//不存在直接退出任务
if(ll_cust.isEmpty()) {
return null;
}
@ -163,19 +163,19 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
" and bd_banktype.pk_banktype=bd_bankaccbas.pk_banktype\r\n" +
" and bd_currtype.pk_currtype=bd_bankaccsub.pk_currtype\r\n" +
" and bd_custbank.accclass=1 and bd_customer.pk_customer='"+pk_cust+"'";
//获取客户的银行账户子户信息
//获取客户的银行账户子户信息
List<Map<String,String>> ll_log = (List<Map<String, String>>)new BaseDAO().executeQuery(sql,new MapListProcessor());
if(!ll_log.isEmpty()) {
try {
String accessToken=getAccessToken(baseUrl,bipParamMap);//获取BIP的token
String accessToken=getAccessToken(baseUrl,bipParamMap);//获取BIP的token
if(accessToken!="") {
String custcode=ll_log.get(0).get("custcode");//客户编码
String custcode=ll_log.get(0).get("custcode");//客户编码
Gson gson = new Gson();
//通过BIP的API获取客户信息
//通过BIP的API获取客户信息
String custurl=baseUrl+"/iuap-api-gateway/yonbip/digitalModel/merchant/detail?access_token="+accessToken;
HashMap<String, String> custMap = new HashMap<String, String>();
custMap.put("code", custcode);
@ -184,7 +184,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
// Map<String,Object> custDetailresult = gson.fromJson(custdetailString, Map.class);
JSONObject custDetailresult= JSON.parseObject(custdetailString);
if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//客户存在
if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//客户存在
Map<String, Object> dataInfo = (Map<String, Object>) custDetailresult.get("data");
@ -205,26 +205,26 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
for (Map<String, String> map : ll_log) {//Erp中查询出来的客户子账户
for (Map<String, String> map : ll_log) {//Erp中查询出来的客户子账户
String accnum=map.get("accnum");//银行账户
String accnum=map.get("accnum");//银行账户
if(checkMap.containsKey(accnum)) {//剔除erp中银行账号重合数据
if(checkMap.containsKey(accnum)) {//剔除erp中银行账号重合数据
continue;
}else {
checkMap.put(accnum, accnum);
}
boolean check =false;
if (bool){//客户中已经存在银行账户
if (bool){//客户中已经存在银行账户
for (Map<String, Object> map_bankinfo : l_map) {//循环BIP客户信息里的银行账户
if (StringUtils.equals(accnum, map_bankinfo.get("bankAccount").toString())) {//匹配上做更新
for (Map<String, Object> map_bankinfo : l_map) {//循环BIP客户信息里的银行账户
if (StringUtils.equals(accnum, map_bankinfo.get("bankAccount").toString())) {//匹配上做更新
check=true;
map_bankinfo.put("_status", "Update");
map_bankinfo.put("jointLineNo", map.get("combinenum"));//联行号
map_bankinfo.put("jointLineNo", map.get("combinenum"));//联行号
map_bankinfo.put("accountType", map.get("accountproperty")==null?0:map.get("accountproperty"));
map_bankinfo.put("isDefault", map.get("isdefault")==null||map.get("isdefault").equals("N")?false:true);
map_bankinfo.put("stopstatus", map.get("enablestate")=="2"?true:false);
@ -233,9 +233,9 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
paramCurrMap.put("code", map.get("currcode"));
String currencyString=doGet(currencyUrl, paramCurrMap);
JSONObject currencyDetailresult= JSON.parseObject(currencyString);
if (StringUtils.equals("200", currencyDetailresult.get("code").toString())) {//币种存在
if (StringUtils.equals("200", currencyDetailresult.get("code").toString())) {//币种存在
Map<String, Object> currencydataInfo = (Map<String, Object>)currencyDetailresult.get("data");
map_bankinfo.put("currency", currencydataInfo.get("id"));//需要从bip获取对应的id
map_bankinfo.put("currency", currencydataInfo.get("id"));//需要从bip获取对应的id
}
String bankUrl=baseUrl+"/iuap-api-gateway/yonbip/digitalModel/bankdot/list";
@ -245,8 +245,8 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
paramabank.put("name", map.get("bankdocname"));
Map<String,String> bankMap=getBIPBankID(paramabank,bankUrl,accessToken,map.get("bankdocname"));
if(bankMap!=null) {
map_bankinfo.put("openBank", bankMap.get("id")); //需要从bip获取对应的id 网点api
map_bankinfo.put("bank", bankMap.get("bank"));//需要从bip获取对应的id
map_bankinfo.put("openBank", bankMap.get("id")); //需要从bip获取对应的id 网点api
map_bankinfo.put("bank", bankMap.get("bank"));//需要从bip获取对应的id
}
break;
@ -254,7 +254,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
}
if(!check) {
//没有匹配上走新增
//没有匹配上走新增
Map<String,Object> map_add = new HashMap<String, Object>();
map_add.put("_status", "Insert");
map_add.put("merchantId_code_agent_financial_falg", custcode);
@ -263,8 +263,8 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
accname_map.put("zh_CN", map.get("accname"));
map_add.put("bankAccountName", accname_map);
map_add.put("jointLineNo", map.get("combinenum"));
// map_add.put("openBank", value) 需要从bip获取对应的id
// map_add.put("bank", value)//需要从bip获取对应的id
// map_add.put("openBank", value) 需要从bip获取对应的id
// map_add.put("bank", value)//需要从bip获取对应的id
// getBIPBankID
String bankUrl=baseUrl+"/iuap-api-gateway/yonbip/digitalModel/bankdot/list";
HashMap<String, String> paramabank = new HashMap<String, String>();
@ -274,8 +274,8 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
// map.get("bankdocname");
Map<String,String> bankMap=getBIPBankID(paramabank,bankUrl,accessToken,map.get("bankdocname"));
if(bankMap!=null) {
map_add.put("openBank", bankMap.get("id")); //需要从bip获取对应的id 网点api
map_add.put("bank", bankMap.get("bank"));//需要从bip获取对应的id
map_add.put("openBank", bankMap.get("id")); //需要从bip获取对应的id 网点api
map_add.put("bank", bankMap.get("bank"));//需要从bip获取对应的id
}
map_add.put("accountType", map.get("accountproperty")==null?0:map.get("accountproperty"));
map_add.put("merchantId_createOrg", "666666");
@ -283,15 +283,15 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
map.get("isdefault");
map_add.put("isDefault", map.get("isdefault")==null||map.get("isdefault").equals("N")?false:true);
map_add.put("merchantId", id);
// map_add.put("currency", value);需要从bip获取对应的id
// map_add.put("currency", value);需要从bip获取对应的id
String currencyUrl = baseUrl+"/iuap-api-gateway/yonbip/digitalModel/currency/findByCode?access_token="+accessToken;
HashMap<String, String> paramCurrMap = new HashMap<String, String>();
paramCurrMap.put("code", map.get("currcode"));
String currencyString=doGet(currencyUrl, paramCurrMap);
JSONObject currencyDetailresult= JSON.parseObject(currencyString);
if (StringUtils.equals("200", currencyDetailresult.get("code").toString())) {//币种存在
if (StringUtils.equals("200", currencyDetailresult.get("code").toString())) {//币种存在
Map<String, Object> currencydataInfo = (Map<String, Object>)currencyDetailresult.get("data");
map_add.put("currency", currencydataInfo.get("id"));//需要从bip获取对应的id
map_add.put("currency", currencydataInfo.get("id"));//需要从bip获取对应的id
}
map_add.put("stopstatus", map.get("enablestate")=="2"?true:false);
if(bankMap!=null) {
@ -320,8 +320,8 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
Map<String,String> bankMap=getBIPBankID(paramabank,bankUrl,accessToken,map.get("bankdocname"));
if(bankMap!=null) {
map_add.put("openBank", bankMap.get("id")); //需要从bip获取对应的id 网点api
map_add.put("bank", bankMap.get("bank"));//需要从bip获取对应的id
map_add.put("openBank", bankMap.get("id")); //需要从bip获取对应的id 网点api
map_add.put("bank", bankMap.get("bank"));//需要从bip获取对应的id
}
//
@ -338,9 +338,9 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
String currencyString=doGet(currencyUrl, paramCurrMap);
// Map currencyDetailresult = gson.fromJson(currencyString, Map.class);
JSONObject currencyDetailresult= JSON.parseObject(currencyString);
if (StringUtils.equals("200", currencyDetailresult.get("code").toString())) {//币种存在
if (StringUtils.equals("200", currencyDetailresult.get("code").toString())) {//币种存在
Map<String, Object> currencydataInfo = (Map<String, Object>)currencyDetailresult.get("data");
map_add.put("currency", currencydataInfo.get("id"));//需要从bip获取对应的id
map_add.put("currency", currencydataInfo.get("id"));//需要从bip获取对应的id
}
//
map_add.put("stopstatus", map.get("enablestate")=="2"?true:false);
@ -370,7 +370,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
}
//更新客户信息银行账户信息
//更新客户信息银行账户信息
String custUpdateUrl=baseUrl+"/iuap-api-gateway/yonbip/digitalModel/merchant/save";
Map<String,String> tokenParam = new HashMap<>();
@ -381,20 +381,20 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
headers.put("Content-Type", "application/json");
String resultString=doSendHttp(custUpdateUrl,"POST",tokenParam,"",headers, custDetailresult.toJSONString());
// String updateRestult= doPost(custUpdateUrl, custDetailresult);//调用BIP客户保存更新接口
// String updateRestult= doPost(custUpdateUrl, custDetailresult);//调用BIP客户保存更新接口
// String updateRestult= doPost(custUpdateUrl, custDetailresult);//调用BIP客户保存更新接口
// String updateRestult= doPost(custUpdateUrl, custDetailresult);//调用BIP客户保存更新接口
Map updateMap = gson.fromJson(resultString, Map.class);
if (StringUtils.equals("200", updateMap.get("code").toString())) {//保存更新成功后需要更新日志表
if (StringUtils.equals("200", updateMap.get("code").toString())) {//保存更新成功后需要更新日志表
}else {//更新失败后更新对应子账户的ts时间以便下次再次能够获取到
}else {//更新失败后更新对应子账户的ts时间以便下次再次能够获取到
// getSuperDMO().executeUpdateSQL("update bd_custbank set pk_custbank='"+ll_log.get(0).get("pk_custbank")+"' where pk_custbank='"+ll_log.get(0).get("pk_custbank")+"'");
}
}else {//BIP中客户不存在更新对应子账户的ts时间以便下次再次能够获取到
}else {//BIP中客户不存在更新对应子账户的ts时间以便下次再次能够获取到
// getSuperDMO().executeUpdateSQL("update bd_custbank set pk_custbank='"+ll_log.get(0).get("pk_custbank")+"' where pk_custbank='"+ll_log.get(0).get("pk_custbank")+"'");
}
@ -433,7 +433,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
/**
* 查询bip 中开户行及银行类型id
* 查询bip 中开户行及银行类型id
* @param map
* @param bipUrl
* @return
@ -451,7 +451,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
String resultString=doSendHttp(bipUrl,"POST",tokenParam,"",headers, jsonData);
// Map custDetailresult = gson.fromJson(resultString, Map.class);
JSONObject custDetailresult= JSON.parseObject(resultString);
if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//数据存在
if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//数据存在
Map<String, Object> dataInfo = (Map<String, Object>)custDetailresult.get("data");
if(!MMValueCheck.isEmpty(dataInfo.get("recordList"))){
List<Map<String,String>> l_record=(List<Map<String, String>>) dataInfo.get("recordList");
@ -463,7 +463,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
resultString=doSendHttp(bipUrl,"POST",tokenParam,"",headers, jsonData);
// custDetailresult = gson.fromJson(resultString, Map.class);
custDetailresult= JSON.parseObject(resultString);
if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//数据存在
if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//数据存在
dataInfo = (Map<String, Object>)custDetailresult.get("data");
if(!MMValueCheck.isEmpty(dataInfo.get("recordList"))){
List<Map<String,String>> l_record=(List<Map<String, String>>) dataInfo.get("recordList");
@ -495,11 +495,11 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
}
}
// log.error("uRL:" + baseUrl);
// // 打印请求URL和方法
// // 打印请求URL和方法
// log.error("Request URL: " + baseUrl);
// log.error("Request Method: " + method);
URL urlobj = new URL(baseUrl);
if("https".equalsIgnoreCase(urlobj.getProtocol())) {//判定网址是否信任不信任则调用忽略信任工具类SslUtil
if("https".equalsIgnoreCase(urlobj.getProtocol())) {//判定网址是否信任不信任则调用忽略信任工具类SslUtil
IgnoreSslUtil.ignoreSsl();
}
urlConnection = (HttpURLConnection)urlobj.openConnection();
@ -507,7 +507,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
urlConnection.setRequestMethod(method);
urlConnection.setDoInput(true);
urlConnection.setUseCaches(false);
// 如果设置了自定义头则打印它们
// 如果设置了自定义头则打印它们
if (headers != null && !headers.isEmpty()) {
for (Map.Entry<String, String> entry : headers.entrySet()) {
urlConnection.addRequestProperty(entry.getKey(), entry.getValue());
@ -548,7 +548,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
}catch(Exception e) {
JSONObject js=new JSONObject();
js.put("",-1);
js.put("message","调用外系统接口失败:"+e.getMessage());
js.put("message","调用外系统接口失败:"+e.getMessage());
result=js.toString();
e.printStackTrace();
}finally {
@ -581,7 +581,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
// private String createCustBankMap(Map<String,String> map,String access_token) {
// Gson gson = new Gson();
// //获取BIP中的客户详情
// //获取BIP中的客户详情
// String custcode=map.get("custcode");
// String custurl=baseUrl+"/yonbip/digitalModel/merchant/detail?access_token="+access_token;
// HashMap<String, String> custMap = new HashMap<String, String>();
@ -590,11 +590,11 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
// String custdetailString=doGet(custurl,custMap);
//
// Map custDetailresult = gson.fromJson(custdetailString, Map.class);
// if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//客户存在
// if (StringUtils.equals("200", custDetailresult.get("code").toString())) {//客户存在
//
// Map<String, Object> dataInfo = (Map<String, Object>) custDetailresult.get("data");
//
// if (!MMValueCheck.isEmpty(dataInfo.get("merchantAgentFinancialInfos"))){//客户中已经存在银行账户
// if (!MMValueCheck.isEmpty(dataInfo.get("merchantAgentFinancialInfos"))){//客户中已经存在银行账户
//
// }else {
//
@ -603,7 +603,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
// }
//
//
// //开户行
// //开户行
// String bankdoccode=map.get("bankdoccode");
// HashMap<String, Object> paramap = new HashMap<String, Object>();
// paramap.put("pageIndex", 0);
@ -637,7 +637,7 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
params.put("appKey", appKey);
String timestamp = String.valueOf(System.currentTimeMillis());
params.put("timestamp", timestamp);
// 计算签名
// 计算签名
Map<String, String> treeMap;
if (params instanceof TreeMap) {
treeMap = params;
@ -677,9 +677,9 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
cm.setMaxTotal(500);
cm.setDefaultMaxPerRoute(50);
RequestConfig globalConfig = RequestConfig.custom().setConnectionRequestTimeout(5000) // 连接池获取连接超时
.setConnectTimeout(5000) // 连接建立超时
.setSocketTimeout(20000) // 等待响应超时
RequestConfig globalConfig = RequestConfig.custom().setConnectionRequestTimeout(5000) // 连接池获取连接超时
.setConnectTimeout(5000) // 连接建立超时
.setSocketTimeout(20000) // 等待响应超时
.setCookieSpec(CookieSpecs.IGNORE_COOKIES).build();
CloseableHttpClient httpClient = HttpClients.custom().setConnectionManager(cm)
@ -698,9 +698,9 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
cm.setMaxTotal(500);
cm.setDefaultMaxPerRoute(50);
RequestConfig globalConfig = RequestConfig.custom().setConnectionRequestTimeout(5000) // 连接池获取连接超时
.setConnectTimeout(5000) // 连接建立超时
.setSocketTimeout(20000) // 等待响应超时
RequestConfig globalConfig = RequestConfig.custom().setConnectionRequestTimeout(5000) // 连接池获取连接超时
.setConnectTimeout(5000) // 连接建立超时
.setSocketTimeout(20000) // 等待响应超时
.setCookieSpec(CookieSpecs.IGNORE_COOKIES).build();
CloseableHttpClient httpClient = HttpClients.custom().setConnectionManager(cm)
@ -735,21 +735,21 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
path += '?' + paramStr;
}
}
//创建远程url连接对象
//创建远程url连接对象
URL url = new URL(path);
if("https".equalsIgnoreCase(url.getProtocol())){//判定网址是否信任不信任则调用忽略信任工具类SslUtil
if("https".equalsIgnoreCase(url.getProtocol())){//判定网址是否信任不信任则调用忽略信任工具类SslUtil
IgnoreSslUtil.ignoreSsl();
}
//通过远程url连接对象打开一个连接强转成HTTPURLConnection类
//通过远程url连接对象打开一个连接强转成HTTPURLConnection类
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
//设置连接超时时间和读取超时时间
//设置连接超时时间和读取超时时间
conn.setConnectTimeout(120000);
conn.setReadTimeout(120000);
conn.setRequestProperty("Accept", "application/json");
//发送请求
//发送请求
conn.connect();
//通过conn取得输入流并使用Reader读取
//通过conn取得输入流并使用Reader读取
if (200 == conn.getResponseCode()) {
is = conn.getInputStream();
br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
@ -793,9 +793,9 @@ public class NCCToBIPBackgroupWorkPlugin implements IBackgroundWorkPlugin {
// cm.setMaxTotal(500);
// cm.setDefaultMaxPerRoute(50);
//
// RequestConfig globalConfig = RequestConfig.custom().setConnectionRequestTimeout(5000) // 连接池获取连接超时
// .setConnectTimeout(5000) // 连接建立超时
// .setSocketTimeout(20000) // 等待响应超时
// RequestConfig globalConfig = RequestConfig.custom().setConnectionRequestTimeout(5000) // 连接池获取连接超时
// .setConnectTimeout(5000) // 连接建立超时
// .setSocketTimeout(20000) // 等待响应超时
// .setCookieSpec(CookieSpecs.IGNORE_COOKIES).build();
//
// CloseableHttpClient httpClient = HttpClients.custom().setConnectionManager(cm)