树形页面
百度已收录

树形页面是以树结构的方式,展示数据的页面,可以同列表页面配合,借助组合页面组成不同的布局,并能够数据联动,也可以同列表页面一样,作为弹框选择控件的页面模型,提供弹框选择功能。

树形页面分为普通模式和高级模式两种不同的配置模式,普通模式适用于基于单表的树形结构数据,例如组织表,本身就有parent_id字段,自己就可以组成一个树形结构,高级模式适用于复杂场景,可以自己定义树的层级关系,以及通过自定义SQL定义每层数据的来源。普通模式配置简单,功能单一,高级模式配置复杂,适用广泛。

一、普通模式

 

【表名】:设置一个数据库表,作为数据来源。可以通过从实体模型选择表的功能设置,也可以通过从数据库选择表的功能设置,也可以手动填写。

【自动展开层级】:初始化树的时候,是否要自动展开以及展开的层数,默认是0,表示不自动展开。

【主键字段】:树节点的key值,用于存储、选择等。

【显示字段】:树节点的text值,用于显示。

【外键字段】:所选表的外键字段,通过外键字段使表自身能够形成树形结构,例如组织表的parent_id字段。

【根节点值】:通过根节点的值,查询哪些数据作为根节点展示。

【排序字段】:查询所选表使用的排序字段。

【排序方式】:所选表的排序字段的排序方式。

【允许新增】:是否显示新增按钮,新增按钮实际分为两个,一个使新增根节点,一个是新增子节点。配置允许新增后,需要配置对应的表单模型。

【允许编辑】:是否显示编辑按钮,配置允许编辑后,需要配置对应的表单模型。

【允许删除】:是否显示删除按钮,删除按钮会删除所选树节点及其所有子节点。配置允许删除后,平台提供了删除前事件扩展点,使用者可以自定义一个Java类,使用其对应的SpringBean名称,配置到删除前事件上,实现业务的扩展功能。

删除前事件需要实现接口com.yuncheng.viewengine.ext.TreeBeforeDelExt。

二、高级模式

 

左侧是树形结构的模型,描述的是最终树形页面的层级关系,点击左侧的树节点,右侧显示树节点的详细信息。左侧树节点支持通过拖拽调整层级关系。

【标识】:树节点的标识,唯一值,用于数据传递和识别。

【描述】:树节点的名称,用于显示。

【自定义SQL】:树节点的自定义SQL,是树节点的数据来源,支持通过从实体模型选择表功能设置,或通过从数据库选择表功能设置,执行解析SQL成功后,会将执行结果自动加载到下面的主键字段、显示字段、主表上。

【添加查询字段】:自定义SQL的添加查询字段,通过解析当前节点的自定义SQL获取。是指从当前查询字段中选择一个,自动带入自定义SQL中,也可以直接手输。

【添加查询值】:自定义SQL的添加查询值,来源于父节点的查询字段,通过解析父节点的自定义SQL获取。是指将父节点的字段自动带入自定义SQL中,作为当前表的查询值,形成父子关系。也可以直接手输。

【主键字段】:树节点的key值,用于存储、选择等。

【显示字段】:树节点的text值,用于显示。

【循环调用】:当前的树节点所配置的自定义SQL,是否需要循环执行,例如组织表,本身就可以形成树形结构,一层一层一直递归下去,就需要设置循环调用属性。

【主表】:当前树节点对应的主表,通过解析自定义SQL自动获取。

【是否勾选】:如果使用当前页面模型作为弹框选择页面的时候,那些树节点需要展示复选框,例如用户选择框,则仅用户需要勾选,组织不需要勾选。

【按钮-新增】:新增一条子节点。

【按钮-删除】:删除当前节点。

【按钮-复制】:复制当前节点,放到于当前节点平级的目录中,可以通过拖拽的方式调整树形模型的结构。

三、预览效果