预付单加一个已关闭状态也能提交审批任务

This commit is contained in:
zhangzhiguo 2025-10-14 14:07:49 +08:00
parent a646532296
commit aff78c9e0a
2 changed files with 2 additions and 50 deletions

View File

@ -155,7 +155,7 @@ public class TaskApproveFormCkPlugin extends AbstractFormPlugin {
return;
}
}*/
if(!"G".equals(billstatus)) {
if(!"G".equals(billstatus) && !"I".equals(billstatus)) {
if("er_repaymentbill".equals(entityName)) {
this.getView().showErrorNotification(String.format("审批结算任务:当前单据的收款未完成,请完成收款后提交。"));
evt.setCancel(true);

View File

@ -82,55 +82,7 @@ public class TaskListPayStatusCkOp extends AbstractOperationServicePlugIn {
DynamicObject sourceBillObject = BusinessDataServiceHelper.loadSingle(entityName, new QFilter[]{accountTableFilter});
String billstatus = sourceBillObject.getString("billstatus");
//String billNo = sourceBillObject.getString("billno");
/*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;//付款方式不能为空
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));
//提交司库状态 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);
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("success".equals(tbskstatus) || "payed".equals(skpayresult)) {
success = true;
}
if("001".equals(settletypeNumber) || "002".equals(settletypeNumber)) {
isSk = true;
}
}else{
settletypeNotNull = false;
}
}
}else if(settletypeNotNull){
//this.getView().showErrorNotification(String.format("没有下游付款处理或代发处理单,无法进行审批。"));
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s】没有下推付款处理或代发处理单无法进行审批。",subject));
return;
}
if(isSk && !success && settletypeNotNull){
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s】付款处理单或代发处理单提交司库状态为同步成功或司库付款状态为已付款时才能审批通过。",subject));
return;
}
}*/
if(!"G".equals(billstatus)) {
if(!"G".equals(billstatus) && !"I".equals(billstatus)) {
if("er_repaymentbill".equals(entityName)) {
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s】的收款未完成请完成收款后操作。",subject));
}else if(