如何获取过滤器筛选条件的这个值(红色圈出部分)?

遇到一个导出Excel需求,需要获取用户自定义添加的过滤条件,请问有API能获取这个值吗?
image

你好,先参考一个这个帖子,能否在代码里面获得当前filter的过滤条件

有问题再沟通。

getCondition() 只能得到筛选条件名称和筛选值,但是类似包含、大于、小于、不等于这些符号却无法获取,想问问有没有直接可以拿到包含“in、>、<、< >”这样字符串的API呢?
dataLoader.getQuery()并没有包含过滤器筛选条件的SQL片段,dataLoader.getCondition()中包含了该SQL片段却无法获取它们。
下图展示的是getCondition()的内容,其中entries无法获取,只能获取parameters
image

需要从FilterDelegateImpl里获取,这个反射可以得到

List<AbstractCondition> conditions=this.docsFilterDelegate.getConditionsTree().toConditionsList();
for (AbstractCondition condition : conditions) {
condition.getOperator()
}

只需要把前端组件Filter强制转型成WebFilter就可以获取FilterDelegate了,我就说应该有这样的API,有了filterDelegate.getConditionsTree().toConditionsList(),就可以直接拿前端过滤器的筛选信息了,超级感谢!!

1 个赞