1. 部门管理
vben 中的部门是一个广义的部门,可维护类型(集团、企业、机构、部门等),用于应对企业的实际情况。比如说上市集团包含有多个企业,每个企业下有机构,机构下才是部门。
当 vben 用作非企业系统时,可以将部门当做一个用户分类来使用,比如将部门维护成省份,用于标记用户所属省份。
1.1 主要界面
部门查询页有两种布局方式,可通过 切换按钮 切换
1.1.1 经典左右布局查询页

左侧部门树支持模糊查询,拖拽移动,右键点击(新增子部门,修改部门,删除部门),展开全部,折叠全部,刷新等功能。
右侧分页部门列表,会根据左侧当前点击部门做父部门筛选条件,如果左侧没有点击的部门,则没有父部门条件限制(可通过点击左侧 ··· 下拉按钮组中的根部门去除父部门条件限制)。
1.1.2 树形表格布局查询页

树形表格采用虚拟化表格,支持超大数据渲染
1.1.3 弹框编辑页
经典左右布局查询页匹配弹框编辑

1.1.4 抽屉编辑页
树形表格布局查询页匹配抽屉编辑

当修改部门时,为避免部门关系上下级无限循环引用,上级部门会被限制选择当前部门及当前部门的子孙部门
1.2 表结构
表名:sys_org_dept
| 字段名 | 类型 | 长度 | 注释 | 说明 |
|---|---|---|---|---|
| id | varchar | 36 | 主键ID | |
| ornum | int | 排序号 | ||
| label | varchar | 36 | 标签 | 一般用于标记特定的部门 |
| notes | varchar | 255 | 备注 | |
| type | int | 11 | 类型 | 1:部门,2:机构,4:企业,8:集团 |
| pid | varchar | 36 | 上级部门ID | |
| tier | varchar | 512 | 层级字符串 | 顶级部门到本部门的所有部门ID,以_划分,如:d1000_d1100_d1110 |
| name | varchar | 64 | 部门名称 | |
| crtim | datetime | 创建时间 | 第一次插入后,就不再更新 | |
| uptim | datetime | 更新时间 | 第一次插入时同crtim | |
| cruid | varchar | 36 | 创建人ID | 第一次插入后,就不再更新 |
| upuid | varchar | 36 | 修改人ID | 第一次插入时同cruid |
| avtag | bit | 1 | 可用标记 | 0:不可用,1:可用 |
| ex1 | varchar | 32 | 扩展字段1 | |
| ex2 | varchar | 32 | 扩展字段2 | |
| ex3 | varchar | 32 | 扩展字段3 | |
| ex4 | varchar | 32 | 扩展字段4 |
tier 字段可快速定位祖先部门,部门下的用户与岗位也包含有tier字段。当部门tier字段变化后,部门下的用户与岗位tier字段也会随之变化。
1.3 特殊说明
- 部门一般有了业务数据不会再硬删除,可通过
可用标记字段来做软删除。组织架构中的其他元素也有这样的特性。