跳转到内容

组织机构

本文面向系统管理员,介绍如何使用组织机构插件维护集团组织树、员工岗位与人员身份,并将组织关系用于业务数据归属和角色数据权限。

文中的系统截图使用英文界面。应用菜单名称、业务字段名称和示例数据由应用自行配置,因此截图中可能保留少量中文业务内容。

组织机构插件用于解决以下管理场景:

  • 建立集团、公司、项目部、部门等多级组织结构。
  • 将员工关联到一个或多个组织节点,并为每个任职关系分配岗位。
  • 允许员工在多个人员身份之间切换,使当前机构、部门和岗位随身份变化。
  • 在业务记录创建时自动写入所属机构和所属部门。
  • 按本机构、本机构及下级、本部门、本部门及下级控制业务数据范围。
  1. 先启用数据字典插件,再启用组织机构插件。
  2. 确认当前管理员可以访问应用的 Data sourcesUsers & Permissions 设置页面。
  3. 确认数据字典中存在 OrganizationType。插件会提供以下内置类型:
分类编码显示名称
机构Organization机构
机构子类型Group集团
机构子类型Company公司
机构子类型Project项目部
部门Department部门
其他Collaboration外协队伍

Department 类型的节点会向上查找所属机构;其他类型的节点作为机构节点处理。不要随意修改内置编码,显示名称可以按业务语言维护。

概念说明
组织机构树形节点,可以表示集团、公司、项目部、部门或外协队伍。
员工人员主数据,可关联平台用户,并保存工号、联系方式等资料。
岗位基于角色数据的岗位角色,通过岗位标记进入岗位选择范围。
身份员工、组织节点、所属机构、岗位和用户之间的一条任职关系。
当前身份当前请求使用的身份,决定当前机构、当前部门和岗位上下文。
所属机构/部门字段自动记录业务数据创建时所在机构和部门的系统信息字段。

一个员工可以拥有多个身份,但同一时间只有一个当前身份;第一个身份会自动成为主身份。将某身份设为负责人时,该组织节点的负责人会同步更新。

示例应用的入口为 管理人员 > 组织机构。实际入口取决于应用菜单配置。

组织机构树形列表

  1. 进入组织机构页面。
  2. 点击 Add new
  3. 填写以下必填项:
    • name:机构名称。
    • organizationType:机构类型,例如集团或公司。
    • code:同级范围内使用的机构编码。
  4. 按需设置:
    • enabled:是否启用,默认启用。
    • owner:负责人。
    • order:同级节点排序。
  5. 点击 Submit

新增顶级机构

系统会根据父子关系自动计算 fullCodelevel 和所属机构,不需要管理员手工维护这些值。

  1. 在父节点的操作列点击 新建下级
  2. 填写名称、机构类型和编码。
  3. 如果创建部门,选择编码为 Department 的机构类型。
  4. 点击 Submit

新增下级机构

继续对下级节点执行相同操作,即可形成集团、公司、项目、部门等多级组织树。

  • View/查看:查看节点详情和关联信息。
  • Edit/编辑:修改名称、类型、负责人、排序或启用状态。
  • 新建下级:在当前节点下创建子节点。
  • Delete/删除:仅在确认下级节点和业务引用均已处理后使用。

示例应用的入口为 管理人员 > 员工信息

  1. 在左侧组织树中选择员工所属的组织节点。
  2. 点击员工列表上方的新增操作。示例应用显示为 添加管理人员,其他应用可能显示 Add new
  3. 选择 organizations,并填写 NamephoneidCard 等必填信息。
  4. 按需补充工号、人员状态、入职日期、邮箱、职务、职级、职称、学历、专业和附件。
  5. 关联平台 user。只有关联用户后,该员工才能在登录请求中获得组织身份上下文。
  6. 点击 Submit

新增员工

员工与多个组织节点建立关系时,系统会为每个关系保存一条身份记录。第一条身份自动成为主身份。

岗位来自平台角色集合,并通过岗位标记参与身份的岗位选择。开始分配前,请确认系统中已经存在可选岗位角色;岗位角色的维护入口以当前应用的管理员页面配置为准。

  1. 进入员工信息页面,并选择员工所在的组织节点。
  2. 在目标员工行点击 设置岗位
  3. post 中选择岗位。
  4. 点击 Submit

