对列表查询的值进行替换原创
金蝶云社区-超华
超华
0人赞赏了该文章 608次浏览 未经作者许可,禁止转载编辑于2023年01月13日 15:00:37

      有时显示在列表的字段值我们想对其进行部分处理,比如对手机号中间4位使用*替换,对超过50个字符的字符串后面用...替换,可在插件中进行处理。


@Override

   public void beforeCreateListDataProvider(BeforeCreateListDataProviderArgs args) {

      super.beforeCreateListDataProvider(args);

      args.setListDataProvider(new MyListDataProvider());

   }


class MyListDataProvider extends ListDataProvider {

private final static String KEY_Log = "reportcontent";


/**

* 加载列表数据

* @remark 获取系统自动加载的列表数据,然后对内容进行修正

*/

@Override

public DynamicObjectCollection getData(int arg0, int arg1) {

DynamicObjectCollection rows = super.getData(arg0, arg1);

if (rows.isEmpty()) {

return rows;

}


// 自主设置KEY_Log列的内容

for (DynamicObject row : rows) {

String newLog = row.getString(KEY_Log).replaceAll("\r|\n", "");

if (newLog.length() > 50) {

newLog = newLog.substring(0, 47) + "...";

}

row.set(KEY_Log, newLog);

}


return rows;

}

}


图标赞 0
0人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!