我的共享,任务审批时增加付款完成校验

This commit is contained in:
zhangzhiguo 2025-10-21 09:37:28 +08:00
parent ff5117b01e
commit 3198e70193
1 changed files with 0 additions and 54 deletions

View File

@ -101,60 +101,6 @@ public class TaskApproveFormCkPlugin extends AbstractFormPlugin {
DynamicObject sourceBillObject = BusinessDataServiceHelper.loadSingle(entityName, new QFilter[]{accountTableFilter}); DynamicObject sourceBillObject = BusinessDataServiceHelper.loadSingle(entityName, new QFilter[]{accountTableFilter});
String billstatus = sourceBillObject.getString("billstatus"); String billstatus = sourceBillObject.getString("billstatus");
/*if("er_publicreimbursebill".equals(entityName) || "er_prepaybill".equals(entityName) || "er_dailyreimbursebill".equals(entityName) || "er_tripreimbursebill".equals(entityName)) {
boolean success = false;
boolean isSk = false; //是否司库付款
boolean settletypeNotNull = true;//付款方式不能为空
//er_dailyreimbursebiller_publicreimbursebiller_tripreimbursebiller_prepaybill
//判断是否有司库付款通过付款单的结算方式
//获取下推的付款单判断付款单司库付款状态 提交司库状态cnbm_tbskstatussuccess 司库付款状态cnbm_skpayresultpayed
//cas_paybill
DynamicObject[] dynamicObjectOrg = null;
if("er_publicreimbursebill".equals(entityName) || "er_prepaybill".equals(entityName)) {//对公报销单预付单查询付款处理单
QFilter billTypeFilter = new QFilter("sourcebilltype",QCP.equals,entityName);
QFilter billIdFilter = new QFilter("sourcebillid",QCP.equals,Long.valueOf(billid));
//QFilter settletypeFilter = new QFilter("settletype.number",QCP.in,new String[]{"001","002"});
//提交司库状态 cnbm_tbskstatus司库付款状态cnbm_skpayresult
dynamicObjectOrg = BusinessDataServiceHelper.load("cas_paybill", "number,cnbm_tbskstatus,cnbm_skpayresult,settletype", new QFilter[]{billTypeFilter,billIdFilter});
} else //if ("er_dailyreimbursebill".equals(entityName) || "er_tripreimbursebill".equals(entityName))
{//差旅报销单费用报销单查询代发处理单
//代发处理 cas_agentpaybill
//提交司库状态:cnbm_tbskstatus 司库付款状态cnbm_skpayresult
//提交司库状态 cnbm_tbskstatus司库付款状态cnbm_skpayresult
QFilter billTypeFilter = new QFilter("sourcebilltype",QCP.equals,entityName);
QFilter billNumberFilter = new QFilter("sourcebillnumber",QCP.equals,billnumber);
// QFilter settletypeFilter = new QFilter("settletype.number",QCP.in,new String[]{"001","002"});
dynamicObjectOrg = BusinessDataServiceHelper.load("cas_agentpaybill", "number,cnbm_tbskstatus,cnbm_skpayresult,settletype", new QFilter[]{billTypeFilter,billNumberFilter});
}
if (dynamicObjectOrg != null && dynamicObjectOrg.length > 0) {
for (DynamicObject dynamicObject : dynamicObjectOrg) {
String tbskstatus = dynamicObject.getString("cnbm_tbskstatus");
String skpayresult = dynamicObject.getString("cnbm_skpayresult");
DynamicObject settletype = dynamicObject.getDynamicObject("settletype");
if(settletype !=null){
String settletypeNumber = settletype.getString("number");
if("001".equals(settletypeNumber) || "002".equals(settletypeNumber)) {
isSk = true;
if("success".equals(tbskstatus) || "payed".equals(skpayresult)) {
success = true;
}
}
}else{
settletypeNotNull = false;
}
}
}else if(settletypeNotNull){
this.getView().showErrorNotification(String.format("没有下推付款处理或代发处理单,无法进行审批。"));
evt.setCancel(true);
return;
}
if(isSk && !success && settletypeNotNull){
this.getView().showErrorNotification(String.format("付款处理单或代发处理单提交司库状态为同步成功或司库付款状态为已付款时,才能审批通过。"));
evt.setCancel(true);
return;
}
}*/
if(!"G".equals(billstatus) && !"I".equals(billstatus)) { if(!"G".equals(billstatus) && !"I".equals(billstatus)) {
if("er_repaymentbill".equals(entityName)) { if("er_repaymentbill".equals(entityName)) {
this.getView().showErrorNotification(String.format("审批结算任务:当前单据的收款未完成,请完成收款后提交。")); this.getView().showErrorNotification(String.format("审批结算任务:当前单据的收款未完成,请完成收款后提交。"));