为员工分配岗位

身份包含以下关键信息:

  • 当前选择的组织节点作为部门。
  • 该节点向上解析得到的机构作为所属机构。
  • 员工关联用户作为身份用户。
  • 选中的岗位角色作为身份岗位。
  • 主身份、负责人、启用状态和当前身份等控制标记。

当一个用户关联的员工拥有两个及以上身份,并且系统不是“仅使用合并角色”模式时,用户中心会显示 Switch identity

  1. 点击页面右上角的用户图标。
  2. 打开 Switch identity
  3. 从组织路径列表中选择目标身份。
  4. 页面自动刷新后,新的机构、部门和岗位上下文立即生效。

身份名称按组织祖先路径显示,例如“集团/公司/项目部/部门”,便于同一员工区分多个任职关系。

组织数据范围依赖业务表中的 Owned organizationOwned department。需要进行组织权限控制的业务表应同时添加这两个字段。

  1. 进入 Data sources
  2. 找到 Main 数据源,点击 Configure
  3. 找到目标业务表,点击 Configure fields
  4. 点击 Add field
  5. System info 分组中依次添加:
    • Owned organization
    • Owned department

添加后,字段列表中会出现 ownedOrgownedDept,字段类型均为 belongsTo

业务表中的组织和部门字段

新建业务记录时,插件会按照当前身份自动写入:

  • Owned organization:当前身份所属的机构节点。
  • Owned department:当前身份选择的组织节点,即当前部门。

这两个字段默认按只读关联字段使用。为了确保权限结果完整,应先添加字段,再开始录入需要组织隔离的业务数据。

  1. 进入 Users & Permissions > Roles & Permissions
  2. 选择需要配置的角色。
  3. 打开 Permissions > Data sources
  4. Main 数据源行点击 Configure
  5. General action permissionsAction permissions 中启用所需操作。
  6. ViewEditDeleteExport 等已有记录操作选择数据范围。

配置组织数据范围

插件提供四种组织数据范围:

英文选项中文含义匹配规则
Own organization records本机构数据所属机构与当前机构完全一致。
Own organization and sub records本机构及下级数据所属机构完整编码以当前机构完整编码开头。
Own department records本部门数据所属部门与当前部门完全一致。
Own department and sub records本部门及下级数据所属部门完整编码以当前部门完整编码开头。

“及下级”范围包含当前节点本身。数据范围应分别按操作配置,例如可以允许查看本机构及下级数据,但只允许编辑本部门数据。

10. 使用当前机构和当前部门变量

Section titled “10. 使用当前机构和当前部门变量”

插件会在支持变量表达式的筛选器和数据范围配置中提供:

  • Current organization:当前身份所属机构的完整编码。
  • Current department:当前身份所选组织节点的完整编码。

标准的四种组织数据范围已经封装了常用匹配规则。只有需要组合其他业务条件时,才在自定义筛选条件中选择当前机构或当前部门变量。

建议管理员按以下顺序验收:

  1. 为测试员工关联平台用户,并在两个不同组织节点下建立身份。
  2. 为两个身份分别分配岗位,确认其中一个为当前身份。
  3. 使用该用户登录,在用户中心切换到第一个身份。
  4. 新建一条带 Owned organizationOwned department 字段的业务记录。
  5. 查看记录详情,确认两个归属字段与当前身份一致。
  6. 切换到第二个身份并刷新页面。
  7. 分别验证本机构、本机构及下级、本部门、本部门及下级的数据可见范围。
  8. 验证 View、Edit、Delete、Export 等操作是否遵循各自配置的数据范围。
  • 数据字典插件已经先于组织机构插件启用。
  • OrganizationType 的内置编码保持有效。
  • 组织树中的部门节点使用 Department 类型。
  • 员工已经关联平台用户。
  • 员工至少拥有一个组织身份,岗位角色可正常选择。
  • 需要权限隔离的业务表同时包含 ownedOrgownedDept
  • 角色的每项操作都按业务要求设置数据范围。
  • 多身份用户已经验证身份切换和页面刷新后的权限结果。