二开过滤条件常见的写法(持续更新)

栏目:s-hr cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

二开过滤条件常见的写法(持续更新)

场景:s-HR部分较为复杂的列表开发时无法通过视图配置过滤条件,此时需要二开代码添加过滤条件,本文提供一些常见过滤条件写法。

适用版本:所有版本

适用对象:二开人员

步骤:

 

重写父类(Listhandler)的getCustomFilter方法,返回一个自定义的过滤条件。

 

1.常规过滤写法:

FilterItemInfo filterItemInfo =new FilterItemInfo(compareField, compareValue,CompareType.xxx); 

 

2.拼接sql到过滤中

String sql = "SELECT FID FROM T_ORG_ADMIN WHERE FLONGNUMBER LIKE '%" + longNumber + "%'";

filterItemInfo = new FilterItemInfo(compareField, sql, CompareType.INNER);

 

3.不为空

filterInfo.getFilterItems().add(new FilterItemInfo(compareField, CompareValueType.EMPTY, CompareType.ISNOT));

 

4. Set 包含

Set<String> orgIdList = getOrgIds(subMap); //构造一个Set

if(orgIdList!=null&&orgIdList.size()>0){

filter.getFilterItems().add(new FilterItemInfo(compareField,orgIdList,CompareType.INCLUDE));

}

 

4.多个过滤条件连接

//条件1

FilterItemInfo filter=new FilterItemInfo(compareField,compareValue,CompareType.xxx); 

//条件2

filter.getFilterItems().add(new FilterItemInfo(compareField, compareValue,CompareType.xxx));

//条件 3 ……n

//设置条件1和条件2的关系,不设置默认就是and

filter.setMaskString("#0 or #1");

注:多个条件可以用括号组合 如:filter.setMaskString("#0 AND #1 AND (#2 OR #3)");


二开过滤条件的常见写法.docx

二开过滤条件常见的写法(持续更新)

场景:s-HR部分较为复杂的列表开发时无法通过视图配置过滤条件,此时需要二开代码添加过滤条件,本文提供一些常见过滤条件写法。适用版本:...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息