|
@@ -7,18 +7,14 @@ import kd.bos.entity.EntityMetadataCache;
|
|
|
import kd.bos.logging.Log;
|
|
|
import kd.bos.logging.LogFactory;
|
|
|
import kd.bos.orm.query.QFilter;
|
|
|
-import kd.bos.sdk.util.KHttpClientUtils;
|
|
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
|
|
-
|
|
|
import java.io.*;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
|
import java.sql.Timestamp;
|
|
|
import java.util.*;
|
|
|
-
|
|
|
import kd.bos.servicehelper.operation.OperationServiceHelper;
|
|
|
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
|
|
-import nckd.base.helper.CommonHelperUtils;
|
|
|
import org.json.JSONArray;
|
|
|
import org.json.JSONObject;
|
|
|
|
|
@@ -385,6 +381,7 @@ public class PayBillToolUtil {
|
|
|
//获取接口链接等信息
|
|
|
DynamicObject jkpzxx = BusinessDataServiceHelper.loadSingle("nckd_jkpzxx", new QFilter[]{new QFilter("number", "=", "paytoJHX")});
|
|
|
String url = jkpzxx.getString("nckd_servername");
|
|
|
+ boolean isESBApi = jkpzxx.getBoolean("nckd_isesb");
|
|
|
|
|
|
for (DynamicObject dataEntity : billEntities) {
|
|
|
boolean isSuccess = false;//是否成功标识
|
|
@@ -453,13 +450,15 @@ public class PayBillToolUtil {
|
|
|
Map<String, String> header = new HashMap<>();
|
|
|
header.put("Content-Type", "application/json; charset=UTF-8");
|
|
|
|
|
|
- String bodyString = buildEsbApiBodyJSON(new JSONObject(qjjson));
|
|
|
+ //如果是esb接口,需要包一层参数
|
|
|
+ if(isESBApi) {
|
|
|
+ qjjson = buildEsbApiBodyJSON(new JSONObject(qjjson));
|
|
|
+ }
|
|
|
+
|
|
|
String apiResult = "";
|
|
|
try {
|
|
|
- apiResult = KHttpClientUtils.postjson(url, header, bodyString);
|
|
|
+ apiResult = HttpUtils.postjson(url, header, qjjson);
|
|
|
} catch (IOException e) {
|
|
|
-// throw new RuntimeException(e);
|
|
|
-
|
|
|
errMsg.append("单据号:").append(billNum).append(",推送资金系统失败,");
|
|
|
errMsg.append("错误号:").append("XXXXXXX");
|
|
|
errMsg.append(",错误原因:").append("接口无法连通,未获取到返回结果");
|
|
@@ -480,18 +479,7 @@ public class PayBillToolUtil {
|
|
|
//存入日志表
|
|
|
saveAgentlog(payBillEntity, qjjson, apiResult, "1");
|
|
|
|
|
|
- JSONObject apiResultJSON = new JSONObject(apiResult);
|
|
|
- if(apiResultJSON.get("responseData") == null || apiResultJSON.getJSONArray("responseData").length() == 0){
|
|
|
- errMsg.append("单据号:").append(billNum).append(",推送资金系统失败,");
|
|
|
- errMsg.append("错误号:").append("XXXXXXX");
|
|
|
- errMsg.append(",错误原因:").append("接口无法连通,未获取到返回结果");
|
|
|
- errMsg.append("\r\n");
|
|
|
-
|
|
|
- return errMsg.toString();
|
|
|
- }
|
|
|
-
|
|
|
- JSONObject cbsReturnJson = apiResultJSON.getJSONArray("responseData").getJSONObject(0);
|
|
|
-
|
|
|
+ JSONObject cbsReturnJson = new JSONObject(apiResult);
|
|
|
/************************************************************/
|
|
|
|
|
|
if (cbsReturnJson == null) {
|
|
@@ -559,6 +547,8 @@ public class PayBillToolUtil {
|
|
|
DynamicObject jkpzxx = BusinessDataServiceHelper.loadSingle("nckd_jkpzxx", new QFilter[]{new QFilter("number", "=", "paytoJHX")});
|
|
|
|
|
|
String url = jkpzxx.get("nckd_servername") + "";
|
|
|
+ boolean isESBApi = jkpzxx.getBoolean("nckd_isesb");
|
|
|
+
|
|
|
for (DynamicObject dataEntity : billEntities) {
|
|
|
boolean isSuccess = false;
|
|
|
boolean isZFQZ = true;
|
|
@@ -675,13 +665,15 @@ public class PayBillToolUtil {
|
|
|
Map<String, String> header = new HashMap<>();
|
|
|
header.put("Content-Type", "application/json; charset=UTF-8");
|
|
|
|
|
|
- String bodyString = buildEsbApiBodyJSON(new JSONObject(qjjson));
|
|
|
+ //如果是esb接口,需要包一层参数
|
|
|
+ if(isESBApi) {
|
|
|
+ qjjson = buildEsbApiBodyJSON(new JSONObject(qjjson));
|
|
|
+ }
|
|
|
+
|
|
|
String apiResult = "";
|
|
|
try {
|
|
|
- apiResult = KHttpClientUtils.postjson(url, header, bodyString);
|
|
|
+ apiResult = HttpUtils.postjson(url, header, qjjson);
|
|
|
} catch (IOException e) {
|
|
|
-// throw new RuntimeException(e);
|
|
|
-
|
|
|
errMsg.append("单据号:").append(billNum).append(",推送资金系统失败,");
|
|
|
errMsg.append("错误号:").append("XXXXXXX");
|
|
|
errMsg.append(",错误原因:").append("接口无法连通,未获取到返回结果");
|
|
@@ -702,21 +694,9 @@ public class PayBillToolUtil {
|
|
|
//存入日志表
|
|
|
savelog(payBillEntity, qjjson, apiResult);
|
|
|
|
|
|
- JSONObject apiResultJSON = new JSONObject(apiResult);
|
|
|
- if(apiResultJSON.get("responseData") == null || apiResultJSON.getJSONArray("responseData").length() == 0){
|
|
|
- errMsg.append("单据号:").append(billNum).append(",推送资金系统失败,");
|
|
|
- errMsg.append("错误号:").append("XXXXXXX");
|
|
|
- errMsg.append(",错误原因:").append("接口无法连通,未获取到返回结果");
|
|
|
- errMsg.append("\r\n");
|
|
|
-
|
|
|
- return errMsg.toString();
|
|
|
- }
|
|
|
-
|
|
|
- JSONObject cbsReturnJson = apiResultJSON.getJSONArray("responseData").getJSONObject(0);
|
|
|
-
|
|
|
+ JSONObject cbsReturnJson = new JSONObject(apiResult);
|
|
|
/************************************************************/
|
|
|
|
|
|
-
|
|
|
if (cbsReturnJson == null) {
|
|
|
isSuccess = false;
|
|
|
errMsg.append("单据号:").append(billNum).append(",推送资金系统失败,");
|