有时显示在列表的字段值我们想对其进行部分处理,比如对手机号中间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;
}
}
推荐阅读