diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InContractSettleUnauditCheckOp.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InContractSettleUnauditCheckOp.java index 0b86b7c..e0e2664 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InContractSettleUnauditCheckOp.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/operate/InContractSettleUnauditCheckOp.java @@ -9,6 +9,7 @@ import kd.bos.entity.validate.AbstractValidator; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.DeleteServiceHelper; /** * 收入合同结算冲销单反审核校验是否生成收入合同冲销单 @@ -47,10 +48,20 @@ public class InContractSettleUnauditCheckOp extends AbstractOperationServicePlug } }*/ - DynamicObject[] load = BusinessDataServiceHelper.load("zcgj_ec_in_finaceconfirm", "id,zcgj_ec_in_contractid", new QFilter[]{new QFilter("zcgj_ec_in_contractid", QCP.equals, billId)}); + DynamicObject[] load = BusinessDataServiceHelper.load("zcgj_ec_in_finaceconfirm", "id,zcgj_ec_in_contractid,billstatus", new QFilter[]{new QFilter("zcgj_ec_in_contractid", QCP.equals, billId)}); if (load != null && load.length > 0) { - this.addFatalErrorMessage(extendedDataEntity, "收入合同结算单【"+billno+"】存在收入合同确认单,请删除收入合同确认单后再进行反审核操作。"); - return; + for (DynamicObject dynamicObject : load) { + String billstatus = dynamicObject.getString("billstatus"); + if("C".equals(billstatus) || "B".equals(billstatus)) { + this.addFatalErrorMessage(extendedDataEntity, "收入合同结算单【"+billno+"】存在收入合同确认单,请删除收入合同确认单后再进行反审核操作。"); + return; + }else{ + QFilter idFilter = new QFilter("id", "=", dynamicObject.getLong("id")); + QFilter statusFilter = new QFilter("billstatus", "=", "A"); + DeleteServiceHelper.delete("zcgj_ec_in_finaceconfirm", new QFilter[]{idFilter.and(statusFilter)}); + } + } + } } }