付款单,已设置“结构性清账客户映射表” and 业务小类=全部金蝶清账的,是否需要下推清账单的才需要勾选

This commit is contained in:
yuxueliang0813 2025-07-02 11:32:03 +08:00
parent e72b378a09
commit 91734f9fd2
1 changed files with 24 additions and 4 deletions

View File

@ -187,10 +187,30 @@ public class RecBillSaveOperation extends AbstractOperationServicePlugIn impleme
}
//根据业务小类的清账方式设置分录和表头的清账方式以及分录下推清账单标记
if ("qbjdqz".equals(shjhEBizsmall.getString("shjh_qzfs"))) {
//业务小类清账方式字段=全部金蝶清账
entryss.set("shjh_needpushbill", true);//需要下推清账单
entryss.set("shjh_closingstatus", "B");//待清账
bill.set("shjh_qzzt", "B");//待清账
//业务小类清账方式字段=全部金蝶清账再判断是否为结构性清账客户
//判断客户是否拆分,客户拆分为否时以表头付款人来判断否则以分录上的客户来判断
boolean customerSplit = bill.getBoolean("shjh_customersplit");
if(customerSplit){
//以分录上客户来判断的话先设置成不下推由人为操作单子后系统判断
entryss.set("shjh_needpushbill", false);//不需要下推清账单
entryss.set("shjh_closingstatus", "A");//无需金蝶清账
bill.set("shjh_qzzt", "A");//无需金蝶清账
}else{
//根据收款单付款人id判断此时的付款类型是客户
QFilter mapnumber = new QFilter("shjh_customer.id", QCP.equals, bill.getLong("payer"));
DynamicObject mappingObj = BusinessDataServiceHelper.loadSingle("shjh_jgqzcust", mapnumber.toArray());
if(mappingObj != null){
//结构性清账客户映射表中有值
entryss.set("shjh_needpushbill", true);//需要下推清账单
entryss.set("shjh_closingstatus", "B");//待清账
bill.set("shjh_qzzt", "B");//待清账
}else{
entryss.set("shjh_needpushbill", false);//不需要下推清账单
entryss.set("shjh_closingstatus", "A");//无需金蝶清账
bill.set("shjh_qzzt", "A");//无需金蝶清账
}
}
}else{
entryss.set("shjh_needpushbill", false);//不需要下推清账单
entryss.set("shjh_closingstatus", "A");//无需金蝶清账