一、导入
1、标准导入
背景:直接配上标准的导入按钮即可使用,将excel文件中的数据导入系统或将系统内数据导出成excel文件
(1)标准导入按钮配置
若新建弹性模型或标准模型无导入导出按钮,需要导入 导出功能。
第一种:简单配置按钮,即配即用,则可在当前列表元数据配置的 "actions": []里配置标准的导入导出按钮,COMMON_IMPORT和COMMON_EXPORT
{"action": "COMMON_IMPORT", "left": true, "data": {}, "key": "common_import", "label": "标准导入" }, {"action": "COMMON_EXPORT", "left": true, "data": {}, "key": "common_export", "label": "标准导出" }
第二种:在标准按钮基础上配置参数,如指定导出的文件名、控制按钮的使用角色等,具体参数及释义如下
注:仅使用平台标准导入模板时,"is_from_config"只能设置成flase
{ "action": "COMMON_IMPORT", #【必填】按钮调用的方法,COMMON_IMPORT是框架通用导入。 "label" : "模版型导入", #【必填】按钮名称。 "key" : "common_import", #【必填】按钮的key,即唯一键,与其他按钮区分的唯一标识。 "data":{ #【选填】导入按钮的一些个性设置,以下均为选填。 "is_from_config": false, # 是否使用个性化模板,false为否。 "category": "whatever", # 模型名或者个性化模板的common_imp_setting.json映射名称。不用个性化模板最好别设置。 "file_name": "自己想怎么命名怎么命名.xlsx", # 自定义下载的导入模板文件名 "import_class": "", # 使用的导入类。业务老师提供了,则使用业务老师提供的,否则不写。是固定的,不要自己瞎写。 "role": "", # 导入角色。 "use_column_defs": false, # 多表头导入 "data_row": "3", # 导入时,数据从excel文件的哪一行开始读取。默认是:导入文件有描述行,则从第三行开始读取,否则从第二行开始。 "imp_tips": ["1、今天简单说以下几点", "。", "。。"], # 自定义导入提示 "show_business_key": false, # 显示导入依据 "choose_method": false, # 是否展示导入模式选择 "imp_method": 0, # 默认导入模式(0:仅新增,1:仅编辑,2:有则编辑无则新增) "empty_selector": false, # 是否展示选择器(默认为true) false: 不展示, true: 展示 "empty_mode": 1, # 默认值(默认为1) 0: 正常导入(编辑时覆盖), 1: 跳过 "action_state": "", # 弹窗内部按钮的场景,修改ImpActionVirtual不同场景的list元数据来配置不同的弹窗内按钮,详见【导入导出小案例-9】 "filter_org": [], # 过滤组织(需要配合charge_role使用,进一步控制权限范围内的部门) "extend_property": { "map_warn": false, # 当导入文件中的列名与info元数据中的列名不匹配时,是否直接拦截导入。默认为否(false)。 "data_plugins": {}, # 自定义导入插件,详见【3.自定义配置导入插件】 "charge_role": [{ # 用于校验权限。 "field": "dept_id", # 需要校验部门权限的字段 "role": "cm-org-emp", # 权限范围 "type": "dept" # 类型(部门校验) }, { "field": "employee", # 需要校验人员权限的字段 "role": "cm-org-emp", # 权限范围 "type": "emp" # 类型(人员校验) }], "extra_property": { "field_state": {"字段1的key": "想要的场景"}, # 字典类型。当一个字段为关联对象类型时,可以设置他关联对象的场景进行下拉选项的过滤。详见【导入导出案例】 "state": "imp", # 导入场景。自定义是以哪个场景的info元数据为依据。 } } } },
(2)导入弹窗中导入模式、导入依据介绍
导入弹窗中会有三种导入模式,模式名称及解释如图
导入的时候怎么知道是原来已有的数据导入进行编辑,还是原来没有数据导入进行新增呢,这就是根据我们是否设置业务主键去判断,导入的业务主键如果系统已有则编辑,否则进行新增
配置业务主键有两种方法,一是在“弹性字段”设置中勾选,另一种是在“模型.json”元数据里配置,如下图所示。
(3)标准导入模板中展示的是哪些字段,导出又展示哪些字段呢?
标准导入: 导入模板根据info元数据中字段显示,即info场景中没有设置隐藏或只读的都会显示在模板中,顺序是按照list层的元数据
标准导出: 根据list层显示的字段
(5)导入导出文件里是否带描述行
导入模板默认时带描述行(橙色那一行),作为对该列数据填写规范的解释。如果不想要,可以在服务器参数里关掉。关掉的效果见下图。
(6)导入映射
2、个性化导入
背景:标准的导入导出不符合用户需求,需要配置个性化的导入导出模板
3、子表导入
4、主子集导入
5、附件导入
二、导出
1、标准导出
背景:标准的导出文件不符合用户需求,需要配置个性化的导出模板