修改人:邹江涛

修改内容:API入参出参修改
修改时间:2024/11/11
This commit is contained in:
zoujiangtao 2024-11-11 16:21:34 +08:00
parent d05ce5b36e
commit d89283912f
1 changed files with 19 additions and 2 deletions

View File

@ -1,5 +1,8 @@
package shkd.sys.sys.plugin.api;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import kd.bos.dataentity.entity.DynamicObject;
@ -22,9 +25,12 @@ import java.util.Map;
*/
public class PayBillApiSavePlugin implements ApiSavePlugin, ApiSerializerPlugin {
private static final long serialVersionUID = 7055073356277386444L;
private String shkd_businessid;
private String shkd_businessnumber;
@Override
public List<Map<String, Object>> preHandleRequestData(List<Map<String, Object>> reqData) {
//付款处理 收款人ID payee 付款银行.编码 payerbank_number payeetype 收款人类型 payeenumber 收款人编码
//payeracctbank_number 付款银行账号.number
@ -33,6 +39,7 @@ public class PayBillApiSavePlugin implements ApiSavePlugin, ApiSerializerPlugin
//重复支付校验
String objectType;//对象类型/付人类型
String objectNumber;//对象编码/付人编码
String fieldName1;//字段名称/付人ID
@ -40,6 +47,7 @@ public class PayBillApiSavePlugin implements ApiSavePlugin, ApiSerializerPlugin
String bankNumber;///付款银行账号.number
String fieldName2;//字段名称/付款银行.number
for (Map<String, Object> map : reqData) {
Object payeetype = map.get("payeetype");//如果是收款人类型 则为付款处理保存接口
Object payertype = map.get("payertype");//如果是付款人类型 则为收款处理保存接口
if (payeetype != null) {
@ -67,7 +75,8 @@ public class PayBillApiSavePlugin implements ApiSavePlugin, ApiSerializerPlugin
map.put(fieldName1, dynamicObject.getString("id"));
map.put(fieldName2, amAccountbank.getDynamicObject("bank").getString("number"));
}
shkd_businessid = map.get("shkd_businessid").toString();
shkd_businessnumber = map.get("shkd_businessnumber").toString();
// shkd_businessid
// shkd_businessnumber
// shkd_businessname
@ -81,7 +90,15 @@ public class PayBillApiSavePlugin implements ApiSavePlugin, ApiSerializerPlugin
if (contentType.contains(MediaType.APPLICATION_JSON)) {
//返回text文本
String responseStr = new ObjectMapper().writeValueAsString(response);
return new SerializerResult(MediaType.TEXT_PLAIN, "实际返回:" + responseStr);
JSONObject jsonObject = JSON.parseObject(responseStr);
// 获取 data 节点
JSONObject data = jsonObject.getJSONObject("data");
// 获取 result 节点
JSONArray result = data.getJSONArray("result");
result.getJSONObject(0).put("shkd_businessid", shkd_businessid);
result.getJSONObject(0).put("shkd_businessnumber", shkd_businessnumber);
return new SerializerResult(MediaType.TEXT_PLAIN, jsonObject.toJSONString());
} else {
//其他类型的出参序列化
return null;