1.优化费控状态更新接口

--s
This commit is contained in:
weiyunlong 2025-04-08 11:52:29 +08:00
parent 711e5c584e
commit 675b87991e
1 changed files with 15 additions and 11 deletions

View File

@ -3,6 +3,7 @@ package shjh.jhzj7.fi.fi.plugin.operate;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
import kd.bos.entity.plugin.args.AfterOperationArgs; import kd.bos.entity.plugin.args.AfterOperationArgs;
import kd.bos.entity.plugin.args.BeforeOperationArgs; import kd.bos.entity.plugin.args.BeforeOperationArgs;
@ -56,6 +57,7 @@ public class PayrequestBillOperation extends AbstractOperationServicePlugIn impl
if ("closepay".equals(operationKey)) { if ("closepay".equals(operationKey)) {
DynamicObject[] dataEntities = e.getDataEntities(); DynamicObject[] dataEntities = e.getDataEntities();
for (DynamicObject bill : dataEntities) { for (DynamicObject bill : dataEntities) {
bill = BusinessDataServiceHelper.loadSingle(bill.getPkValue(), bill.getDataEntityType().getName());
//若来源为SAP,调用SAP状态修改接口 //若来源为SAP,调用SAP状态修改接口
String shjhSapuniquevalue = bill.getString("shjh_sapuniquevalue");//获取SAP唯一值 String shjhSapuniquevalue = bill.getString("shjh_sapuniquevalue");//获取SAP唯一值
if (shjhSapuniquevalue!= null && !shjhSapuniquevalue.isEmpty()) { if (shjhSapuniquevalue!= null && !shjhSapuniquevalue.isEmpty()) {
@ -97,7 +99,7 @@ public class PayrequestBillOperation extends AbstractOperationServicePlugIn impl
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
String CompanyCode = ""; String CompanyCode = "";
String CompanyName = ""; String CompanyName = "";
DynamicObject openorg = bill.getDynamicObject("openorg");//核算组织 DynamicObject openorg = bill.getDynamicObject("applyorg");//申请组织
if (null != openorg) { if (null != openorg) {
CompanyCode = openorg.getString("number"); CompanyCode = openorg.getString("number");
CompanyName = openorg.getString("name"); CompanyName = openorg.getString("name");
@ -107,21 +109,23 @@ public class PayrequestBillOperation extends AbstractOperationServicePlugIn impl
jsonObject.put("BillHeaderID", bill.getString("shjh_fkbillid"));//费控单据头ID jsonObject.put("BillHeaderID", bill.getString("shjh_fkbillid"));//费控单据头ID
jsonObject.put("DetailID", bill.getString("shjh_fkentryid"));//费控分录明细ID jsonObject.put("DetailID", bill.getString("shjh_fkentryid"));//费控分录明细ID
String PaymentBank = ""; String PaymentBank = "";
DynamicObject payerbank = bill.getDynamicObject("payerbank"); String PaymentAccNum = "";
if (null != payerbank) { DynamicObjectCollection entry = bill.getDynamicObjectCollection("entry");
PaymentBank = payerbank.getString("name"); if (!entry.isEmpty()) {
DynamicObject dynamicObject = entry.get(0);
DynamicObject eBebank = dynamicObject.getDynamicObject("e_bebank");
if (null != eBebank) {
PaymentBank = eBebank.getString("name");
}
PaymentAccNum = dynamicObject.getString("e_assacct");////银行账号
} }
jsonObject.put("PaymentBank", PaymentBank);//付款银行 jsonObject.put("PaymentBank", PaymentBank);//付款银行
jsonObject.put("PaymentAccNum", PaymentAccNum);//付款账号
//付款状态 败笔退回-5取消付款-20付款失败-10部分付款失败30付款成功20部分付款成功25 //付款状态 败笔退回-5取消付款-20付款失败-10部分付款失败30付款成功20部分付款成功25
// 处理中15待付款10未付款0未推送-99已修改-100 // 处理中15待付款10未付款0未推送-99已修改-100
jsonObject.put("PaymentStatus", "-5"); jsonObject.put("PaymentStatus", "-5");
String PaymentAccNum = "";
DynamicObject payeracctbank = bill.getDynamicObject("payeracctbank");//银行账号 Date paydate = bill.getDate("applydate");//申请日期
if (null != payeracctbank) {
PaymentAccNum = payeracctbank.getString("bankaccountnumber");
}
jsonObject.put("PaymentAccNum", PaymentAccNum);//付款账号
Date paydate = bill.getDate("paydate");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String PaymentDate = format.format(paydate); String PaymentDate = format.format(paydate);
jsonObject.put("PaymentDate", PaymentDate);//付款时间 jsonObject.put("PaymentDate", PaymentDate);//付款时间