1 使用场景
关系对应模型适用于一类特殊的业务场景,用于展示和维护关系表数据,例如:角色与功能菜单权限关系对应表,左侧显示角色信息,右侧勾选展示当前角色对应的功能菜单权限。
下面我们就以上面这个“角色-功能”权限对应关系为例介绍这类模型的配置方式。
实例说明:制作一个关系对应模型,利用这个模版去展示和维护各个应用下的角色和功能菜单对应关系,其中左侧导航和右侧功能菜单选项都与参数“应用名称”有联动关系,即每个应用下都有各自对应的角色数据和功能菜单数据。
2 配置说明
(1)准备工作
1、对应关系表
需提前准备好存储左边导航项和右侧选项对应关系的对应关系表,其基础字段需包含:主键、左侧导航、右侧选项。
如上述实例中关系对应表role_func需要包含的基础字段就是:主键(ID)、角色(ROLE)、功能菜单(FUNCTION),如需有额外的参数需要回写可以额外增加,例如我们对角色和功能菜单还需要通过应用联动过滤就可以再增加所需的应用字段(APPLICATION),如下图所示。
2、选项数据
需提前准备左侧和右侧选项数据,注意这里需要使用到EasySearch数据。
左侧角色列表数据:
如下图所示,除了基础的编码和名称以外,还有一列APPLI_ID“应用”来过滤角色。
右侧功能菜单项数据:
如下图所示,这里我们使用了一个树形数据来维护功能菜单项,同样冗余一列APPLI_ID用于“应用”对功能项的过滤。
参数“应用”数据如下:共三个应用分别对应APPLI_ID为1、2、3
(2)元数据配置
使用提前准备好的关系对应表role_func创建元数据如下图所示。导入所需的字段即可,关系对应模型因为及界面特殊,在元数据中对字段的编辑控件和展示样式没有什么需要配置的地方。
(3)模版配置
新建跨设备表单模版,表单模型选择“关系对应模型”,可以看到其模版配置界面不同于一般模版。
其中页面标题、数据连接等常规配置同其他模版,均不允许为空。注意:此处数据连接需选择关系对应表对应的数据连接。
“参数设置”这里不同于以往的配置,这里是为模版独立使用的参数,按需自行重新定义。例如此例中我们提到需要通过应用去过滤左右的选项数据,因此我们添加一个参数appli_id,如下图所示。
这里定义好的参数我们稍后会使用到。
接下来是该模型的关键配置“表单数据来源”,主要包含关系对应表、左侧导航、右侧选项的配置。
1、关系对应表
- 元数据:用于配置模版主要展示和维护的数据源,这里选择我们前面准备好的关系对应表的元数据。
- 自动生成主键值:使用数据库主键自动递增时可以无需勾选。
- 参数关联关系:用于配置定义过的参数与数据表字段的查询和回写关系。
2、左侧导航
- 选择数据源:必选,选择左侧导航的数据源,支持选择CodeTable、EasySearch。其中选择CodeTable、元数据EasySearch时支持配置联动过滤,选择数据视图生成的EasySearch时允许在【传参设置】中通过传参设置进行数据过滤。此例中我们需要左侧导航显示角色信息,选择提前准备好的数据视图“role”生成的EasySearch数据源,【传参设置】中我们可以配置与之前定义的参数appli_id的联动关系。
- 默认值设置:选填,如果有特别的选中要求,可以在此项对左侧导航数据进行默认值设置,设置页面加载时的默认选中项,支持常量和表达式。此例中可以不配置。
- 默认选中第一个选项值:默认不勾选,不勾选时不会选中左侧任一项,右侧也不会显示相应的模版页面。此例中我们希望可以选中第一项,因此需要勾选。
- 导航宽度:用于设置左侧导航栏的显示宽度,默认280像素,不允许为空。此例中暂无特殊要求,可以不用修改。
- 关系对应字段:必选,下拉列表中会列出当前关系对应表所选元数据中的字段,需要从中选择一个对应的字段用于左侧导航选项的查询匹配和数据回写。此例中我们左侧导航选项是角色字段因此选择关系对应表中的ROLE字段进行存储和后续查询展示。
3、右侧选项
- 选择数据源:必选,选择右侧选项的数据源,支持选择CodeTable、EasySearch。其中选择CodeTable、元数据EasySearch时支持配置联动过滤,选择数据视图生成的EasySearch时允许在【传参设置】中通过传参设置进行数据过滤。此例中我们需要右侧显示树形功能菜单选项,选择提前准备好的数据视图“function”生成的EasySearch简单树数据源,【传参设置】中我们可以配置与之前定义的参数appli_id的联动关系。
- 树选择方式:仅数据源为树形结构数据时允许配置,用于配置右侧选项选中的前端交互方式,默认为“仅选择当前节点”即各项独立选择,选择“递归方式”时,树中节点的选中方式将采用递归方式进行,即选中或取消选中子项时会连带其各级父项和全部子项一起选中或取消选中。
- 关系对应字段:必选,下拉列表中会列出当前关系对应表所选元数据中的字段,需要从中选择一个对应的字段用于右侧选项的查询匹配和数据回写。此例中我们右侧是功能菜单选项因此选择关系对应表中的FUNCTION字段进行存储和后续查询展示。
至此,基本已完成关系对应模型的关键配置,可以基本的进行预览查看了。
(4)其他配置
1、右侧选项-全选兼容功能
应用场景:上述关系对应模型一种常见的使用场景就是类似权限分配,当左侧某项匹配的右侧选项为全选时,为了达到即便右侧添加了新的选项也要显示为全选的效果,可以为全选的左侧项存储一个特殊值用于标记其全选状态。
配置说明:
①默认不勾选,此时会按实际数据库存储数据读取显示和按勾选项回写对应的记录。
②勾选后允许配置【全选值】默认为空,全选值允许为空。读写规则:若当前选中值在右侧未选中任一选项,则回写时清空当前值下所有记录,同样在读取时若查询数据库无记录,则前台显示为全不选;若当前选中值在右侧选中全部记录,则回写时仅回写一条带有左侧导航值的记录,右侧选项对应字段存储的就是配置的【全选值】,在读取时“等于”对应值时,前台需要显示为全部选中;部分选中时,按选中值回写相应的记录,读取时也按相应的记录在前台选中显示。
2、PC页面布局
支持配置页面标题是否显示、参数栏名称内容是否自适应、参数是否实时查询和页面帮助文字,可以根据业务需要进行调整。
3 执行与显示
该模型仅支持PC端显示,暂不支持移动端,加载页面如下。
- 左侧导航:根据所选数据源显示为列表或树形结构。
- 右侧选项:根据所选数据源显示为列表或树形结构,面包屑显示左侧选中节点路径。
右侧选项数据未变更时,【保存】操作不可用,右侧数据变脏后才允许保存,保存后清除数据库表中原有的对应关系数据,重新写入新的对应关系。
左侧导航支持按照显示名称进行模糊搜索,查询结果列表显示匹配的结果,单击操作选中,双击操作可定位到当前节点并选中。
右侧选项支持按显示名称进行模糊搜索,搜索框展示匹配的结果数量,默认在列表或树中高亮定位显示第一个匹配结果,支持上下切换查询结果显示。
因为我们在左侧导航和右侧选项数据上设置了参数联动的效果,因此切换参数“应用名称”也可以使数据根据参数联动显示。如下图中参数切换为“应用3”时左侧角色列表和右侧的功能菜单已经与参数为“应用1”时不同。
最后编辑:Eric 更新时间:2025-04-24 13:55
