功能描述:
online导出数据 可以通过配置 java增强修改导出的数据 只有 “开始” 事件有效
示例:
1.增强配置
2.编写java增强类
注意:java增强导出,需要实现的接口是:CgformEnhanceJavaListInter与常规的JAVA增强不同。
~~~@Component("cgformEnhanceExportDemo")public class CgformEnhanceExportDemo implements CgformEnhanceJavaListInter {@AutowiredISysBaseAPI sysBaseAPI;@AutowiredIOnlCgformFieldService onlCgformFieldService;@Overridepublic void execute(String tableName, List<Map<String, Object>> data) throws BusinessException {//系统全部分类字段List<SysCategoryModel> ls = sysBaseAPI.queryAllDSysCategory();for (Map<String, Object> map : data) {//针对字段fen_tree,进行导出树分类字典显示转换String val = oConvertUtils.getString(map.get("fen_tree"));if (oConvertUtils.isEmpty(val)) {continue;}List<SysCategoryModel> collect = ls.stream().filter(item -> item.getId().equals(val)).collect(Collectors.toList());if (collect != null && collect.size() != 0) {map.put("fen_tree", collect.get(0).getName());}//针对字段sel_search,进行导出表字典显示转换String sel_search = oConvertUtils.getString(map.get("sel_search"));if (oConvertUtils.isEmpty(sel_search)) {continue;}//获取字典表的配置信息OnlCgformField onlCgformField = onlCgformFieldService.queryFormFieldByTableNameAndField(tableName, "sel_search");if (onlCgformField == null || oConvertUtils.isEmpty(onlCgformField.getDictTable())) {continue;}List<String> dictTableName = sysBaseAPI.queryTableDictByKeys(onlCgformField.getDictTable(), onlCgformField.getDictText(), onlCgformField.getDictField(), new String[]{sel_search});if (dictTableName != null && dictTableName.size() > 0) {map.put("sel_search", dictTableName.get(0));}}}}~~~
3.访问online表数据
4.导出excel数据显示如下:
注意:java增强导出需要实现的接口是 :CgformEnhanceJavaListInter
