列表常用条件中的分组基础资料F7列表的过滤原创
3人赞赏了该文章
1,382次浏览
编辑于2023年10月24日 15:00:17
关键词:常用过滤条件、分组基础资料、F7列表
一、需求
在采购订单列表的常用过滤条件中,添加一个基础资料,该基础资料绑定的物品(分组基础资料类型),要求弹出F7列表是对左树分组以及右表的列表数据做过滤,过滤要求是,只保留电子产品。
二、思路与方案
在过滤容器内F7弹出前的处理方法filterContainerBeforeF7Select完成右表的过滤,而物品F7列表左树的过滤需要在物品列表插件初始化事件initializeTree中设置。
三、实现过程
1、物品F7列表右表过滤
这里过滤右表的字段为分组字段的number字段进行过滤
/** * 采购订单列表插件 */ public class OrderFilterListPlugin extends AbstractListPlugin implements Plugin { @Override public void filterContainerBeforeF7Select(BeforeFilterF7SelectEvent args) { List<QFilter> qFilters = new ArrayList<>(); QFilter filter =new QFilter("group.number", QCP.equals, "Electronics"); qFilters.add(filter); args.setQfilters(qFilters);//设置过滤条件,过滤右表的数据 args.addCustomParam("group", "Electronics");//将单据的参数传递到基础资料页面,只查看电子产品类别的物品 super.filterContainerBeforeF7Select(args); } }
2、物品F7列表左树过滤
直接对物品的分组字段的编码number做过滤。
/** * 物品列表插件 */ public class GoodsFilterListPlugin extends AbstractTreeListPlugin implements Plugin { @Override public void initializeTree(EventObject e) { Map<String, Object> map=this.getView().getFormShowParameter().getCustomParams(); String group=(String) map.get("group"); if(StringUtils.isNotEmpty(group)) { this.getTreeModel().getTreeFilter().add(new QFilter("number", QCP.equals, group)); } super.initializeTree(e); } }
四、效果图
五、开发环境版本
V5.0.011
六、参考资料
sunp_showcloud-sunp_applyapp-2 …(11.79KB)
赞 3
3人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读