diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBOTPPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBOTPPlugin.java index 4ef4350..f8685ed 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBOTPPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBOTPPlugin.java @@ -39,14 +39,19 @@ public class BdimbondBOTPPlugin extends AbstractConvertPlugIn { //承销商 DynamicObjectCollection shkd_underwriterentry = targetDyobj.getDynamicObjectCollection("shkd_underwriterentry"); + shkd_underwriterentry.clear(); //评级机构 DynamicObjectCollection shkd_ratingagencyentry = targetDyobj.getDynamicObjectCollection("shkd_ratingagencyentry"); + shkd_ratingagencyentry.clear(); //审计机构 DynamicObjectCollection shkd_auditinstitutentry = targetDyobj.getDynamicObjectCollection("shkd_auditinstitutentry"); + shkd_auditinstitutentry.clear(); //律师事务所 DynamicObjectCollection shkd_lawofficeentry = targetDyobj.getDynamicObjectCollection("shkd_lawofficeentry"); + shkd_lawofficeentry.clear(); //其他中介机构 DynamicObjectCollection shkd_otherentry = targetDyobj.getDynamicObjectCollection("shkd_otherentry"); + shkd_otherentry.clear(); for (DynamicObject temp : winningbidderentry) { switch (temp.getString("e_midorgtypewin")){ @@ -62,7 +67,6 @@ public class BdimbondBOTPPlugin extends AbstractConvertPlugIn { } public void initEntrys(DynamicObjectCollection targetEntrys,DynamicObject orginEntry,String index){ - targetEntrys.clear(); DynamicObject entry = targetEntrys.addNew(); if ("0".equals(index)) index = ""; entry.set("shkd_midorgtype"+index,orginEntry.get("e_midorgtypewin")); diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBuildEntryPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBuildEntryPlugin.java index 910ba98..f669745 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBuildEntryPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BdimbondBuildEntryPlugin.java @@ -5,19 +5,27 @@ import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.dataentity.metadata.IDataEntityProperty; import kd.bos.entity.datamodel.IDataModel; import kd.bos.entity.datamodel.events.PropertyChangedArgs; +import kd.bos.form.field.BasedataEdit; +import kd.bos.form.field.RefBillEdit; +import kd.bos.form.field.events.BeforeF7SelectEvent; +import kd.bos.form.field.events.BeforeF7SelectListener; import kd.bos.form.plugin.AbstractFormPlugin; +import kd.bos.list.ListShowParameter; +import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.org.OrgUnitServiceHelper; import kd.bos.servicehelper.org.OrgViewType; +import kd.fi.bcm.common.util.CollectionUtil; import kd.sdk.plugin.Plugin; +import java.util.ArrayList; import java.util.Collections; import java.util.EventObject; import java.util.List; /** - *债券发行单据 自动组装债券发行 银行借款合同分录数据 + *债券发行计划单据 自动组装债券发行 银行借款合同分录数据 * 动态表单插件 */ public class BdimbondBuildEntryPlugin extends AbstractFormPlugin implements Plugin { @@ -116,6 +124,7 @@ public class BdimbondBuildEntryPlugin extends AbstractFormPlugin implements Plug model.setValue("shkd_entryamount",demo.get("drawamount"), index); model.setValue("shkd_entrystartdate",demo.get("bizdate"), index); model.setValue("shkd_entryexpiredate",demo.get("expiredate"), index); + break; } //查询范围内的银行贷款合同 @@ -129,8 +138,7 @@ public class BdimbondBuildEntryPlugin extends AbstractFormPlugin implements Plug model.setValue("shkd_borrowamount",demo.get("amount"), index); model.setValue("shkd_contractstartdate",demo.get("startdate"), index); model.setValue("shkd_contractenddate",demo.get("enddate"), index); + break; } } - - } \ No newline at end of file diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BondSelectEntryOrgPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BondSelectEntryOrgPlugin.java new file mode 100644 index 0000000..5884909 --- /dev/null +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc/BondSelectEntryOrgPlugin.java @@ -0,0 +1,63 @@ +package shkd.sys.sys.plugin.tmc; + +import kd.bos.bill.AbstractBillPlugIn; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.dataentity.metadata.IDataEntityProperty; +import kd.bos.form.field.RefBillEdit; +import kd.bos.form.field.events.BeforeF7SelectEvent; +import kd.bos.form.field.events.BeforeF7SelectListener; +import kd.bos.list.ListShowParameter; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.org.OrgUnitServiceHelper; +import kd.bos.servicehelper.org.OrgViewType; +import kd.fi.bcm.common.util.CollectionUtil; +import kd.sdk.plugin.Plugin; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.EventObject; +import java.util.List; + +/** + * 单据界面插件 + */ +public class BondSelectEntryOrgPlugin extends AbstractBillPlugIn implements Plugin, BeforeF7SelectListener { + + public void registerListener(EventObject e) { + super.registerListener(e); + RefBillEdit edit = this.getView().getControl("shkd_entrybillno"); + edit.addBeforeF7SelectListener(this); + + RefBillEdit edit2 = this.getView().getControl("shkd_entrycontractnum"); + edit2.addBeforeF7SelectListener(this); + } + + @Override + public void beforeF7Select(BeforeF7SelectEvent evt) { + ListShowParameter formShowParameter = (ListShowParameter) evt.getFormShowParameter(); + String formId = this.getView().getFormShowParameter().getFormId(); + //获取当前选择的债券注册额度 + DynamicObject org; + IDataEntityProperty property = evt.getProperty(); + String name = property.getName(); + List dataFilter = new ArrayList<>(); + if("shkd_entrycontractnum".equals(name) || "shkd_entrybillno".equals(name)){ + org= (DynamicObject)this.getModel().getValue("org"); + if(org == null) return; + Long orgId = (Long)org.get("id"); + ArrayList filterArr = new ArrayList<>(); + if("shkd_entrycontractnum".equals(name)){ + List allSubordinateOrgs = OrgUnitServiceHelper.getAllSubordinateOrgs(OrgViewType.BDControl, Collections.singletonList(orgId), true); + QFilter accountQFilter = new QFilter("org.id", QCP.in, allSubordinateOrgs); + dataFilter.add(accountQFilter); + }else{ + QFilter accountQFilter = new QFilter("org.id", QCP.equals, orgId); + dataFilter.add(accountQFilter); + } + formShowParameter.getListFilterParameter().getQFilters().addAll(dataFilter); + } + } +} \ No newline at end of file