资金计划申请所属组织过滤

This commit is contained in:
zhangzhiguo 2025-11-21 09:35:26 +08:00
parent 34a8d9eda0
commit c3cf159a4a
1 changed files with 30 additions and 1 deletions

View File

@ -13,6 +13,9 @@ import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.bos.form.ShowType; import kd.bos.form.ShowType;
import kd.bos.form.control.Toolbar; import kd.bos.form.control.Toolbar;
import kd.bos.form.control.events.ItemClickEvent; import kd.bos.form.control.events.ItemClickEvent;
import kd.bos.form.field.BasedataEdit;
import kd.bos.form.field.events.BeforeF7SelectEvent;
import kd.bos.form.field.events.BeforeF7SelectListener;
import kd.bos.orm.query.QCP; import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter; import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
@ -26,7 +29,7 @@ import java.util.*;
/** /**
* 资金计划申请插件 * 资金计划申请插件
*/ */
public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin { public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin , BeforeF7SelectListener {
//注册监听按钮 //注册监听按钮
@Override @Override
@ -35,6 +38,12 @@ public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin
Toolbar toolbar = this.getView().getControl("tbmain"); Toolbar toolbar = this.getView().getControl("tbmain");
toolbar.addClickListener(this); toolbar.addClickListener(this);
super.registerListener(e); super.registerListener(e);
BasedataEdit applidepart = this.getControl("zcgj_applidepart"); //费用项目
if (applidepart != null) {
applidepart.addBeforeF7SelectListener(this);
}
} }
//操作栏点击事件 //操作栏点击事件
@ -622,4 +631,24 @@ public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin
} }
} }
@Override
public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
String name = beforeF7SelectEvent.getProperty().getName();
if(name.equals("zcgj_applidepart")){
//QFilter structure = new QFilter("structure.longnumber", QCP.like, "10000000!10006431%");
Object org = this.getModel().getValue("zcgj_org");
if(org!=null){
DynamicObject zcgjOrg = (DynamicObject) org;
String number = zcgjOrg.getString("number");
List<QFilter> qFilterList = new ArrayList<>();
if("cw000573".equals(number)){//山东莒县
qFilterList.add(new QFilter("structure.longnumber", QCP.like,"%cw000572%"));
}else{
qFilterList.add(new QFilter("structure.longnumber", QCP.like,"%"+number+"%"));
}
beforeF7SelectEvent.setCustomQFilters(qFilterList);
}
}
}
} }