共享任务校验逻辑调整
This commit is contained in:
parent
2f45abf406
commit
594a86c755
|
@ -15,6 +15,7 @@ import kd.ssc.task.formplugin.util.VoucherUtil;
|
||||||
|
|
||||||
import java.util.EventObject;
|
import java.util.EventObject;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 我的共享,任务审批时增加付款完成校验
|
* 我的共享,任务审批时增加付款完成校验
|
||||||
|
@ -42,12 +43,14 @@ public class TaskApproveFormCkPlugin extends AbstractFormPlugin {
|
||||||
Map<String, Object> customParams = view.getFormShowParameter().getCustomParams();
|
Map<String, Object> customParams = view.getFormShowParameter().getCustomParams();
|
||||||
Long billtypeid = 0L;
|
Long billtypeid = 0L;
|
||||||
Long tasktypeid = 0L;
|
Long tasktypeid = 0L;
|
||||||
|
Long sscid = 0L;
|
||||||
String billnumber = "";
|
String billnumber = "";
|
||||||
String billid = "";
|
String billid = "";
|
||||||
String billNo = null;
|
String billNo = null;
|
||||||
if (customParams != null) {
|
if (customParams != null) {
|
||||||
billtypeid = (Long)customParams.get("billtypeid");//单据类型id
|
billtypeid = (Long)customParams.get("billtypeid");//单据类型id
|
||||||
tasktypeid = (Long)customParams.get("tasktypeid");//任务类型id
|
tasktypeid = (Long)customParams.get("tasktypeid");//任务类型id
|
||||||
|
sscid = (Long)customParams.get("sscid");//任务类型id
|
||||||
billnumber = (String)customParams.get("billnumber");//单据编码(单据标识 entityName)
|
billnumber = (String)customParams.get("billnumber");//单据编码(单据标识 entityName)
|
||||||
billid = (String)customParams.get("billid");//业务单据id
|
billid = (String)customParams.get("billid");//业务单据id
|
||||||
billNo = VoucherUtil.getTaskBillNo(billid);//业务单据编号
|
billNo = VoucherUtil.getTaskBillNo(billid);//业务单据编号
|
||||||
|
@ -55,17 +58,33 @@ public class TaskApproveFormCkPlugin extends AbstractFormPlugin {
|
||||||
IDataModel model = this.getModel();
|
IDataModel model = this.getModel();
|
||||||
String operation = (String)model.getValue("operationgroupfield");
|
String operation = (String)model.getValue("operationgroupfield");
|
||||||
if ("1".equals(operation)) { //如果审批操作是通过
|
if ("1".equals(operation)) { //如果审批操作是通过
|
||||||
if(StringUtils.isNotBlank(billNo) && StringUtils.isNotBlank(billid) && StringUtils.isNotBlank(billnumber) ) {
|
QFilter tasktypeFilter = new QFilter("orgfield.id", QCP.equals,sscid);
|
||||||
QFilter accountTableFilter = new QFilter("id", QCP.equals,Long.valueOf(billid));
|
tasktypeFilter.and(new QFilter("tasklevel", QCP.equals,"2"));//任务类型为:结算时
|
||||||
DynamicObject sourceBillObject = BusinessDataServiceHelper.loadSingle(billnumber, new QFilter[]{accountTableFilter});
|
DynamicObject[] tasktypeArray = BusinessDataServiceHelper.load("task_tasktype", "id", new QFilter[]{tasktypeFilter});
|
||||||
String billstatus = sourceBillObject.getString("billstatus");
|
if(tasktypeArray != null && tasktypeArray.length > 0){
|
||||||
if(!"G".equals(billstatus)) {
|
DynamicObject tasktype = tasktypeArray[0];
|
||||||
if("er_repaymentbill".equals(billnumber)) {
|
if(tasktypeid.getLong("id") == tasktype.getLong("id")) {
|
||||||
this.getView().showErrorNotification(String.format("审批结算任务:当前单据的收款未完成,请完成收款后提交。"));
|
if(StringUtils.isNotBlank(billNo) && StringUtils.isNotBlank(billid) && StringUtils.isNotBlank(billnumber) ) {
|
||||||
evt.setCancel(true);
|
QFilter accountTableFilter = new QFilter("id", QCP.equals,Long.valueOf(billid));
|
||||||
}else{
|
DynamicObject sourceBillObject = BusinessDataServiceHelper.loadSingle(billnumber, new QFilter[]{accountTableFilter});
|
||||||
this.getView().showErrorNotification(String.format("审批结算任务:当前单据的付款未完成,请完成付款后提交。"));
|
String billstatus = sourceBillObject.getString("billstatus");
|
||||||
evt.setCancel(true);
|
if(!"G".equals(billstatus)) {
|
||||||
|
if("er_repaymentbill".equals(billnumber)) {
|
||||||
|
this.getView().showErrorNotification(String.format("审批结算任务:当前单据的收款未完成,请完成收款后提交。"));
|
||||||
|
evt.setCancel(true);
|
||||||
|
}else if(
|
||||||
|
"er_dailyreimbursebill".equals(billnumber) || //费用报销单
|
||||||
|
"er_publicreimbursebill".equals(billnumber) || //对公报销的呢
|
||||||
|
"er_tripreimbursebill".equals(billnumber) || //差旅报销单
|
||||||
|
"er_dailyloanbill".equals(billnumber) || //借款单
|
||||||
|
"er_prepaybill".equals(billnumber) || //预付单
|
||||||
|
"er_applypaybill".equals(billnumber) || //付款申请单
|
||||||
|
"cas_paybill".equals(billnumber) //付款处理单
|
||||||
|
){
|
||||||
|
this.getView().showErrorNotification(String.format("审批结算任务:当前单据的付款未完成,请完成付款后提交。"));
|
||||||
|
evt.setCancel(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,7 +69,7 @@ public class TaskListPayStatusCkOp extends AbstractOperationServicePlugIn {
|
||||||
DynamicObject tasktypeid = dataEntity.getDynamicObject("tasktypeid");
|
DynamicObject tasktypeid = dataEntity.getDynamicObject("tasktypeid");
|
||||||
DynamicObject sscid = dataEntity.getDynamicObject("sscid");
|
DynamicObject sscid = dataEntity.getDynamicObject("sscid");
|
||||||
QFilter tasktypeFilter = new QFilter("orgfield.id", QCP.equals,sscid.getLong("id"));
|
QFilter tasktypeFilter = new QFilter("orgfield.id", QCP.equals,sscid.getLong("id"));
|
||||||
tasktypeFilter.and(new QFilter("tasklevel", QCP.equals,"2"));
|
tasktypeFilter.and(new QFilter("tasklevel", QCP.equals,"2"));//任务类型为:结算时
|
||||||
DynamicObject[] tasktypeArray = BusinessDataServiceHelper.load("task_tasktype", "id", new QFilter[]{tasktypeFilter});
|
DynamicObject[] tasktypeArray = BusinessDataServiceHelper.load("task_tasktype", "id", new QFilter[]{tasktypeFilter});
|
||||||
if(tasktypeArray != null && tasktypeArray.length > 0){
|
if(tasktypeArray != null && tasktypeArray.length > 0){
|
||||||
DynamicObject tasktype = tasktypeArray[0];
|
DynamicObject tasktype = tasktypeArray[0];
|
||||||
|
@ -84,7 +84,15 @@ public class TaskListPayStatusCkOp extends AbstractOperationServicePlugIn {
|
||||||
if(!"G".equals(billstatus)) {
|
if(!"G".equals(billstatus)) {
|
||||||
if("er_repaymentbill".equals(entityName)) {
|
if("er_repaymentbill".equals(entityName)) {
|
||||||
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s-%s】的收款未完成,请完成收款后操作。",billnumber,subject));
|
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s-%s】的收款未完成,请完成收款后操作。",billnumber,subject));
|
||||||
}else{
|
}else if(
|
||||||
|
"er_dailyreimbursebill".equals(entityName) || //费用报销单
|
||||||
|
"er_publicreimbursebill".equals(entityName) || //对公报销的呢
|
||||||
|
"er_tripreimbursebill".equals(entityName) || //差旅报销单
|
||||||
|
"er_dailyloanbill".equals(entityName) || //借款单
|
||||||
|
"er_prepaybill".equals(entityName) || //预付单
|
||||||
|
"er_applypaybill".equals(entityName) || //付款申请单
|
||||||
|
"cas_paybill".equals(entityName) //付款处理单
|
||||||
|
) {
|
||||||
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s-%s】的付款未完成,请完成付款后操作。",billnumber,subject));
|
this.addFatalErrorMessage(extendedDataEntity, String.format("审批结算任务:【%s-%s】的付款未完成,请完成付款后操作。",billnumber,subject));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue