Merge remote-tracking branch 'origin/main' into main
This commit is contained in:
commit
c876302e05
sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/tmc
|
@ -0,0 +1,39 @@
|
|||
package shkd.sys.sys.plugin.tmc;
|
||||
|
||||
import kd.bos.bill.AbstractBillPlugIn;
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.entity.datamodel.IDataModel;
|
||||
import kd.bos.form.control.Control;
|
||||
import kd.bos.form.field.TextEdit;
|
||||
import kd.sdk.plugin.Plugin;
|
||||
|
||||
import java.util.EventObject;
|
||||
|
||||
/**
|
||||
* 债券注册额度上拉中介机构招标遴选按钮插件
|
||||
* 单据界面插件
|
||||
*/
|
||||
public class BdimBondIntSelectPlugin extends AbstractBillPlugIn implements Plugin {
|
||||
|
||||
@Override
|
||||
public void registerListener(EventObject e){
|
||||
super.registerListener(e);
|
||||
TextEdit shkd_intermediaryselect = getControl("shkd_intermediaryselect");
|
||||
shkd_intermediaryselect.addClickListener(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void click(EventObject evt){
|
||||
Control source = (Control) evt.getSource();
|
||||
IDataModel model = this.getView().getModel();
|
||||
DynamicObject dataEntity = model.getDataEntity();
|
||||
String key = source.getKey();
|
||||
if("shkd_intermediaryselect".equals(key)){
|
||||
this.getView().invokeOperation("draw");
|
||||
|
||||
// OperationServiceHelper.executeOperate("draw","bdim_bond_limit",new DynamicObject[]{dataEntity}, OperateOption.create());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,79 @@
|
|||
package shkd.sys.sys.plugin.tmc;
|
||||
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||
import kd.bos.entity.BillEntityType;
|
||||
import kd.bos.entity.ExtendedDataEntity;
|
||||
import kd.bos.entity.botp.plugin.AbstractConvertPlugIn;
|
||||
import kd.bos.entity.botp.plugin.args.AfterFieldMappingEventArgs;
|
||||
import kd.bos.entity.botp.runtime.ConvertConst;
|
||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 中介招标遴选下推债券注册额度转换路线botp插件
|
||||
* 动态表单插件
|
||||
*/
|
||||
public class BdimbondBOTPPlugin extends AbstractConvertPlugIn {
|
||||
|
||||
@Override
|
||||
public void afterFieldMapping(AfterFieldMappingEventArgs e){
|
||||
super.afterFieldMapping(e);
|
||||
BillEntityType srcMainType = this.getSrcMainType();//源单标识
|
||||
String srcMainTypeName = srcMainType.getName();//源单名称
|
||||
BillEntityType tgtMainType = this.getTgtMainType();//目标单标识
|
||||
String tgtMainTypeName = tgtMainType.getName();//目标单名称
|
||||
int index = 0;
|
||||
Object srcMainId = "";
|
||||
ExtendedDataEntity[] extendedDataEntities = e.getTargetExtDataEntitySet().FindByEntityKey(tgtMainTypeName);//获取目标单数据
|
||||
for (int i = 0; i < extendedDataEntities.length; i++) {
|
||||
ExtendedDataEntity extendedDataEntity = extendedDataEntities[i];
|
||||
DynamicObject targetDyobj = extendedDataEntity.getDataEntity();//目标单数据
|
||||
List<DynamicObject> srcRows = (List<DynamicObject>) extendedDataEntity.getValue(ConvertConst.ConvExtDataKey_SourceRows);//获取源单数据
|
||||
DynamicObject srcRow = srcRows.get(0);
|
||||
Object srcId = e.getFldProperties().get("id").getValue(srcRow);//获取源单id
|
||||
DynamicObject sourceDyobj = BusinessDataServiceHelper.loadSingle(srcId, srcMainTypeName);//查询源单数据
|
||||
//源单分录
|
||||
DynamicObjectCollection winningbidderentry = sourceDyobj.getDynamicObjectCollection("winningbidderentry");
|
||||
|
||||
//承销商
|
||||
DynamicObjectCollection shkd_underwriterentry = targetDyobj.getDynamicObjectCollection("shkd_underwriterentry");
|
||||
//评级机构
|
||||
DynamicObjectCollection shkd_ratingagencyentry = targetDyobj.getDynamicObjectCollection("shkd_ratingagencyentry");
|
||||
//审计机构
|
||||
DynamicObjectCollection shkd_auditinstitutentry = targetDyobj.getDynamicObjectCollection("shkd_auditinstitutentry");
|
||||
//律师事务所
|
||||
DynamicObjectCollection shkd_lawofficeentry = targetDyobj.getDynamicObjectCollection("shkd_lawofficeentry");
|
||||
//其他中介机构
|
||||
DynamicObjectCollection shkd_otherentry = targetDyobj.getDynamicObjectCollection("shkd_otherentry");
|
||||
|
||||
for (DynamicObject temp : winningbidderentry) {
|
||||
switch (temp.getString("e_midorgtypewin")){
|
||||
case "underwriter":initEntrys(shkd_underwriterentry,temp,"0");break;
|
||||
case "ratingagency":initEntrys(shkd_ratingagencyentry,temp,"2");break;
|
||||
case "auditinstitution":initEntrys(shkd_auditinstitutentry,temp,"3");break;
|
||||
case "lawoffice":initEntrys(shkd_lawofficeentry,temp,"4");break;
|
||||
case "other":initEntrys(shkd_otherentry,temp,"5");break;
|
||||
default:break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
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"));
|
||||
entry.set("shkd_underwritertype"+index,orginEntry.get("e_underwritertypewin"));
|
||||
entry.set("shkd_midorgname"+index,orginEntry.get("e_midorgname"));
|
||||
entry.set("shkd_openingdate"+index,orginEntry.get("e_openingdatewin"));
|
||||
entry.set("shkd_fee"+index,orginEntry.get("e_fee"));
|
||||
entry.set("shkd_feerate"+index,orginEntry.get("e_feerate"));
|
||||
entry.set("shkd_bidwinningnotice"+index,orginEntry.get("e_bidwinningnotice"));
|
||||
entry.set("shkd_contract"+index,orginEntry.get("e_contract"));
|
||||
entry.set("shkd_explain"+index,orginEntry.get("e_explainwin"));
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,101 @@
|
|||
package shkd.sys.sys.plugin.tmc;
|
||||
|
||||
import kd.bos.base.AbstractBasePlugIn;
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.dataentity.resource.ResManager;
|
||||
import kd.bos.form.CloseCallBack;
|
||||
import kd.bos.form.ShowFormHelper;
|
||||
import kd.bos.form.control.Control;
|
||||
import kd.bos.form.field.BasedataEdit;
|
||||
import kd.bos.form.field.TextEdit;
|
||||
import kd.bos.form.field.events.BeforeF7SelectEvent;
|
||||
import kd.bos.form.field.events.BeforeF7SelectListener;
|
||||
import kd.bos.list.ListShowParameter;
|
||||
import kd.bos.orm.query.QFilter;
|
||||
import kd.sdk.plugin.Plugin;
|
||||
import kd.tmc.fbp.common.util.EmptyUtil;
|
||||
|
||||
import java.util.EventObject;
|
||||
|
||||
/**
|
||||
* 基础资料插件
|
||||
*/
|
||||
public class BondSeletRatingPlugin extends AbstractBasePlugIn implements BeforeF7SelectListener {
|
||||
|
||||
public void registerListener(EventObject e) {
|
||||
super.registerListener(e);
|
||||
BasedataEdit control = (BasedataEdit)this.getControl("ratingagency");
|
||||
if (control != null) {
|
||||
control.addBeforeF7SelectListener(this);
|
||||
}
|
||||
|
||||
BasedataEdit eUnderWriter = (BasedataEdit)this.getControl("e_underwriter");
|
||||
if (eUnderWriter != null) {
|
||||
eUnderWriter.addBeforeF7SelectListener(this);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void initRatingScale() {
|
||||
TextEdit ratingText = (TextEdit)this.getControl("ratingscale");
|
||||
if (ratingText != null) {
|
||||
ratingText.addButtonClickListener(this);
|
||||
}
|
||||
|
||||
TextEdit debtRatingText = (TextEdit)this.getControl("debtratingscale");
|
||||
if (debtRatingText != null) {
|
||||
debtRatingText.addButtonClickListener(this);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void click(EventObject evt) {
|
||||
super.click(evt);
|
||||
Control src = (Control)evt.getSource();
|
||||
switch (src.getKey()) {
|
||||
case "ratingscale":
|
||||
this.showRatingSelectForm("ratingscale");
|
||||
break;
|
||||
case "debtratingscale":
|
||||
this.showRatingSelectForm("debtratingscale");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void showRatingSelectForm(String actionId) {
|
||||
DynamicObject ratingAgency = (DynamicObject)this.getModel().getValue("ratingagency");
|
||||
if (EmptyUtil.isEmpty(ratingAgency)) {
|
||||
this.getView().showTipNotification(ResManager.loadKDString("请先选择评级机构。", "BondCreditRatingEdit_0", "tmc-cfm-formplugin", new Object[0]));
|
||||
} else {
|
||||
ListShowParameter showParameter = ShowFormHelper.createShowListForm("tbd_ratingscale", Boolean.FALSE);
|
||||
showParameter.setCustomParam("ismergerows", Boolean.FALSE);
|
||||
showParameter.setCloseCallBack(new CloseCallBack(this, actionId));
|
||||
QFilter qFilter = new QFilter("ratingagency.id", "=", ratingAgency.getPkValue());
|
||||
QFilter qFilter_entryFilter;
|
||||
if("ratingscale".equals(actionId)){
|
||||
qFilter_entryFilter = new QFilter("ratingagency.entrys.grade", "like", "%主体%");
|
||||
}else{
|
||||
qFilter_entryFilter = new QFilter("ratingagency.entrys.grade", "not like", "%主体%");
|
||||
}
|
||||
|
||||
QFilter qFilter_enable = new QFilter("enable", "=", "1");
|
||||
showParameter.getListFilterParameter().setFilter(qFilter.and(qFilter_enable).and(qFilter_entryFilter));
|
||||
this.getView().showForm(showParameter);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
|
||||
switch (((Control)beforeF7SelectEvent.getSource()).getKey()) {
|
||||
case "ratingagency":
|
||||
QFilter qFilter = new QFilter("orgtype", "=", "ratingagency");
|
||||
ListShowParameter showParameter = (ListShowParameter)beforeF7SelectEvent.getFormShowParameter();
|
||||
showParameter.getListFilterParameter().getQFilters().add(qFilter);
|
||||
break;
|
||||
case "e_underwriter":
|
||||
QFilter orgTypeFilter = new QFilter("orgtype", "=", "underwriter");
|
||||
ListShowParameter parameter = (ListShowParameter)beforeF7SelectEvent.getFormShowParameter();
|
||||
parameter.getListFilterParameter().getQFilters().add(orgTypeFilter);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,72 @@
|
|||
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.entity.OrmLocaleValue;
|
||||
import kd.bos.dataentity.metadata.IDataEntityProperty;
|
||||
import kd.bos.form.IFormView;
|
||||
import kd.bos.form.field.BasedataEdit;
|
||||
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.fi.bcm.common.util.CollectionUtil;
|
||||
import kd.sdk.plugin.Plugin;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 债券发行/债券发行计划 关联注册额度,实现承销商过滤
|
||||
* 单据界面插件
|
||||
*/
|
||||
public class LoancontractF7Plugin extends AbstractBillPlugIn implements Plugin, BeforeF7SelectListener {
|
||||
|
||||
@Override
|
||||
public void registerListener(EventObject e) {
|
||||
super.registerListener(e);
|
||||
IFormView view = this.getView();
|
||||
//监听债券F7数据选择
|
||||
BasedataEdit affiliation = view.getControl("e_underwriter");
|
||||
affiliation.addBeforeF7SelectListener(this);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void beforeF7Select(BeforeF7SelectEvent evt) {
|
||||
ListShowParameter formShowParameter = (ListShowParameter) evt.getFormShowParameter();
|
||||
String formId = this.getView().getFormShowParameter().getFormId();
|
||||
//获取当前选择的债券注册额度
|
||||
DynamicObject shkd_bondlimit;
|
||||
IDataEntityProperty property = evt.getProperty();
|
||||
String name = property.getName();
|
||||
List<QFilter> dataFilter = new ArrayList<>();
|
||||
if("e_underwriter".equals(name)){
|
||||
//shkd_cfm_loancontrac_ext2 : 债券发行计划 其他 : 债券发行
|
||||
if("cfm_loancontract_bo".equals(formId)){
|
||||
shkd_bondlimit= (DynamicObject)this.getModel().getValue("syncoccupybondlimit");
|
||||
if(shkd_bondlimit == null) return;
|
||||
}else{
|
||||
shkd_bondlimit= (DynamicObject)this.getModel().getValue("occupybondlimit");
|
||||
if(shkd_bondlimit == null) return;
|
||||
}
|
||||
DynamicObject bdim_bond_limit = BusinessDataServiceHelper.loadSingle(shkd_bondlimit.get("id"), "bdim_bond_limit");
|
||||
DynamicObjectCollection shkd_underwriterentry = bdim_bond_limit.getDynamicObjectCollection("shkd_underwriterentry");
|
||||
if (CollectionUtil.isEmpty(shkd_underwriterentry)) {
|
||||
return;
|
||||
}
|
||||
ArrayList<String> filterArr = new ArrayList<>();
|
||||
shkd_underwriterentry.forEach((temp)->{
|
||||
filterArr.add(temp.getString("shkd_midorgname.number"));
|
||||
});
|
||||
//将set转换成数组
|
||||
QFilter accountQFilter = new QFilter("number", QCP.in, filterArr);
|
||||
dataFilter.add(accountQFilter);
|
||||
}
|
||||
//formShowParameter.getListFilterParameter().setQFilters(dataFilter);
|
||||
formShowParameter.getListFilterParameter().getQFilters().addAll(dataFilter);
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue