diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/operation/GuaranteeContractAuditOpPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/operation/GuaranteeContractAuditOpPlugin.java new file mode 100644 index 0000000..eed6253 --- /dev/null +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/operation/GuaranteeContractAuditOpPlugin.java @@ -0,0 +1,57 @@ +package shkd.sys.sys.plugin.operation; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.plugin.AbstractOperationServicePlugIn; +import kd.bos.entity.plugin.PreparePropertysEventArgs; +import kd.bos.entity.plugin.args.AfterOperationArgs; +import kd.bos.entity.plugin.args.BeginOperationTransactionArgs; +import kd.bos.logging.Log; +import kd.bos.logging.LogFactory; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; + +public class GuaranteeContractAuditOpPlugin extends AbstractOperationServicePlugIn { + + private static final Log logger = LogFactory.getLog(GuaranteeContractAuditOpPlugin.class); + @Override + public void onPreparePropertys(PreparePropertysEventArgs e) { + super.onPreparePropertys(e); + e.getFieldKeys().add("pletgageentity"); + e.getFieldKeys().add("pletgageentity.p_pleg"); + e.getFieldKeys().add("creditortext"); + e.getFieldKeys().add("dutyamount"); + e.getFieldKeys().add("begindate"); + e.getFieldKeys().add("enddate"); + } + + @Override + public void beginOperationTransaction(BeginOperationTransactionArgs e) { + DynamicObject[] dataEntities = e.getDataEntities(); + for (DynamicObject dataEntity : dataEntities) { + String billno = dataEntity.getString("billno"); + DynamicObjectCollection cpletgageentity = dataEntity.getDynamicObjectCollection("pletgageentity");//抵质押物分录 + for (DynamicObject dynamicObject : cpletgageentity) { + DynamicObject cp_pleg = dynamicObject.getDynamicObject("p_pleg"); + if (cp_pleg!=null){ + DynamicObject gm_pledgebill = BusinessDataServiceHelper.loadSingle(cp_pleg.getPkValue(), "gm_pledgebill"); + DynamicObjectCollection shkd_dbhtentrys = gm_pledgebill.getDynamicObjectCollection("shkd_dbhtentry"); + DynamicObject shkd_dbhtentry = shkd_dbhtentrys.addNew(); + shkd_dbhtentry.set("shkd_djbh",billno); + shkd_dbhtentry.set("shkd_refbillfield",dataEntity); + shkd_dbhtentry.set("shkd_creditortext",dataEntity.getString("creditortext")); + shkd_dbhtentry.set("shkd_dutyamount",dataEntity.getString("dutyamount")); + shkd_dbhtentry.set("shkd_begindate",dataEntity.getString("begindate")); + shkd_dbhtentry.set("shkd_enddate",dataEntity.getString("enddate")); + SaveServiceHelper.save(new DynamicObject[]{gm_pledgebill}); + } + } + } + } + + @Override + public void afterExecuteOperationTransaction(AfterOperationArgs e) { + super.afterExecuteOperationTransaction(e); + + } +} diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/operation/GuaranteeContractUnAuditOpPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/operation/GuaranteeContractUnAuditOpPlugin.java new file mode 100644 index 0000000..b153ae4 --- /dev/null +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/operation/GuaranteeContractUnAuditOpPlugin.java @@ -0,0 +1,59 @@ +package shkd.sys.sys.plugin.operation; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.plugin.AbstractOperationServicePlugIn; +import kd.bos.entity.plugin.PreparePropertysEventArgs; +import kd.bos.entity.plugin.args.AfterOperationArgs; +import kd.bos.entity.plugin.args.BeginOperationTransactionArgs; +import kd.bos.logging.Log; +import kd.bos.logging.LogFactory; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; + +import java.util.ArrayList; +import java.util.List; + +public class GuaranteeContractUnAuditOpPlugin extends AbstractOperationServicePlugIn { + + private static final Log logger = LogFactory.getLog(GuaranteeContractUnAuditOpPlugin.class); + + @Override + public void onPreparePropertys(PreparePropertysEventArgs e) { + super.onPreparePropertys(e); + e.getFieldKeys().add("cpletgageentity.cp_pleg"); + + } + + + @Override + public void beginOperationTransaction(BeginOperationTransactionArgs e) { + DynamicObject[] dataEntities = e.getDataEntities(); + for (DynamicObject dataEntity : dataEntities) { + String billno = dataEntity.getString("billno"); + DynamicObjectCollection cpletgageentity = dataEntity.getDynamicObjectCollection("pletgageentity");//抵质押物分录 + for (DynamicObject dynamicObject : cpletgageentity) { + DynamicObject cp_pleg = dynamicObject.getDynamicObject("p_pleg"); + if (cp_pleg!=null){ + DynamicObject gm_pledgebill = BusinessDataServiceHelper.loadSingle(cp_pleg.getPkValue(), "gm_pledgebill"); + DynamicObjectCollection shkd_dbhtentrys = gm_pledgebill.getDynamicObjectCollection("shkd_dbhtentry"); + List removedynamicObjects = new ArrayList<>(); + for (DynamicObject shkd_dbhtentry : shkd_dbhtentrys) { + String shkd_djbh = shkd_dbhtentry.getString("shkd_djbh"); + if (billno.equals(shkd_djbh)){ + removedynamicObjects.add(shkd_dbhtentry); + } + } + shkd_dbhtentrys.removeAll(removedynamicObjects); + SaveServiceHelper.save(new DynamicObject[]{gm_pledgebill}); + } + } + } + } + + @Override + public void afterExecuteOperationTransaction(AfterOperationArgs e) { + super.afterExecuteOperationTransaction(e); + + } +}