付款凭证推送sap,有个点要修改一下,就是这个特殊总账标识为W时,代表是票据,需要传一些票据字段

--s
This commit is contained in:
weiyunlong 2025-06-18 17:44:33 +08:00
parent bbfd2d8738
commit fb167ab6a6
1 changed files with 30 additions and 23 deletions

View File

@ -122,21 +122,35 @@ public class RecBillSaveOperation extends AbstractOperationServicePlugIn impleme
String oppunit = beiIntelpay.getString("oppunit");//收款入账中心的对方户名
bill.set("shjh_dfhm", oppunit);//收款单备注字段
bill.set("payertype", "bd_customer");//付款人类型:客户
DynamicObject bd_customer = BusinessDataServiceHelper.loadSingle("bd_customer", new QFilter[]{new QFilter("name", QCP.equals, oppunit)});
if (null != bd_customer) {
bill.set("payer", bd_customer.getPkValue()); //付款人id
bill.set("payername", bd_customer.getString("name")); //付款人名称
} else {
boolean shjhEGetcustomer = entry.getBoolean("shjh_e_getcustomer"); //取规则得映射表客户标记
if (shjhEGetcustomer) {
QFilter qFilter = new QFilter("shjh_dfhm", QCP.equals, oppunit);
//对方户名与客户名称映射表 shjh_dfhmcust
DynamicObject shjhDfhmcust = BusinessDataServiceHelper.loadSingle("shjh_dfhmcust", qFilter.toArray());
if (null != shjhDfhmcust) {
DynamicObject shjhCustomer = shjhDfhmcust.getDynamicObject("shjh_customer");
if (null != shjhCustomer) {
bill.set("payer", shjhCustomer.getPkValue()); //付款人id
bill.set("payername", shjhCustomer.getString("name")); //付款人名称
// 2025/6/18 优化 先根据规则指定的付款人赋值
DynamicObject ePayerid = entry.getDynamicObject("e_payerid");
if (null != ePayerid) {
bill.set("payer", ePayerid.getPkValue()); //付款人id
bill.set("payername", ePayerid.getString("name")); //付款人名称
}else {
DynamicObject bd_customer = BusinessDataServiceHelper.loadSingle("bd_customer", new QFilter[]{new QFilter("name", QCP.equals, oppunit)});
if (null != bd_customer) {
bill.set("payer", bd_customer.getPkValue()); //付款人id
bill.set("payername", bd_customer.getString("name")); //付款人名称
} else {
boolean shjhEGetcustomer = entry.getBoolean("shjh_e_getcustomer"); //取规则得映射表客户标记
if (shjhEGetcustomer) {
QFilter qFilter = new QFilter("shjh_dfhm", QCP.equals, oppunit);
//对方户名与客户名称映射表 shjh_dfhmcust
DynamicObject shjhDfhmcust = BusinessDataServiceHelper.loadSingle("shjh_dfhmcust", qFilter.toArray());
if (null != shjhDfhmcust) {
DynamicObject shjhCustomer = shjhDfhmcust.getDynamicObject("shjh_customer");
if (null != shjhCustomer) {
bill.set("payer", shjhCustomer.getPkValue()); //付款人id
bill.set("payername", shjhCustomer.getString("name")); //付款人名称
}
}else {
QFilter qFilter1 = new QFilter("number", QCP.equals, "1042086"); //4000042
DynamicObject bdCustomer = BusinessDataServiceHelper.loadSingle("bd_customer", qFilter1.toArray());
if (null != bdCustomer) {
bill.set("payer", bdCustomer.getPkValue()); //付款人id
bill.set("payername", bdCustomer.getString("name")); //付款人名称
}
}
}else {
QFilter qFilter1 = new QFilter("number", QCP.equals, "1042086"); //4000042
@ -146,16 +160,9 @@ public class RecBillSaveOperation extends AbstractOperationServicePlugIn impleme
bill.set("payername", bdCustomer.getString("name")); //付款人名称
}
}
}else {
QFilter qFilter1 = new QFilter("number", QCP.equals, "1042086"); //4000042
DynamicObject bdCustomer = BusinessDataServiceHelper.loadSingle("bd_customer", qFilter1.toArray());
if (null != bdCustomer) {
bill.set("payer", bdCustomer.getPkValue()); //付款人id
bill.set("payername", bdCustomer.getString("name")); //付款人名称
}
}
}
}
DynamicObject shjhBizbig = (DynamicObject) bill.get("shjh_bizebig");//收款单的业务大类
if (null == shjhBizbig) {