From a2be197aad6b90455cc993c3d60c68acc2389c2a Mon Sep 17 00:00:00 2001 From: LiuLiang <83030246@qq.com> Date: Thu, 4 Jun 2026 17:12:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../基础平台/功能模块/01-客户管理.md | 51 +- .../基础平台/功能模块/02-应用管理.md | 681 ++++++++++++++- .../基础平台/功能模块/03-组织管理.md | 557 +++++++++++- .../基础平台/功能模块/04-用户与账号管理.md | 794 +++++++++++++++++- .../基础平台/功能模块/07-角色管理.md | 564 ++++++++++++- .../{10-基础配置管理.md => 08-基础配置管理.md} | 12 +- .../基础平台/功能模块/08-权限管理.md | 57 -- .../功能模块/{11-消息与待办.md => 09-消息与待办.md} | 10 +- .../基础平台/功能模块/09-菜单管理.md | 32 - .../功能模块/{12-操作日志.md => 10-操作日志.md} | 12 +- .../功能模块/{13-数据字典.md => 11-数据字典.md} | 10 +- 40-平台与架构/基础平台/功能模块/README.md | 10 +- 40-平台与架构/基础平台/基础平台产品设计.md | 46 +- 13 files changed, 2600 insertions(+), 236 deletions(-) rename 40-平台与架构/基础平台/功能模块/{10-基础配置管理.md => 08-基础配置管理.md} (84%) delete mode 100644 40-平台与架构/基础平台/功能模块/08-权限管理.md rename 40-平台与架构/基础平台/功能模块/{11-消息与待办.md => 09-消息与待办.md} (86%) delete mode 100644 40-平台与架构/基础平台/功能模块/09-菜单管理.md rename 40-平台与架构/基础平台/功能模块/{12-操作日志.md => 10-操作日志.md} (85%) rename 40-平台与架构/基础平台/功能模块/{13-数据字典.md => 11-数据字典.md} (84%) diff --git a/40-平台与架构/基础平台/功能模块/01-客户管理.md b/40-平台与架构/基础平台/功能模块/01-客户管理.md index 7e50070..db9c32c 100644 --- a/40-平台与架构/基础平台/功能模块/01-客户管理.md +++ b/40-平台与架构/基础平台/功能模块/01-客户管理.md @@ -205,7 +205,37 @@ - 客户管理员不可访问客户管理页面,客户管理员只管理本客户下的组织、用户、角色、权限和菜单。 - 无客户管理权限的用户不展示客户管理菜单。 -### 5.1.6.2 页面结构 +### 5.1.6.2 控件类型规则 + +客户管理界面涉及的输入控件按以下规则定义: + +| 字段 / 操作 | 控件类型 | 适用页面 | +| --- | --- | --- | +| 客户名称 | 文本输入框 | 客户列表查询、新增客户、编辑客户 | +| 客户简称 | 文本输入框 | 客户列表查询、新增客户、编辑客户 | +| 客户编码 | 文本输入框 / 只读文本 | 客户列表查询使用文本输入框,新增和编辑页面为只读文本 | +| 客户类型 | 下拉框 | 客户列表查询、新增客户、编辑客户 | +| 所属行业 | 下拉框 | 客户列表查询、新增客户、编辑客户 | +| 启用状态 | 下拉框 / Switch | 客户列表查询使用下拉框,新增和编辑页面状态控制使用 Switch | +| 应用名称 | 文本输入框 | 全部应用页签查询 | +| 应用编号 | 文本输入框 | 全部应用页签查询 | +| 开通状态 | 下拉框 | 全部应用页签查询 | +| 查询 | 按钮 | 查询区域 | +| 新增、编辑、查看、开通、关闭、维护管理员、添加管理员、保存、取消 | 按钮 | 列表、详情、弹窗 | +| 用户姓名 | 文本输入框 | 添加管理员表单弹窗 | +| 登录账号 | 文本输入框 | 添加管理员表单弹窗 | +| 手机号 | 文本输入框 | 添加管理员表单弹窗 | +| 所属组织 | 下拉框 / 树形选择器 | 添加管理员表单弹窗 | +| 管理员状态 | Switch | 客户管理员维护弹窗 | + +状态类控件规则: + +- 客户启用状态在新增、编辑或状态维护场景中使用 Switch。 +- 客户管理员启用状态使用 Switch。 +- 查询条件中的状态字段使用下拉框,便于选择全部、启用、停用等查询范围。 +- 开通状态用于查询应用开通关系,使用下拉框,不使用 Switch。 + +### 5.1.6.3 页面结构 客户管理包含以下页面和区域: @@ -217,7 +247,7 @@ | 客户详情页 | 上方只读基础信息区 + 下方 Tab 页签 | 查看客户基础信息、全部应用、已开通应用、客户管理员、操作记录 | | 客户管理员维护弹窗 | 数据表格 + 表单弹窗 | 通过管理员表格查看、创建、设置、取消、停用客户管理员 | -### 5.1.6.3 客户列表页 +### 5.1.6.4 客户列表页 客户列表页用于平台侧查看和维护所有客户。 @@ -267,7 +297,7 @@ - 停用状态客户可执行启用操作。 - 启用状态客户可执行停用操作。 -### 5.1.6.4 新增客户页 / 弹窗 +### 5.1.6.5 新增客户页 / 弹窗 新增客户用于创建客户基础档案,不在新增客户页完成应用开通和客户管理员初始化。 @@ -293,7 +323,7 @@ - 客户创建后,可在客户详情或客户列表中独立维护客户管理员。 - 保存成功后进入客户详情页或返回客户列表页。 -### 5.1.6.5 编辑客户页 / 弹窗 +### 5.1.6.6 编辑客户页 / 弹窗 编辑客户用于维护客户基础资料。 @@ -324,7 +354,7 @@ - 修改所属行业不自动改变客户已使用的业务系统和历史数据。 - 编辑客户信息需记录操作日志。 -### 5.1.6.6 客户详情页 +### 5.1.6.7 客户详情页 客户详情页用于集中查看客户档案和客户使用状态。 @@ -355,7 +385,7 @@ - 关闭应用在已开通应用页签内操作。 - 取消管理员、重置密码、启用、停用管理员在客户管理员页签内操作。 -### 5.1.6.7 全部应用页签 +### 5.1.6.8 全部应用页签 全部应用页签用于在客户详情页中查看客户与所有可用应用的开通关系,并完成应用开通或关闭。 @@ -400,7 +430,7 @@ - 关闭应用前需要二次确认。 - 关闭应用时应提示:关闭后该客户下用户不可继续访问该应用,但不删除历史业务数据。 -### 5.1.6.8 已开通应用页签 +### 5.1.6.9 已开通应用页签 已开通应用页签用于集中查看当前客户已经开通的应用,并支持关闭已开通应用。 @@ -430,7 +460,7 @@ - 关闭成功后,已开通应用页签列表刷新。 - 关闭成功后,该应用在全部应用页签中的开通状态变更为未开通。 -### 5.1.6.9 客户管理员维护弹窗 +### 5.1.6.10 客户管理员维护弹窗 客户管理员维护采用表格 + 表单弹窗的组合方式。 @@ -556,7 +586,7 @@ 6. 点击表格最后一列的开通按钮。 7. 确认开通操作。 8. 系统记录应用开通关系和操作日志。 -9. 客户管理员进入权限管理后,可为本客户用户分配该应用权限。 +9. 客户管理员进入角色管理后,可为本客户角色配置该应用菜单权限、操作权限和数据范围,再在用户与账号管理中为用户分配角色。 ### 5.1.7.5 关闭客户应用 @@ -665,6 +695,9 @@ - 客户列表页可按客户名称、客户简称、客户编码、客户类型、所属行业、启用状态查询客户。 - 客户列表页查询按钮作为查询表单最后一个表单元素展示。 - 客户列表页查询条件较多时支持收缩和展开。 +- 客户类型、所属行业等枚举字段使用下拉框。 +- 客户启用状态、客户管理员启用状态在状态维护场景中使用 Switch。 +- 查询条件中的状态字段使用下拉框。 - 客户详情页可查看基础信息、全部应用、已开通应用、客户管理员和操作记录。 - 新增客户页不包含应用开通和客户管理员维护。 - 应用开通在客户详情页全部应用页签中完成。 diff --git a/40-平台与架构/基础平台/功能模块/02-应用管理.md b/40-平台与架构/基础平台/功能模块/02-应用管理.md index 3e3908b..3c40b37 100644 --- a/40-平台与架构/基础平台/功能模块/02-应用管理.md +++ b/40-平台与架构/基础平台/功能模块/02-应用管理.md @@ -4,10 +4,13 @@ 上级文档:[基础平台产品设计](../基础平台产品设计.md) - ## 5.2.1 功能说明 -应用管理用于维护接入基础平台的业务系统。 +应用管理用于维护接入基础平台的业务系统,是基础平台进行应用入口聚合、菜单聚合、客户应用开通、应用访问鉴权、菜单操作权限定义和门户嵌入的基础。 + +应用管理只维护应用本身的基础信息、入口信息、接入状态、菜单、菜单操作权限定义和可授权范围,不承载各业务应用内部的业务规则。 + +操作权限应基于菜单或页面配置,并在应用管理的菜单配置中维护。角色管理负责对菜单、菜单操作权限和数据范围进行授权,不再单独设置独立的菜单管理或授权管理功能。 ## 5.2.2 功能范围 @@ -16,28 +19,676 @@ - 启用 / 停用应用 - 配置应用入口 - 配置应用菜单 -- 配置应用权限项 +- 配置菜单操作权限 - 配置应用可授权范围 +- 查看已开通客户 +- 查看应用操作记录 ## 5.2.3 应用清单 -1.0 需要支持以下应用接入: +基础平台 1.0 需要支持以下应用接入: -- 连锁业务对账系统 -- 分账系统 -- 聚合支付 -- 门店选址规划系统 -- 连锁门店客服系统 +| 应用名称 | 应用定位 | 是否 1.0 必须 | +| --- | --- | --- | +| 连锁业务对账系统 | 承接连锁业务对账、账单、流水、差异处理等能力 | 是 | +| 分账系统 | 承接结算主体、账户、分账规则、清分、分账、出款等能力 | 是 | +| 聚合支付 | 承接支付渠道、支付订单、支付流水、退款、支付通知等能力 | 是 | +| 门店选址规划系统 | 承接门店选址评估、点位分析、选址规划等能力 | 是 | +| 连锁门店客服系统 | 承接客诉、咨询、工单、补偿、回访等能力 | 是 | -## 5.2.4 业务规则 +说明: + +- 营帐通作为现有产品和客户项目现状,不作为基础平台 1.0 的新接入应用。 +- 营帐通拆分后的目标产品分别按连锁业务对账系统、分账系统接入基础平台。 +- 后续新增应用应通过应用管理进行注册和维护。 + +## 5.2.4 字段要求 + +应用基础信息至少包括: + +| 字段 | 说明 | 是否必填 | +| --- | --- | --- | +| 应用名称 | 应用的正式名称 | 是 | +| 应用简称 | 用于菜单、页签、列表等场景的短名称 | 是 | +| 应用编码 | 基础平台内识别应用的唯一编码 | 是 | +| 应用类型 | 区分基础平台应用、业务应用、外部应用等类型 | 是 | +| 应用入口类型 | 区分基础平台内置页面、iframe 嵌入页面、外部跳转入口 | 是 | +| 应用入口地址 | 应用级默认入口地址,通常用于应用首页、外部跳转或兜底入口;业务应用各功能点主要通过菜单地址进入 | 否 | +| 应用图标 | 门户、菜单、应用列表中展示的应用图标 | 否 | +| 应用说明 | 应用定位和用途说明 | 否 | +| 应用负责人 | 产品或业务负责人 | 否 | +| 接入状态 | 未接入、接入中、已接入 | 是 | +| 启用状态 | 启用、停用 | 是 | +| 排序 | 应用在应用列表或配置页中的展示顺序 | 否 | +| 创建时间 | 应用档案创建时间 | 是 | +| 更新时间 | 应用档案最近更新时间 | 是 | + +### 5.2.4.1 应用编码规则 + +应用编码用于在基础平台内唯一识别应用。 + +编码规则: - 应用编码全局唯一。 +- 应用编码创建后原则上不允许修改。 +- 应用编码由平台管理员或产品管理员创建应用时维护。 +- 应用编码建议采用大写英文、数字和下划线组合。 +- 应用编码建议格式为:业务域英文缩写 + 系统类型。 +- 示例:`RECON_SYSTEM`、`SPLIT_SYSTEM`、`PAY_SYSTEM`、`SITE_SYSTEM`、`CS_SYSTEM`。 +- 应用编码仅用于系统识别、菜单归属、权限归属、应用开通和日志追踪,不作为页面展示名称。 + +编码校验要求: + +- 新增应用时,系统需要校验应用编码是否已存在。 +- 应用编码为空、重复或格式不符合规则时,不允许保存应用。 +- 应用停用后,原应用编码不得被其他应用复用。 + +### 5.2.4.2 应用类型定义 + +基础平台 1.0 支持以下应用类型: + +| 应用类型 | 定义 | 示例 | +| --- | --- | --- | +| 基础平台应用 | 基础平台自身提供的管理能力 | 客户管理、应用管理、组织管理、用户与账号管理 | +| 业务应用 | 公司自研并接入基础平台门户的业务系统 | 连锁业务对账系统、分账系统、聚合支付 | +| 外部应用 | 非基础平台内部建设,但需要通过基础平台入口访问的系统 | 后续客户外部协同系统、第三方系统 | + +业务规则: + +- 基础平台应用默认由基础平台维护,不作为客户开通应用进行售卖或授权。 +- 业务应用可被客户开通,并可配置菜单和应用入口。 +- 外部应用 1.0 仅预留类型,是否接入按项目需要单独评估。 + +### 5.2.4.3 应用入口类型定义 + +基础平台 1.0 支持以下应用入口类型: + +| 入口类型 | 定义 | 适用场景 | +| --- | --- | --- | +| 基础平台页面 | 页面由基础平台自身承载 | 客户管理、应用管理 | +| iframe 嵌入 | 页面由业务应用提供,基础平台通过 iframe 嵌入右侧内容区 | 连锁业务对账系统、分账系统、聚合支付 | +| 外部跳转 | 从基础平台打开外部系统地址 | 后续外部协同或第三方系统 | + +业务规则: + +- 基础平台 1.0 中,业务应用默认采用 iframe 嵌入方式。 +- iframe 嵌入应用不再独立渲染系统级菜单。 +- 外部跳转入口不作为 1.0 重点能力,仅保留字段和边界。 +- 应用入口地址为选填字段,不作为应用启用的必填前置。 +- 业务应用通常通过基础平台菜单进入应用系统的各个功能点,菜单地址才是用户访问具体功能页面的主要入口。 +- 如应用配置了应用级默认入口地址,该地址可用于应用首页、外部跳转或无具体菜单时的兜底入口。 + +## 5.2.5 配置应用入口 + +### 5.2.5.1 功能说明 + +配置应用入口用于定义应用级默认访问方式。业务应用各功能点通常通过基础平台菜单地址进入,应用入口地址不作为业务应用功能访问的唯一入口。 + +### 5.2.5.2 功能范围 + +- 维护应用入口类型。 +- 维护应用级默认入口地址。 +- 维护应用默认打开方式。 +- 维护应用图标和展示名称。 +- 检查应用入口配置完整性。 + +### 5.2.5.3 业务规则 + +- 应用启用前必须配置应用入口类型。 +- 应用入口地址为选填;未配置应用入口地址时,用户仍可通过已授权菜单进入应用系统的各个功能点。 +- 如果应用没有任何可用菜单,且未配置应用入口地址,则用户无法从门户进入该应用。 +- 客户未开通应用时,即使应用已启用,也不可向该客户用户展示应用入口。 +- 用户未授权应用时,不可看到应用入口。 +- iframe 嵌入应用通过菜单地址打开后,应在基础平台右侧内容区展示。 +- 应用入口地址变更后,不影响历史业务数据。 +- 应用入口类型、应用入口地址变更需记录操作日志。 + +## 5.2.6 配置应用菜单 + +### 5.2.6.1 功能说明 + +配置应用菜单用于维护应用在基础平台统一门户中的导航入口。应用菜单最终由基础平台统一聚合展示,业务应用不再独立渲染系统级菜单。 + +### 5.2.6.2 功能范围 + +- 查看应用菜单树。 +- 新增应用菜单。 +- 编辑应用菜单。 +- 启用 / 停用应用菜单。 +- 调整菜单排序。 +- 绑定菜单对应页面地址。 +- 配置菜单下的操作权限。 + +### 5.2.6.3 业务规则 + +- 菜单必须归属于某个应用。 +- 菜单可采用树形结构展示。 +- 停用菜单后,用户不可看到该菜单。 +- 菜单是否展示由应用启用状态、客户应用开通状态、用户权限共同决定。 +- 操作权限必须归属于具体菜单或页面。 +- 不允许脱离菜单或页面单独配置操作权限。 +- 菜单停用后,该菜单下操作权限同时不可用。 +- 角色授权时,应按菜单和菜单下操作权限进行勾选。 + +## 5.2.7 权限配置边界 + +### 5.2.7.1 功能说明 + +权限配置边界用于说明应用管理与角色管理之间的职责划分。 + +应用管理负责定义应用、菜单和菜单下的操作权限;角色管理负责将菜单、菜单操作权限和数据范围授权给角色;用户与账号管理负责将角色分配给用户。 + +### 5.2.7.2 功能范围 + +- 说明应用管理负责维护菜单和菜单操作权限定义。 +- 说明菜单是操作权限的归属载体。 +- 说明操作权限在应用管理的菜单配置中按菜单或页面维护。 +- 说明角色授权时应基于菜单、菜单操作权限和数据范围进行组合。 + +### 5.2.7.3 业务规则 + +- 一个应用可包含多个菜单。 +- 一个菜单可包含多个操作权限。 +- 操作权限必须归属于具体菜单或页面。 +- 不允许脱离菜单或页面单独配置操作权限。 +- 应用管理只维护操作权限定义,不在应用管理中为具体客户、角色或用户授权。 +- 角色管理引用应用管理中定义的菜单和菜单操作权限进行授权。 +- 接口级权限与技术鉴权实现不在应用管理中描述,本文档只定义产品侧可授权操作。 + +## 5.2.8 配置应用可授权范围 + +### 5.2.8.1 功能说明 + +配置应用可授权范围用于定义某个应用可被哪些客户开通、可授权哪些组织或角色范围,为客户应用开通和权限分配提供基础约束。 + +### 5.2.8.2 功能范围 + +- 设置应用是否允许客户开通。 +- 设置应用适用客户类型。 +- 设置应用适用行业。 +- 设置应用默认角色模板。 +- 设置应用默认菜单范围。 + +### 5.2.8.3 业务规则 + +- 应用停用后,不允许继续被客户开通。 +- 应用未设置为允许客户开通时,不出现在客户管理的未开通应用 Tab 中。 +- 应用适用客户类型和所属行业仅作为开通筛选和提示,不自动替代人工开通决策。 +- 客户开通应用后,客户管理员仍需为用户分配角色和权限。 +- 可授权范围变更不自动取消客户已开通应用,需由平台管理员确认处理。 + +## 5.2.9 查看已开通客户 + +### 5.2.9.1 功能说明 + +查看已开通客户用于从应用视角查看当前应用已被哪些客户开通,便于平台管理员了解应用使用范围。 + +### 5.2.9.2 功能范围 + +- 查看已开通客户列表。 +- 按客户名称、客户编码、客户类型、所属行业查询。 +- 查看开通时间、开通人、客户启用状态。 +- 跳转客户详情。 + +### 5.2.9.3 业务规则 + +- 已开通客户列表只展示当前应用的开通客户。 +- 客户停用后,仍可在已开通客户列表中展示,但需标识客户停用状态。 +- 应用管理中不直接为客户开通或关闭应用,客户开通和关闭操作在客户管理中完成。 + +## 5.2.10 业务规则 + +- 应用编码全局唯一。 +- 应用启用前必须维护应用名称、应用编码、应用类型和入口类型。 - 应用停用后,所有客户不可访问该应用。 +- 应用停用后,基础平台不展示该应用入口和该应用菜单。 - 客户未开通应用时,不显示该应用入口。 -- 应用菜单和权限项由产品管理员维护。 +- 用户未授权应用时,不显示该应用入口。 +- 应用菜单由产品管理员维护。 +- 菜单下的操作权限在应用管理的菜单配置中维护。 +- 应用入口类型、应用入口地址、菜单、菜单操作权限、可授权范围、启用状态变更需要记录操作日志。 +- 应用管理不处理业务系统内部业务规则。 -## 5.2.5 验收标准 +## 5.2.11 界面设计 -- 可维护应用基础信息。 -- 可控制客户是否开通某应用。 -- 应用停用后入口不可访问。 +### 5.2.11.1 页面入口 + +应用管理作为基础平台的管理类功能,建议放置在基础平台左侧菜单: + +```text +基础平台 +└── 平台管理 + └── 应用管理 +``` + +页面访问规则: + +- 仅平台超级管理员、产品管理员或具备应用管理权限的用户可访问应用管理页面。 +- 客户管理员不可访问应用管理页面。 +- 无应用管理权限的用户不展示应用管理菜单。 + +### 5.2.11.2 页面结构 + +应用管理包含以下页面和区域: + +| 页面 / 区域 | 展示方式 | 主要用途 | +| --- | --- | --- | +| 应用列表页 | 查询表单 + 数据表格 | 查询、查看、新增、编辑、启用、停用应用 | +| 新增应用页 / 弹窗 | 表单 | 创建应用基础档案和入口配置 | +| 编辑应用页 / 弹窗 | 表单 | 修改应用基础信息、入口配置、负责人等信息 | +| 应用详情页 | 上方只读基础信息区 + 下方 Tab 页签 | 查看应用基础信息、入口配置、菜单、可授权范围、已开通客户、操作记录 | +| 应用菜单编辑页面 | 表单 | 新增或编辑单个应用菜单 | +| 菜单操作权限配置页面 | 数据表格 + 表单弹窗 | 维护某个菜单或页面下可授权的操作权限 | +| 可授权范围编辑页面 | 表单 | 编辑应用适用客户类型、适用行业、是否允许客户开通 | + +### 5.2.11.3 应用列表页 + +应用列表页用于平台侧查看和维护所有应用。 + +展示方式: + +- 顶部为查询表单。 +- 下方为应用数据表格。 +- 表格右侧操作列展示查看、编辑、配置菜单、配置可授权范围、启用、停用等操作。 + +列表筛选条件: + +- 应用名称 +- 应用编码 +- 应用类型 +- 入口类型 +- 接入状态 +- 启用状态 +- 创建时间 + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 应用编码 | 展示应用唯一编码 | +| 应用名称 | 展示应用正式名称 | +| 应用简称 | 展示应用简称 | +| 应用类型 | 展示基础平台应用、业务应用、外部应用 | +| 入口类型 | 展示基础平台页面、iframe 嵌入、外部跳转 | +| 接入状态 | 展示未接入、接入中、已接入 | +| 启用状态 | 展示启用或停用 | +| 已开通客户 | 展示已开通客户数量 | +| 更新时间 | 展示最近更新时间 | +| 操作 | 查看、编辑、配置菜单、配置可授权范围、启用、停用 | + +### 5.2.11.4 新增应用页 / 弹窗 + +新增应用用于创建应用基础档案和入口配置。 + +展示方式: + +- 采用表单方式展示。 +- 表单包含应用基础信息和入口配置。 +- 不使用表格、Tab 页签或树形结构。 + +表单分区: + +| 分区 | 字段 / 内容 | +| --- | --- | +| 应用基础信息 | 应用名称、应用简称、应用编码、应用类型、应用图标、应用说明、应用负责人 | +| 应用入口配置 | 应用入口类型、应用入口地址、接入状态、启用状态 | + +表单控件和值来源: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 应用名称 | 文本输入框 | 人工录入 | 必填,应用正式名称 | +| 应用简称 | 文本输入框 | 人工录入 | 必填,用于菜单、页签、列表等短名称展示 | +| 应用编码 | 文本输入框 | 人工录入,系统校验唯一性和编码格式 | 必填,保存后原则上不允许修改 | +| 应用类型 | 下拉框 | 系统字典:基础平台应用、业务应用、外部应用 | 必填 | +| 应用图标 | 图标选择器 / 文件上传控件 | 平台预置图标库或上传图标文件 | 选填,用于门户、菜单和应用列表展示 | +| 应用说明 | 多行文本框 | 人工录入 | 选填,描述应用定位和用途 | +| 应用负责人 | 用户选择器 | 基础平台用户档案 | 选填,可选择产品负责人或业务负责人 | +| 应用入口类型 | 下拉框 | 系统字典:基础平台页面、iframe 嵌入、外部跳转 | 必填 | +| 应用入口地址 | 文本输入框 | 人工录入 | 选填,用于应用级默认入口、外部跳转或兜底入口 | +| 接入状态 | 下拉框 | 系统字典:未接入、接入中、已接入 | 必填 | +| 启用状态 | Switch | 人工选择 | 必填,默认建议为停用,确认配置完整后再启用 | + +页面规则: + +- 应用名称、应用简称、应用编码、应用类型、应用入口类型为必填。 +- 应用入口地址为选填。 +- 业务应用各功能点主要通过菜单地址进入,新增应用时不要求配置应用入口地址。 +- 应用编码保存后原则上不允许修改。 +- 新增应用页不配置应用菜单。 +- 应用创建后,可在应用详情或应用列表中独立配置菜单和可授权范围。 + +### 5.2.11.5 编辑应用页 / 弹窗 + +编辑应用用于维护应用基础信息和入口配置。 + +展示方式: + +- 采用表单方式展示。 +- 表单字段与新增应用保持一致。 +- 应用编码、创建时间作为只读字段展示。 + +可编辑字段: + +- 应用名称 +- 应用简称 +- 应用类型 +- 应用入口类型 +- 应用入口地址 +- 应用图标 +- 应用说明 +- 应用负责人 +- 接入状态 +- 启用状态 +- 排序 + +不可编辑字段: + +- 应用编码 +- 创建时间 + +表单控件和值来源: + +- 编辑应用页字段控件类型与新增应用页保持一致。 +- 应用编码在编辑应用页采用只读文本展示,不允许修改。 +- 创建时间、更新时间采用只读文本展示,由系统生成。 +- 启用状态采用 Switch 维护;停用应用时需要提示影响范围。 +- 排序采用数字输入框,由人工录入,用于控制应用在配置列表或门户入口中的展示顺序。 + +### 5.2.11.6 应用详情页 + +应用详情页用于集中查看应用档案、接入配置和使用范围。 + +应用详情页分为上下两部分: + +| 区域 | 展示方式 | 主要内容 | +| --- | --- | --- | +| 上方基础信息区 | 只读信息区 | 应用名称、简称、编码、类型、入口类型、入口地址、接入状态、启用状态 | +| 下方页签区 | Tab 页签 | 菜单配置、可授权范围、已开通客户、操作记录 | + +下方页签说明: + +| 页签 | 展示方式 | 主要内容 | +| --- | --- | --- | +| 菜单配置 | 树形表格 | 应用多级菜单树、菜单状态、菜单地址、菜单操作权限配置入口;支持进入应用菜单编辑页面和菜单操作权限配置页面 | +| 可授权范围 | 表单 | 展示是否允许客户开通、适用客户类型、适用行业、默认角色模板、默认菜单范围;支持进入可授权范围编辑页面 | +| 已开通客户 | 数据表格 | 客户名称、客户编码、客户类型、所属行业、开通时间、客户状态 | +| 操作记录 | 数据表格 | 应用新增、编辑、启用、停用、入口变更、菜单变更、可授权范围变更记录 | + +详情页主操作按钮: + +- 编辑应用 +- 配置菜单 +- 配置可授权范围 + +### 5.2.11.7 应用菜单编辑页面 + +应用菜单编辑页面用于新增或编辑某个应用下的单个菜单。 + +展示方式: + +- 采用表单方式展示。 +- 不在该页面展示完整多级菜单树。 +- 多级菜单树在应用详情页下方的菜单配置 Tab 页签中展示。 +- 用户在菜单配置 Tab 页签中点击新增、编辑、新增下级等操作后,进入应用菜单编辑页面维护单个菜单。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 菜单名称 | 文本输入框 | 人工录入 | 菜单展示名称 | +| 菜单编码 | 文本输入框 | 人工录入,系统校验当前应用下唯一性和编码格式 | 菜单唯一编码,编辑时原则上不允许修改 | +| 上级菜单 | 树形选择器 | 当前应用菜单树 | 可为空;为空表示一级菜单 | +| 页面地址 | 文本输入框 | 人工录入 | 菜单对应页面地址,通常为业务应用提供的功能页面地址 | +| 启用状态 | Switch | 人工选择 | 控制菜单是否可展示和授权 | +| 排序 | 数字输入框 | 人工录入 | 菜单展示顺序 | +| 菜单说明 | 多行文本框 | 人工录入 | 菜单用途说明 | + +页面规则: + +- 新增一级菜单时,上级菜单可为空。 +- 新增下级菜单时,系统默认带入上级菜单。 +- 编辑菜单时,菜单编码原则上不允许修改。 +- 菜单下的操作权限在应用管理的菜单配置中基于菜单或页面维护,应用菜单编辑页面不直接维护操作权限明细。 + +### 5.2.11.8 菜单操作权限配置页面 + +菜单操作权限配置页面用于维护某个菜单或页面下可被授权控制的操作动作。 + +展示方式: + +- 采用数据表格 + 表单弹窗方式展示。 +- 用户在应用详情页的菜单配置 Tab 页签中选择某个菜单,点击配置操作权限后进入。 +- 数据表格展示当前菜单下已配置的操作权限。 +- 新增或编辑操作权限时,打开表单弹窗维护单个操作权限。 + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 操作名称 | 操作权限展示名称 | +| 操作编码 | 当前菜单下唯一的操作编码 | +| 操作类型 | 查看、新增、编辑、删除、审核、导入、导出、启用、停用、自定义操作 | +| 启用状态 | 启用、停用 | +| 说明 | 操作用途说明 | +| 操作 | 编辑、启用、停用 | + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 所属应用 | 只读文本 | 当前菜单归属应用 | 系统自动带入 | +| 所属菜单 | 只读文本 | 当前选中菜单 | 系统自动带入 | +| 操作名称 | 文本输入框 | 人工录入 | 操作权限展示名称 | +| 操作编码 | 文本输入框 | 人工录入,系统校验当前菜单下唯一性和编码格式 | 编辑时原则上不允许修改 | +| 操作类型 | 下拉框 | 系统字典:查看、新增、编辑、删除、审核、导入、导出、启用、停用、自定义操作 | 用于归类操作动作 | +| 启用状态 | Switch | 人工选择 | 控制该操作权限是否可用于授权 | +| 说明 | 多行文本框 | 人工录入 | 操作用途说明 | + +业务规则: + +- 操作权限必须归属于具体菜单或页面。 +- 操作编码在同一菜单下唯一。 +- 不允许脱离菜单或页面单独配置操作权限。 +- 菜单停用后,该菜单下操作权限同时不可用。 +- 操作权限停用后,不可继续用于新增角色授权。 +- 已被角色引用的操作权限停用时,需要提示影响范围。 + +### 5.2.11.9 可授权范围编辑页面 + +可授权范围编辑页面用于维护应用是否可被客户开通,以及适用范围提示。 + +展示方式: + +- 采用表单方式展示。 +- 不使用表格、Tab 页签或树形结构。 +- 当前可授权范围信息在应用详情页下方的可授权范围 Tab 页签中展示。 +- 用户在可授权范围 Tab 页签中点击配置可授权范围后,进入可授权范围编辑页面。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 是否允许客户开通 | Switch | 人工选择 | 控制该应用是否出现在客户管理的未开通应用 Tab 中 | +| 适用客户类型 | 多选下拉框 | 系统字典:连锁型客户、平台型客户、试点客户、内部测试客户 | 用于提示和筛选适用客户类型 | +| 适用行业 | 多选下拉框 | 系统字典:连锁餐饮、连锁鞋服、连锁零售、连锁药店、物流平台、充电桩平台、其他行业 | 用于提示和筛选适用行业 | +| 默认角色模板 | 下拉框 / 多选下拉框 | 角色管理中已启用的角色模板 | 客户开通应用后可参考的默认角色模板 | +| 默认菜单范围 | 树形多选框 | 当前应用已启用菜单树 | 客户开通应用后默认可授权的菜单范围 | + +## 5.2.12 使用导航 + +### 5.2.12.1 新增应用 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 新增应用 +``` + +操作步骤: + +1. 进入应用管理列表页。 +2. 点击新增应用。 +3. 填写应用名称、应用简称、应用编码、应用类型、应用入口类型。 +4. 按需填写应用入口地址、应用图标、应用说明、应用负责人。 +5. 设置接入状态和启用状态。 +6. 保存应用。 +7. 保存成功后,系统生成应用档案。 + +### 5.2.12.2 编辑应用 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 应用列表 > 编辑 +``` + +操作步骤: + +1. 进入应用管理列表页。 +2. 按应用名称、应用编码、应用类型或启用状态查询应用。 +3. 点击编辑。 +4. 修改应用基础信息或入口配置。 +5. 保存修改。 +6. 系统记录应用信息变更日志。 + +### 5.2.12.3 查看应用详情 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 应用列表 > 查看 +``` + +或: + +```text +基础平台 > 平台管理 > 应用管理 > 应用列表 > 应用名称 +``` + +操作步骤: + +1. 进入应用管理列表页。 +2. 按应用名称、应用编码、应用类型或启用状态查询应用。 +3. 点击查看或应用名称。 +4. 进入应用详情页。 +5. 在上方只读基础信息区查看应用基础信息和入口配置。 +6. 在下方 Tab 页签中查看菜单配置、可授权范围、已开通客户和操作记录。 + +### 5.2.12.4 配置应用菜单 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 应用列表 > 配置菜单 +``` + +或: + +```text +基础平台 > 平台管理 > 应用管理 > 应用详情 > 菜单配置 +``` + +操作步骤: + +1. 进入应用管理列表页或应用详情页。 +2. 点击配置菜单。 +3. 系统进入应用详情页下方的菜单配置 Tab 页签。 +4. 在菜单配置 Tab 页签的树形表格中查看当前应用多级菜单树。 +5. 点击新增、编辑或新增下级菜单。 +6. 系统打开应用菜单编辑页面。 +7. 通过表单维护单个菜单信息并保存。 +8. 系统返回菜单配置 Tab 页签,并刷新菜单树。 +9. 系统记录菜单配置变更日志。 + +### 5.2.12.5 配置菜单操作权限 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 应用详情 > 菜单配置 > 配置操作权限 +``` + +操作步骤: + +1. 进入应用详情页。 +2. 打开菜单配置 Tab 页签。 +3. 在菜单树形表格中选择目标菜单。 +4. 点击配置操作权限。 +5. 系统打开菜单操作权限配置页面。 +6. 查看当前菜单下已有操作权限。 +7. 点击新增或编辑。 +8. 在表单弹窗中维护操作名称、操作编码、操作类型、启用状态和说明。 +9. 保存操作权限。 +10. 系统记录菜单操作权限配置变更日志。 + +### 5.2.12.6 配置可授权范围 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 应用列表 > 配置可授权范围 +``` + +或: + +```text +基础平台 > 平台管理 > 应用管理 > 应用详情 > 可授权范围 +``` + +操作步骤: + +1. 进入应用管理列表页或应用详情页。 +2. 点击配置可授权范围。 +3. 系统进入应用详情页下方的可授权范围 Tab 页签。 +4. 查看当前可授权范围配置。 +5. 点击编辑。 +6. 系统打开可授权范围编辑页面。 +7. 设置是否允许客户开通。 +8. 设置适用客户类型、适用行业、默认角色模板和默认菜单范围。 +9. 保存配置。 +10. 系统返回可授权范围 Tab 页签,并刷新当前配置。 +11. 系统记录可授权范围配置变更日志。 + +### 5.2.12.7 启用 / 停用应用 + +操作路径: + +```text +基础平台 > 平台管理 > 应用管理 > 应用列表 > 启用 / 停用 +``` + +操作步骤: + +1. 进入应用管理列表页。 +2. 查询目标应用。 +3. 点击启用或停用。 +4. 停用应用时,系统提示停用影响。 +5. 确认操作。 +6. 系统更新应用状态并记录操作日志。 + +停用影响: + +- 所有客户不可继续访问该应用。 +- 基础平台不展示该应用入口和该应用菜单。 +- 已开通客户关系不删除。 +- 历史业务数据不删除。 + +## 5.2.13 验收标准 + +- 可新增、编辑、启用、停用应用。 +- 应用编码全局唯一,重复时不允许保存。 +- 应用启用前必须维护入口类型,应用入口地址为选填。 +- 业务应用各功能点可通过基础平台菜单地址进入。 +- 应用列表页可按应用名称、应用编码、应用类型、入口类型、接入状态、启用状态查询应用。 +- 应用详情页可查看基础信息、菜单配置、可授权范围、已开通客户和操作记录。 +- 应用详情页的菜单配置 Tab 页签采用树形表格展示应用多级菜单树。 +- 应用菜单编辑页面采用表单方式维护单个菜单。 +- 菜单操作权限在应用管理的菜单配置中基于菜单或页面配置。 +- 菜单操作权限配置页面采用数据表格 + 表单弹窗方式维护。 +- 应用详情页的可授权范围 Tab 页签采用表单方式展示当前配置。 +- 可授权范围编辑页面采用表单方式维护。 +- 应用停用后,所有客户不可继续访问该应用。 +- 客户未开通应用时,不显示该应用入口。 +- 应用停用后,基础平台不展示该应用入口和该应用菜单。 +- 应用入口、菜单、菜单操作权限、可授权范围、启用状态变更均生成操作日志。 diff --git a/40-平台与架构/基础平台/功能模块/03-组织管理.md b/40-平台与架构/基础平台/功能模块/03-组织管理.md index bcc5628..d79f097 100644 --- a/40-平台与架构/基础平台/功能模块/03-组织管理.md +++ b/40-平台与架构/基础平台/功能模块/03-组织管理.md @@ -4,47 +4,560 @@ 上级文档:[基础平台产品设计](../基础平台产品设计.md) - ## 5.3.1 功能说明 -组织管理用于维护客户内部组织结构,支撑总部、部门、品牌、区域、门店等组织层级。 +组织管理用于维护客户内部组织结构,是用户归属、角色授权、数据范围控制和业务系统数据隔离的基础。 + +基础平台组织用于表达客户内部管理结构,例如总部、分公司、部门、品牌、大区、区域、门店、平台商户等。组织管理只维护基础组织档案和组织层级,不承载门店经营、品牌经营、供应链、财务核算等业务属性。 ## 5.3.2 功能范围 +- 查询组织树 +- 查看组织详情 - 新增组织 - 编辑组织 - 启用 / 停用组织 -- 查询组织树 - 调整上级组织 - 维护组织负责人 - 维护组织类型 +- 查看组织操作记录 -## 5.3.3 组织类型 +## 5.3.3 字段要求 + +组织基础信息至少包括: + +| 字段 | 说明 | 是否必填 | +| --- | --- | --- | +| 所属客户 | 组织归属客户 | 是 | +| 组织名称 | 组织展示名称 | 是 | +| 组织简称 | 用于列表、选择器等场景的短名称 | 否 | +| 组织编码 | 当前客户下唯一的组织编码 | 是 | +| 组织类型 | 公司、分公司、部门、品牌、大区、区域、门店、平台商户、其他 | 是 | +| 上级组织 | 当前组织的父级组织 | 否 | +| 组织负责人 | 当前组织的主要负责人 | 否 | +| 联系方式 | 组织负责人或组织联系手机号、电话、邮箱 | 否 | +| 启用状态 | 组织是否可继续使用 | 是 | +| 排序 | 同级组织展示顺序 | 否 | +| 组织说明 | 组织用途或补充说明 | 否 | +| 创建时间 | 组织档案创建时间 | 是 | +| 更新时间 | 组织档案最近更新时间 | 是 | + +### 5.3.3.1 组织编码规则 + +组织编码用于在基础平台内唯一识别客户下的组织。 + +编码规则: + +- 组织编码在同一客户下唯一。 +- 不同客户之间允许存在相同组织编码。 +- 组织编码创建后原则上不允许修改。 +- 组织编码可由系统生成,也可由平台管理员或客户管理员按客户已有编码维护。 +- 系统生成时建议格式为:`O` + 6 位流水号。 +- 示例:`O000001`、`O000002`。 +- 流水号按客户维度递增,不按组织类型分别递增。 +- 删除或停用组织后,原组织编码不得在同一客户下复用。 +- 组织编码仅用于系统识别、用户归属、权限范围、日志追踪和系统间关联,不承载组织层级含义。 + +编码校验要求: + +- 新增组织时,系统需要校验同一客户下组织编码是否已存在。 +- 组织编码为空、重复或格式不符合规则时,不允许保存组织。 +- 导入或迁移组织数据时,如外部数据包含组织编码,需要校验是否在当前客户下唯一。 + +### 5.3.3.2 组织类型定义 基础平台 1.0 支持以下组织类型: -- 公司 -- 部门 -- 品牌 -- 大区 -- 区域 -- 门店 -- 项目组织 -- 平台商户 -- 其他 +| 组织类型 | 定义 | 适用示例 | +| --- | --- | --- | +| 公司 | 客户内部最高层级或法人 / 管理主体 | 总部公司、品牌公司、业务公司 | +| 分公司 | 公司下设的分支经营或管理机构 | 省级分公司、城市分公司、区域分公司 | +| 部门 | 公司或组织下的职能部门 | 财务部、加盟部、直营部、运营部 | +| 品牌 | 连锁集团下的品牌管理单元 | 小吃品牌、茶饮品牌、火锅品牌 | +| 大区 | 品牌或业务线下的大区管理组织 | 华东大区、华南大区 | +| 区域 | 大区下的区域管理组织 | 上海区域、杭州区域 | +| 门店 | 连锁客户下的门店管理单元 | 加盟店、直营店、联营店 | +| 平台商户 | 平台型客户下的商户或经营主体 | 物流承运商、充电站运营商 | +| 其他 | 暂未归入标准类型的组织 | 临时组织、特殊协作组织 | -## 5.3.4 业务规则 +业务规则: + +- 组织类型创建组织时必须选择。 +- 组织类型支持后续编辑,但变更后不自动改变用户、角色、数据范围和历史业务数据。 +- 分公司用于表达客户内部具有相对独立经营或管理职责的分支机构;大区、区域更偏运营管理层级,不默认等同于分公司。 +- 门店可以作为组织类型纳入基础平台组织数据,用于用户归属、数据范围和权限控制;但万店规模客户不应在组织树中默认展开全部门店及其下级节点。 +- 组织管理主页面的左侧管理组织树默认只展示管理组织,门店及其下级节点应通过右侧门店列表、门店检索或权限配置中的指定门店选择器进行展示和选择。 +- 平台商户用于平台型客户的组织归属和权限范围,不等同于分账系统中的结算主体或账户。 +- 督导、区域经理、店长等属于岗位、角色或人员职责,不作为组织类型维护;督导负责哪些门店应通过用户所属组织、角色授权和数据范围配置表达。 +- 新增组织类型需由产品负责人确认后维护到数据字典。 + +## 5.3.4 组织树管理 + +### 5.3.4.1 功能说明 + +组织树管理用于按客户展示管理组织层级,并支持在组织树上进行新增、编辑、启停和调整上级组织。 + +对于门店数量较多的连锁客户,门店及其下级节点不在左侧管理组织树中默认作为节点逐级展开。门店仍可作为组织类型存在,但应通过门店列表、门店检索、分页表格或指定门店选择器承载。 + +### 5.3.4.2 功能范围 + +- 按客户查看管理组织树。 +- 按组织名称、组织编码、组织类型、启用状态查询管理组织。 +- 展开 / 收起组织层级。 +- 查看选中管理组织下的门店列表和门店数量。 +- 新增同级组织。 +- 新增下级组织。 +- 编辑组织信息。 +- 启用 / 停用组织。 +- 调整组织上级。 + +### 5.3.4.3 业务规则 + +- 组织必须归属于某个客户。 +- 组织树按客户隔离,不允许跨客户查看或维护组织。 +- 一个组织最多只能有一个上级组织。 +- 顶层组织在客户初始化时创建,组织管理主页面不提供新增顶层组织按钮。 +- 组织管理主页面新增组织时必须选择已有组织作为上级组织。 +- 组织管理主页面不允许新增无上级组织的组织。 +- 顶层组织允许没有上级组织,但仅由客户初始化流程创建。 +- 左侧管理组织树默认展示公司、分公司、部门、品牌、大区、区域、平台商户、其他等管理组织。 +- 门店组织及其下级节点不在左侧管理组织树中默认展示,避免万店客户组织树过深、节点过多、加载和操作困难。 +- 新增或编辑组织时如选择组织类型为门店,保存后该组织进入右侧下级门店页签或门店检索结果,不进入左侧管理组织树默认展示范围。 +- 如门店下存在档口、店中店、外摆点等特殊经营节点,默认跟随门店进入门店相关列表或后续门店业务系统,不进入左侧管理组织树默认展示范围。 +- 如需要维护门店与区域、大区、品牌之间的归属关系,应在右侧门店列表或后续门店生命周期系统中完成。 +- 不允许将组织调整到其他客户下。 +- 不允许将组织调整到自己或自己的下级组织下。 +- 调整上级组织不自动改变历史业务数据归属。 +- 组织树默认只展示当前客户下启用和停用的管理组织,不展示已删除历史数据。 + +## 5.3.5 组织负责人维护 + +### 5.3.5.1 功能说明 + +组织负责人用于标识当前组织的管理责任人,便于后续消息通知、待办分派、权限初始化和问题排查。 + +### 5.3.5.2 功能范围 + +- 设置组织负责人。 +- 更换组织负责人。 +- 清空组织负责人。 +- 查看组织负责人联系方式。 + +### 5.3.5.3 业务规则 + +- 组织负责人必须是当前客户下的用户。 +- 停用用户不可被新增设置为组织负责人。 +- 组织负责人变更不自动改变该用户的角色和权限。 +- 组织负责人停用后,组织负责人字段保留历史展示,但系统应提示负责人已停用。 +- 组织负责人变更需要记录操作日志。 + +## 5.3.6 启用 / 停用组织 + +### 5.3.6.1 功能说明 + +启用 / 停用组织用于控制组织是否可继续作为用户归属、角色授权和数据范围选择对象。 + +### 5.3.6.2 业务规则 + +- 停用组织后,该组织不可继续分配给新用户。 +- 停用组织后,该组织不可继续作为新增角色数据范围。 +- 停用组织不影响历史用户归属、历史角色授权和历史业务数据归属。 +- 停用组织时,如果存在启用状态的下级组织,系统需要提示影响范围。 +- 是否允许停用存在启用下级组织的组织,由平台配置决定;1.0 建议允许停用但需要二次确认。 +- 启用上级组织不自动启用下级组织。 +- 停用上级组织后,下级组织在组织树中仍展示原层级,但需要体现上级已停用状态。 +- 停用组织和启用组织均需要记录操作日志。 + +## 5.3.7 业务规则 - 组织必须归属于某个客户。 - 组织编码在同一客户下唯一。 - 组织支持多级结构。 -- 停用组织后,该组织不可继续分配给新用户。 -- 停用组织不影响历史数据归属。 -- 门店可以作为一种组织类型,但门店业务属性由业务系统维护。 +- 一个客户至少应有一个顶层组织。 +- 用户可归属于一个或多个组织,但必须有一个默认组织,具体规则在用户与账号管理中定义。 +- 数据权限可按全部、本组织及下级组织、本组织、指定组织、指定门店等范围生效,具体规则在角色管理中定义。 +- 对于加盟连锁企业的督导场景,督导本人可归属于区域、大区或运营部门,实际负责门店通过角色数据范围选择指定门店,不通过新增组织类型表达。 +- 组织调整不自动改变历史业务单据、历史对账数据、历史分账数据等业务数据归属。 +- 客户停用后,不允许继续新增该客户下组织。 +- 组织停用不删除组织档案。 -## 5.3.5 验收标准 +## 5.3.8 界面设计 -- 可维护多级组织树。 -- 可按客户隔离组织数据。 -- 停用组织后不可继续用于新授权。 -- 用户数据权限可按组织范围生效。 +### 5.3.8.1 功能入口与访问权限 + +组织管理作为基础平台的客户内管理功能,建议放置在基础平台左侧菜单: + +```text +基础平台 +└── 组织管理 +``` + +页面访问规则: + +- 平台超级管理员、实施人员、具备组织管理权限的平台用户可维护所有客户组织。 +- 客户管理员只能维护本客户下组织。 +- 普通业务用户不可访问组织管理页面。 +- 无组织管理权限的用户不展示组织管理菜单。 + +### 5.3.8.2 组织管理主页面 + +点击基础平台 > 组织管理后,直接进入组织管理主页面。组织管理主页面是组织管理的实际工作页面,用于展示管理组织树、组织详情和组织下门店列表。 + +展示方式: + +- 平台用户进入页面后,顶部展示客户选择器和组织查询条件。 +- 客户管理员或归属于某个客户的用户进入页面后,系统默认当前客户,不展示客户查询条件。 +- 左侧为管理组织树,默认不展示门店及其下级节点。 +- 右侧为组织详情区,采用 Tab 页签展示基础信息、下级门店、操作记录。 +- 下级门店页签采用查询区域 + 数据表格 + 分页展示。 + +简化版原型图: + +```text +┌──────────────────────────────────────────────────────────────────────────────┐ +│ 基础平台 > 组织管理 │ +├──────────────────────────────────────────────────────────────────────────────┤ +│ 客户: [客户选择器/当前客户只读] 组织名称:[ ] 组织编码:[ ] │ +│ 组织类型:[全部 v] 启用状态:[全部 v] [查询] [重置] │ +├───────────────────────┬──────────────────────────────────────────────────────┤ +│ 管理组织树 │ 组织详情 │ +│ │ │ +│ [新增下级组织] │ 当前组织:华东大区 [编辑] │ +│ │ [调整上级] [停用]│ +│ ▼ XX集团总部 │ │ +│ ▼ 餐饮品牌公司 │ ┌──────────┬──────────┬──────────┐ │ +│ ▼ 华东大区 │ │ 基础信息 │ 下级门店 │ 操作记录 │ │ +│ 上海区域 门店128│ └──────────┴──────────┴──────────┘ │ +│ 杭州区域 门店86 │ │ +│ ▼ 华南大区 │ 基础信息页签: │ +│ 广州区域 门店92 │ 组织名称:华东大区 │ +│ │ 组织编码:O000123 │ +│ 说明:左侧不展示门店及 │ 组织类型:大区 │ +│ 其下级节点,只展示门店 │ 上级组织:餐饮品牌公司 │ +│ 数量。 │ 组织负责人:张三 │ +│ │ 启用状态:启用 │ +├───────────────────────┴──────────────────────────────────────────────────────┤ +│ 下级门店页签示例: │ +│ 门店名称:[ ] 门店编码:[ ] 启用状态:[全部 v] [查询] │ +│ ┌──────────┬──────────┬──────────┬──────────┬──────────┬──────────┐ │ +│ │ 门店名称 │ 门店编码 │ 所属品牌 │ 所属大区 │ 所属区域 │ 操作 │ │ +│ ├──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤ │ +│ │ 上海001店│ S000001 │ 餐饮品牌 │ 华东大区 │ 上海区域 │ 查看 编辑│ │ +│ │ 上海002店│ S000002 │ 餐饮品牌 │ 华东大区 │ 上海区域 │ 查看 编辑│ │ +│ └──────────┴──────────┴──────────┴──────────┴──────────┴──────────┘ │ +│ < 1 / 20 > │ +└──────────────────────────────────────────────────────────────────────────────┘ +``` + +客户选择规则: + +| 用户类型 | 客户选择方式 | 说明 | +| --- | --- | --- | +| 平台用户 | 客户选择器 | 需要先选择客户,再查看该客户组织 | +| 实施人员 | 客户选择器 | 可按项目需要选择客户 | +| 客户管理员 | 只读当前客户 | 默认当前客户,不允许切换 | +| 客户内普通管理用户 | 只读当前客户 | 默认当前客户,不允许切换 | + +管理组织查询条件: + +| 查询项 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 组织名称 | 文本输入框 | 人工录入 | 支持模糊查询 | +| 组织编码 | 文本输入框 | 人工录入 | 支持精确或模糊查询 | +| 组织类型 | 下拉框 | 系统字典:公司、分公司、部门、品牌、大区、区域、平台商户、其他 | 可为空,不包含门店 | +| 启用状态 | 下拉框 | 系统字典:全部、启用、停用 | 默认全部 | +| 查询 | 按钮 | 用户点击 | 作为查询区域最后一个表单元素 | + +管理组织树字段: + +| 字段 | 说明 | +| --- | --- | +| 组织名称 | 按层级展示组织名称 | +| 组织类型 | 展示组织类型标签 | +| 启用状态 | 停用组织需要展示停用标识 | +| 下级门店数 | 如当前组织下存在门店,展示门店数量,不展开门店及其下级节点 | + +右侧基础信息页签字段: + +| 字段 | 说明 | +| --- | --- | +| 组织名称 | 当前选中组织名称 | +| 组织简称 | 当前选中组织简称 | +| 组织编码 | 当前选中组织编码 | +| 组织类型 | 当前选中组织类型 | +| 上级组织 | 当前组织父级 | +| 组织负责人 | 当前组织负责人 | +| 联系方式 | 组织负责人或组织联系方式 | +| 启用状态 | 当前组织启用或停用 | +| 排序 | 同级排序 | +| 组织说明 | 组织用途说明 | +| 创建时间 | 组织创建时间 | +| 更新时间 | 最近更新时间 | + +右侧下级门店页签: + +| 区域 | 展示方式 | 说明 | +| --- | --- | --- | +| 门店查询区域 | 查询表单 | 按门店名称、门店编码、启用状态查询 | +| 门店列表 | 数据表格 + 分页 | 展示当前组织及下级组织范围内的门店 | + +门店列表字段: + +| 字段 | 说明 | +| --- | --- | +| 门店名称 | 门店组织名称 | +| 门店编码 | 门店组织编码 | +| 所属品牌 | 门店归属品牌组织 | +| 所属大区 | 门店归属大区组织 | +| 所属区域 | 门店归属区域组织 | +| 启用状态 | 启用、停用 | +| 操作 | 查看、编辑、调整归属、启用、停用 | + +页面操作: + +- 新增下级组织 +- 查看下级门店 +- 编辑组织 +- 调整上级组织 +- 启用组织 +- 停用组织 + +### 5.3.8.3 组织新增 / 编辑页 + +组织新增 / 编辑页用于创建或维护客户下的组织档案。新增和编辑使用同一个页面或弹窗,根据操作模式控制默认值、只读字段和保存规则。 + +展示方式: + +- 采用表单方式展示。 +- 不使用表格或 Tab 页签。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 所属客户 | 下拉框 / 客户选择器 / 只读文本 | 客户管理中已启用客户 | 平台用户选择;客户管理员只读显示当前客户 | +| 组织名称 | 文本输入框 | 人工录入 | 必填 | +| 组织简称 | 文本输入框 | 人工录入 | 选填 | +| 组织编码 | 文本输入框 | 系统生成或人工录入 | 必填,当前客户下唯一 | +| 组织类型 | 下拉框 | 系统字典:公司、分公司、部门、品牌、大区、区域、门店、平台商户、其他 | 必填 | +| 上级组织 | 树形选择器 | 当前客户组织树 | 新增模式必填,新增下级组织时系统默认带入 | +| 组织负责人 | 用户选择器 | 当前客户下启用用户 | 选填 | +| 联系方式 | 文本输入框 | 人工录入或根据负责人带出 | 选填 | +| 启用状态 | Switch | 人工选择 | 默认启用 | +| 排序 | 数字输入框 | 人工录入 | 选填 | +| 组织说明 | 多行文本框 | 人工录入 | 选填 | + +新增模式规则: + +- 所属客户、组织名称、组织编码、组织类型为必填。 +- 平台用户新增组织时必须先选择客户。 +- 客户管理员新增组织时,所属客户默认为当前客户且不可修改。 +- 新增下级组织时,上级组织默认带入当前选中组织。 +- 新增模式下上级组织必填,不允许新增无上级组织的顶层组织。 +- 组织编码可由系统生成或人工录入,保存时校验当前客户下唯一。 +- 创建时间、更新时间由系统生成,不在新增表单中录入。 + +编辑模式规则: + +- 所属客户、组织编码、创建时间、更新时间采用只读文本展示。 +- 组织编码编辑时不允许修改。 +- 组织名称、组织简称、组织类型、上级组织、组织负责人、联系方式、启用状态、排序、组织说明可编辑。 +- 启用状态采用 Switch 维护;停用组织时需要提示影响范围。 +- 上级组织如在编辑页支持调整,需要执行调整上级组织校验规则。 + +模式差异: + +| 字段 / 规则 | 新增模式 | 编辑模式 | +| --- | --- | --- | +| 所属客户 | 平台用户选择;客户管理员只读当前客户 | 只读展示 | +| 组织编码 | 系统生成或人工录入 | 只读展示,不允许修改 | +| 上级组织 | 必填,新增下级时默认带入 | 可按规则调整 | +| 创建时间 | 不展示或系统生成 | 只读展示 | +| 更新时间 | 不展示或系统生成 | 只读展示 | +| 保存结果 | 创建组织档案 | 更新组织档案 | + +### 5.3.8.4 调整上级组织弹窗 + +调整上级组织用于修改组织树层级。 + +展示方式: + +- 采用表单 + 树形选择器方式展示。 +- 不使用数据表格。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 当前组织 | 只读文本 | 当前选中组织 | 系统自动带入 | +| 当前上级组织 | 只读文本 | 当前组织父级 | 系统自动带入 | +| 新上级组织 | 树形选择器 | 当前客户组织树 | 必填 | +| 调整原因 | 多行文本框 | 人工录入 | 选填 | + +页面规则: + +- 新上级组织不能选择当前组织。 +- 新上级组织不能选择当前组织的下级组织。 +- 新上级组织必须属于同一客户。 +- 新上级组织不能为空,组织管理主页面不允许通过调整上级组织生成新的顶层组织。 +- 保存后刷新管理组织树。 +- 调整上级组织需要记录操作日志。 + +### 5.3.8.5 操作记录页签 + +操作记录用于查看组织相关关键变更。 + +展示方式: + +- 位于组织详情区下方。 +- 采用数据表格展示。 +- 不设置复杂筛选条件,默认展示当前组织相关操作记录。 + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 操作时间 | 操作发生时间 | +| 操作人 | 执行操作的用户 | +| 操作类型 | 新增、编辑、启用、停用、调整上级组织、负责人变更 | +| 操作内容 | 操作摘要 | +| 操作说明 | 操作原因或备注 | + +## 5.3.9 使用导航 + +### 5.3.9.1 查看管理组织树 + +操作路径: + +```text +基础平台 > 组织管理 +``` + +操作步骤: + +1. 进入组织管理主页面。 +2. 平台用户选择客户;客户管理员和客户内用户默认当前客户,不展示客户查询条件。 +3. 按组织名称、组织编码、组织类型或启用状态查询。 +4. 在左侧管理组织树查看组织层级。 +5. 点击组织节点,在右侧查看组织详情。 + +### 5.3.9.2 查看下级门店 + +操作路径: + +```text +基础平台 > 组织管理 > 组织详情 > 下级门店 +``` + +操作步骤: + +1. 进入组织管理主页面。 +2. 平台用户选择客户;客户管理员和客户内用户默认当前客户。 +3. 在左侧管理组织树选择品牌、大区、区域或其他管理组织。 +4. 打开右侧下级门店页签。 +5. 按门店名称、门店编码或启用状态查询门店。 +6. 在门店列表中分页查看当前组织及下级组织范围内的门店。 + +### 5.3.9.3 新增组织 + +操作路径: + +```text +基础平台 > 组织管理 > 组织新增 / 编辑页 +``` + +操作步骤: + +1. 进入组织管理主页面。 +2. 选择客户。 +3. 选择一个已有组织。 +4. 点击新增下级组织。 +5. 系统打开组织新增 / 编辑页,并进入新增模式,上级组织默认带入当前选中组织。 +6. 填写组织名称、组织编码、组织类型。 +7. 按需选择组织负责人,填写联系方式、排序和组织说明。 +8. 设置启用状态。 +9. 保存组织。 +10. 系统刷新管理组织树并记录操作日志。 + +### 5.3.9.4 编辑组织 + +操作路径: + +```text +基础平台 > 组织管理 > 组织新增 / 编辑页 +``` + +操作步骤: + +1. 进入组织管理主页面。 +2. 查询并选择目标组织。 +3. 点击编辑组织。 +4. 系统打开组织新增 / 编辑页,并进入编辑模式。 +5. 修改组织名称、组织简称、组织类型、上级组织、组织负责人、联系方式、启用状态、排序或组织说明。 +6. 保存修改。 +7. 系统刷新组织详情并记录操作日志。 + +### 5.3.9.5 调整上级组织 + +操作路径: + +```text +基础平台 > 组织管理 > 组织树 > 调整上级组织 +``` + +操作步骤: + +1. 进入组织管理主页面。 +2. 查询并选择目标组织。 +3. 点击调整上级组织。 +4. 在弹窗中选择新上级组织。 +5. 系统校验是否同一客户、是否选择自身或下级组织。 +6. 保存调整。 +7. 系统刷新管理组织树并记录操作日志。 + +### 5.3.9.6 启用 / 停用组织 + +操作路径: + +```text +基础平台 > 组织管理 > 组织树 > 启用 / 停用 +``` + +操作步骤: + +1. 进入组织管理主页面。 +2. 查询并选择目标组织。 +3. 点击启用或停用。 +4. 停用组织时,系统提示停用影响。 +5. 确认操作。 +6. 系统更新组织状态并记录操作日志。 + +停用影响: + +- 停用组织不可继续分配给新用户。 +- 停用组织不可继续作为新增角色数据范围。 +- 停用组织不删除历史组织档案。 +- 停用组织不影响历史业务数据归属。 + +## 5.3.10 验收标准 + +- 可按客户维护管理组织树。 +- 平台用户可选择客户查看组织;客户管理员只能查看和维护本客户组织。 +- 组织编码在同一客户下唯一,重复时不允许保存。 +- 可在已有组织下新增下级组织。 +- 顶层组织由客户初始化流程创建,组织管理主页面不提供新增顶层组织按钮。 +- 可编辑组织名称、简称、类型、负责人、联系方式、启用状态、排序和说明。 +- 可调整组织上级,且不能调整到其他客户、自己或自己的下级组织下。 +- 可启用和停用组织。 +- 停用组织后不可继续分配给新用户。 +- 停用组织后不可继续作为新增角色数据范围。 +- 组织负责人只能选择当前客户下启用用户。 +- 组织管理主页面采用查询区域 + 左侧管理组织树 + 右侧详情区展示。 +- 客户管理员和客户内用户进入组织管理主页面时,默认当前客户,不展示客户查询条件。 +- 左侧管理组织树默认不展示门店及其下级节点。 +- 组织类型为门店的组织保存后进入门店列表和门店检索结果,不进入左侧管理组织树默认展示范围。 +- 门店通过右侧下级门店页签的查询区域 + 数据表格 + 分页展示。 +- 新增组织、编辑组织复用组织新增 / 编辑页,并采用表单方式展示。 +- 调整上级组织采用表单 + 树形选择器方式展示。 +- 操作记录采用数据表格展示。 +- 组织新增、编辑、启用、停用、调整上级组织、负责人变更均生成操作日志。 diff --git a/40-平台与架构/基础平台/功能模块/04-用户与账号管理.md b/40-平台与架构/基础平台/功能模块/04-用户与账号管理.md index 536adf7..1e4db55 100644 --- a/40-平台与架构/基础平台/功能模块/04-用户与账号管理.md +++ b/40-平台与架构/基础平台/功能模块/04-用户与账号管理.md @@ -4,51 +4,793 @@ 上级文档:[基础平台产品设计](../基础平台产品设计.md) - ## 5.4.1 功能说明 -用户与账号管理用于维护系统使用人员及登录账号。 +用户与账号管理用于维护基础平台使用人员、登录账号、第三方登录账号、用户所属组织、默认组织和角色分配,是统一登录、权限控制、数据范围控制和操作审计的基础。 + +用户是自然人档案,账号是用户登录系统的身份标识。用户和账号需要分离建模:一个用户可以绑定一个或多个登录账号,登录账号可以来自基础平台账号,也可以来自微信、企业微信、钉钉、飞书等第三方身份来源。 ## 5.4.2 功能范围 +- 查询用户列表 +- 查看用户详情 - 新增用户 - 编辑用户 - 启用 / 停用用户 -- 创建账号 -- 重置密码 -- 设置用户所属组织 +- 创建平台账号 +- 绑定第三方账号 +- 解绑账号 +- 启用 / 停用账号 +- 重置平台账号密码 +- 维护用户所属组织 - 设置默认组织 - 分配角色 -- 查询用户列表 -- 查看用户详情 +- 查看用户操作记录 ## 5.4.3 字段要求 -用户信息至少包括: +用户基础信息至少包括: -- 姓名 -- 手机号 -- 登录账号 -- 所属客户 -- 所属组织 -- 默认组织 -- 角色 -- 状态 -- 创建时间 +| 字段 | 说明 | 是否必填 | +| --- | --- | --- | +| 所属客户 | 用户归属客户 | 是 | +| 用户姓名 | 用户真实姓名或业务显示名称 | 是 | +| 手机号 | 用户手机号 | 是 | +| 所属组织 | 用户归属组织,可多选 | 是 | +| 默认组织 | 用户登录后的默认组织 | 是 | +| 用户状态 | 启用、停用 | 是 | +| 是否客户管理员 | 是否具备客户级管理权限 | 否 | +| 最近登录时间 | 用户最近一次登录时间 | 否 | +| 创建时间 | 用户档案创建时间 | 是 | +| 更新时间 | 用户档案最近更新时间 | 是 | -## 5.4.4 业务规则 +### 5.4.3.1 登录账号字段 + +登录账号信息作为用户详情下的独立账号信息维护,不作为用户基础档案字段直接维护。 + +登录账号信息至少包括: + +| 字段 | 说明 | 是否必填 | +| --- | --- | --- | +| 所属用户 | 登录账号绑定的用户 | 是 | +| 账号类型 | 平台账号、微信、企业微信、钉钉、飞书、其他 | 是 | +| 登录标识 | 用于登录识别的账号、手机号、邮箱、openId、unionId 或第三方用户 ID | 是 | +| 账号名称 | 第三方账号昵称或平台账号名称 | 否 | +| 绑定状态 | 已绑定、已解绑 | 是 | +| 启用状态 | 启用、停用 | 是 | +| 绑定时间 | 账号绑定时间 | 是 | +| 最近登录时间 | 该账号最近一次登录时间 | 否 | + +### 5.4.3.2 登录账号规则 + +登录账号用于用户登录基础平台。 + +账号规则: + +- 平台账号的登录标识在基础平台全局唯一。 +- 第三方账号的登录标识在同一账号类型下全局唯一。 +- 一个用户可以绑定多个账号。 +- 一个账号同一时间只能绑定一个用户。 +- 新增用户时,系统默认以手机号创建并绑定一个平台账号,平台账号登录标识默认等于手机号。 +- 登录账号创建或绑定后原则上不允许修改登录标识。 +- 登录账号不得与已停用账号重复绑定给其他用户。 +- 停用用户后,该用户下所有账号不可继续登录。 +- 停用账号后,仅该账号不可继续登录,不影响同一用户下其他启用账号。 +- 登录账号仅用于登录认证、日志追踪和系统识别,不承载组织、角色、门店等业务含义。 + +账号校验要求: + +- 新增平台账号时,系统需要校验登录标识是否已存在。 +- 绑定第三方账号时,系统需要校验该第三方账号是否已绑定其他用户。 +- 登录标识为空、重复或格式不符合规则时,不允许保存账号。 +- 客户管理员为本客户用户创建或绑定账号时,也需要执行账号唯一性校验。 + +### 5.4.3.3 账号类型定义 + +基础平台 1.0 支持以下账号类型: + +| 账号类型 | 定义 | 说明 | +| --- | --- | --- | +| 平台账号 | 基础平台自有登录账号 | 支持账号密码登录 | +| 微信 | 个人微信身份 | 可用于小程序、公众号或微信开放平台登录 | +| 企业微信 | 企业微信用户身份 | 可用于企业微信组织内用户登录 | +| 钉钉 | 钉钉用户身份 | 可用于钉钉组织内用户登录 | +| 飞书 | 飞书用户身份 | 可用于飞书组织内用户登录 | +| 其他 | 其他第三方身份来源 | 后续按项目扩展 | + +业务规则: + +- 第三方账号是否启用,取决于基础平台是否完成对应登录来源接入。 +- 第三方账号绑定用户后,登录成功仍需要进入基础平台统一认证鉴权流程。 +- 第三方账号只解决身份识别,不直接决定用户可访问的应用、菜单、操作和数据范围。 +- 第三方账号解绑后,不删除用户档案。 + +### 5.4.3.4 手机号规则 + +手机号用于用户联系、账号找回、短信验证和客户内部用户识别。 + +业务规则: + +- 1.0 默认同一客户下手机号唯一。 +- 不同客户之间是否允许相同手机号,按平台配置控制;1.0 建议允许不同客户存在相同手机号,但登录账号仍需全局唯一。 +- 新增用户时,手机号默认作为平台账号登录标识使用,需要同时满足平台账号全局唯一规则。 +- 手机号变更不自动修改平台账号登录标识,除非用户确认同步变更对应平台账号。 + +## 5.4.4 所属组织与默认组织 + +### 5.4.4.1 功能说明 + +所属组织用于表达用户在客户组织树中的归属关系。默认组织用于确定用户登录后的默认组织上下文。 + +### 5.4.4.2 功能范围 + +- 为用户选择一个或多个所属组织。 +- 设置用户默认组织。 +- 修改用户所属组织。 +- 修改用户默认组织。 +- 查看用户所属组织列表。 + +### 5.4.4.3 业务规则 - 用户必须归属于一个客户。 -- 登录账号在平台内唯一。 -- 手机号是否唯一按客户维度控制,1.0 默认同一客户下唯一。 +- 用户必须至少归属于一个启用状态组织。 +- 用户可归属于多个组织。 +- 用户必须有且仅有一个默认组织。 +- 默认组织必须来自用户所属组织范围。 +- 停用组织不可新增分配给用户。 +- 已分配给用户的组织被停用后,用户历史归属保留,但系统应提示该组织已停用。 +- 用户切换组织时,业务应用获取到的当前组织和数据范围应随之变化。 +- 所属组织变更需要记录操作日志。 + +## 5.4.5 角色分配 + +### 5.4.5.1 功能说明 + +角色分配用于为用户授予应用、菜单、操作权限和数据范围。 + +### 5.4.5.2 功能范围 + +- 查看用户已分配角色。 +- 为用户新增角色。 +- 移除用户角色。 +- 查看角色类型、所属应用、数据范围。 +- 查看角色分配时间和分配人。 + +### 5.4.5.3 业务规则 + +- 只能为用户分配当前客户可用角色。 +- 停用角色不可新增分配给用户。 +- 用户可拥有多个角色。 +- 多角色功能权限取并集。 +- 数据范围合并规则以角色管理模块为准。 +- 客户未开通应用时,不应向用户分配该应用角色。 +- 角色分配和移除需要记录操作日志。 + +## 5.4.6 启用 / 停用用户 + +### 5.4.6.1 功能说明 + +启用 / 停用用户用于控制用户是否可登录基础平台和访问业务应用。 + +### 5.4.6.2 业务规则 + +- 停用用户后,该用户下所有账号不可登录基础平台。 +- 停用用户后,该用户原 Token 在下一次认证鉴权时应失效。 +- 停用用户不删除用户档案、历史组织归属、历史角色分配和历史操作日志。 +- 停用用户不自动解绑或释放该用户下登录账号。 +- 停用客户管理员时,需要校验该客户是否仍至少保留一个启用状态客户管理员。 +- 启用用户前,需要确认所属客户启用、默认组织有效、账号信息完整。 +- 用户启用、停用需要记录操作日志。 + +## 5.4.7 登录账号管理 + +### 5.4.7.1 功能说明 + +登录账号管理用于为用户创建平台账号、绑定第三方账号、解绑账号、启用 / 停用账号,以及重置平台账号密码。 + +### 5.4.7.2 功能范围 + +- 查看用户已绑定账号。 +- 创建平台账号。 +- 绑定第三方账号。 +- 解绑账号。 +- 启用 / 停用账号。 +- 重置平台账号密码。 +- 查看账号最近登录时间。 + +### 5.4.7.3 业务规则 + +- 一个用户可以绑定多个账号。 +- 一个账号同一时间只能绑定一个用户。 +- 新增用户时,系统默认创建并绑定一个平台账号,登录标识默认为用户手机号。 +- 用户至少应有一个启用状态的登录账号,特殊导入或待激活用户除外。 +- 平台账号支持密码重置。 +- 第三方账号不在基础平台内重置密码。 +- 停用某个账号后,该账号不可继续登录,但不影响同一用户下其他启用账号。 +- 解绑账号后,该账号不可继续登录该用户身份。 +- 解绑用户最后一个启用账号时,需要提示用户可能无法登录。 +- 平台账号创建、账号绑定、解绑、启用、停用、平台账号密码重置需要记录操作日志。 + +## 5.4.8 密码与账号安全 + +### 5.4.8.1 功能说明 + +密码与账号安全用于支持平台账号初始登录、平台账号密码重置和账号访问控制。 + +### 5.4.8.2 功能范围 + +- 设置平台账号初始密码。 +- 系统生成平台账号初始密码。 +- 重置平台账号密码。 +- 要求用户通过平台账号首次登录时修改密码。 +- 查看最近登录时间。 + +### 5.4.8.3 业务规则 + +- 新增用户时,系统默认创建平台账号并将登录标识设置为用户手机号。 +- 用户需要登录基础平台时,必须至少绑定一个启用状态账号。 +- 初始密码可由系统生成或人工设置,具体方式按平台配置。 +- 重置平台账号密码后,用户下次通过该平台账号登录应按安全策略要求修改密码。 +- 平台管理员、客户管理员或具备用户管理权限的用户可重置平台账号密码。 +- 用户不可查看其他用户密码。 +- 密码规则、复杂度、有效期等安全策略由基础配置管理统一维护。 +- 平台账号密码重置需要记录操作日志。 + +## 5.4.9 业务规则 + +- 用户必须归属于一个客户。 +- 用户数据按客户隔离。 +- 平台用户可按授权范围管理多个客户用户。 +- 客户管理员只能管理本客户下用户。 +- 普通业务用户不可访问用户与账号管理页面。 +- 用户和账号分离维护。 +- 平台账号登录标识在基础平台全局唯一。 +- 第三方账号登录标识在同一账号类型下全局唯一。 +- 手机号 1.0 默认同一客户下唯一。 - 一个用户可属于多个组织。 - 一个用户必须有一个默认组织。 -- 停用用户后不可登录。 +- 是否客户管理员在用户与账号管理中只读展示,客户管理员身份的设置、取消和至少保留一个启用状态客户管理员的规则以客户管理模块为准。 +- 用户最终权限由客户应用开通、用户角色、菜单操作权限和数据范围共同决定。 - 用户离职或停用不删除历史操作日志。 -## 5.4.5 验收标准 +## 5.4.10 界面设计 -- 可创建用户并分配组织和角色。 -- 用户登录后只能看到授权应用和菜单。 -- 停用用户后不能登录。 -- 用户切换组织时,数据范围应随组织变化。 +### 5.4.10.1 功能入口与访问权限 + +用户与账号管理作为基础平台的客户内管理功能,建议放置在基础平台左侧菜单: + +```text +基础平台 +└── 用户与账号管理 +``` + +页面访问规则: + +- 平台超级管理员、实施人员、具备用户管理权限的平台用户可维护所有客户用户。 +- 客户管理员只能维护本客户下用户。 +- 普通业务用户不可访问用户与账号管理页面。 +- 无用户管理权限的用户不展示用户与账号管理菜单。 + +### 5.4.10.2 用户列表页 + +点击基础平台 > 用户与账号管理后,进入用户列表页。 + +展示方式: + +- 平台用户进入页面后,顶部展示客户选择器和用户查询条件。 +- 客户管理员或归属于某个客户的用户进入页面后,系统默认当前客户,不展示客户查询条件。 +- 用户列表采用查询区域 + 数据表格展示。 +- 查询条件较多时支持展开 / 收起。 +- 查询按钮作为查询区域最后一个表单元素。 + +简化版原型图: + +```text +┌──────────────────────────────────────────────────────────────────────────────┐ +│ 基础平台 > 用户与账号管理 [新增用户] │ +├──────────────────────────────────────────────────────────────────────────────┤ +│ 客户:[客户选择器/当前客户只读] 姓名:[ ] 登录标识:[ ] │ +│ 手机号:[ ] 所属组织:[组织选择器] 角色:[全部 v] 用户状态:[全部 v]│ +│ [查询] [重置] │ +├──────────────────────────────────────────────────────────────────────────────┤ +│ 用户列表 │ +│ ┌────────┬──────────┬──────────┬──────────┬──────────┬────────┐ │ +│ │ 姓名 │ 手机号 │ 默认组织 │ 绑定账号 │ 状态 │ 操作 │ │ +│ ├────────┼──────────┼──────────┼──────────┼──────────┼────────┤ │ +│ │ 张三 │ 138**** │ 华东大区 │ 2 │ 启用 │ 查看 │ │ +│ │ 李四 │ 139**** │ 上海区域 │ 1 │ 启用 │ 编辑 │ │ +│ └────────┴──────────┴──────────┴──────────┴──────────┴────────┘ │ +│ < 1 / 20 > │ +└──────────────────────────────────────────────────────────────────────────────┘ +``` + +客户选择规则: + +| 用户类型 | 客户选择方式 | 说明 | +| --- | --- | --- | +| 平台用户 | 客户选择器 | 需要先选择客户,再查看该客户用户 | +| 实施人员 | 客户选择器 | 可按项目需要选择客户 | +| 客户管理员 | 只读当前客户 | 默认当前客户,不允许切换 | +| 客户内普通管理用户 | 只读当前客户 | 默认当前客户,不允许切换 | + +查询条件: + +| 查询项 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 用户姓名 | 文本输入框 | 人工录入 | 支持模糊查询 | +| 登录标识 | 文本输入框 | 人工录入 | 支持按平台账号、手机号、第三方账号标识查询 | +| 手机号 | 文本输入框 | 人工录入 | 支持精确或模糊查询 | +| 所属组织 | 树形选择器 | 当前客户组织树和门店选择器 | 可为空 | +| 角色 | 下拉框 | 当前客户可用角色 | 可为空 | +| 用户状态 | 下拉框 | 系统字典:全部、启用、停用 | 默认全部 | +| 查询 | 按钮 | 用户点击 | 作为查询区域最后一个表单元素 | + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 用户姓名 | 用户显示姓名 | +| 手机号 | 用户手机号 | +| 所属客户 | 平台用户查看时展示 | +| 默认组织 | 用户默认组织 | +| 角色数量 | 用户已分配角色数量 | +| 绑定账号数 | 用户已绑定账号数量 | +| 是否客户管理员 | 是、否 | +| 用户状态 | 启用、停用 | +| 最近登录时间 | 最近一次登录时间 | +| 操作 | 查看、编辑、分配角色、账号管理、启用、停用 | + +### 5.4.10.3 用户新增 / 编辑页 + +用户新增 / 编辑页用于创建或维护用户自然人档案。新增和编辑使用同一个页面或弹窗,根据操作模式控制默认值、只读字段和保存规则。 + +展示方式: + +- 采用表单方式展示。 +- 表单分为用户基础信息、所属组织信息、默认平台账号信息。 +- 新增用户时系统默认按手机号创建并绑定平台账号;其他账号在用户详情页登录账号页签中维护。 +- 不在新增 / 编辑页直接配置角色,角色在用户详情页角色页签中维护。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 所属客户 | 客户选择器 / 只读文本 | 客户管理中已启用客户 | 平台用户选择;客户管理员只读当前客户 | +| 用户姓名 | 文本输入框 | 人工录入 | 必填 | +| 手机号 | 文本输入框 | 人工录入 | 必填 | +| 所属组织 | 树形多选器 | 当前客户启用组织,门店通过门店选择器选择 | 必填 | +| 默认组织 | 下拉框 / 树形选择器 | 用户已选所属组织 | 必填 | +| 用户状态 | Switch | 人工选择 | 默认启用 | +| 备注 | 多行文本框 | 人工录入 | 选填 | + +默认平台账号字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 创建默认平台账号 | Switch | 系统默认开启 | 新增用户时默认开启;特殊导入或待激活用户可按权限关闭 | +| 登录标识 | 只读文本 | 默认等于手机号 | 手机号变更时同步刷新 | +| 初始密码 | 密码输入框 / 系统生成 | 人工录入或系统生成 | 按平台密码策略控制 | +| 首次登录修改密码 | Switch | 人工选择 | 默认开启 | + +新增模式规则: + +- 所属客户、用户姓名、手机号、所属组织、默认组织为必填。 +- 平台用户新增用户时必须先选择客户。 +- 客户管理员新增用户时,所属客户默认为当前客户且不可修改。 +- 默认组织必须从所属组织中选择。 +- 手机号保存时校验当前客户下唯一。 +- 新增用户时,系统默认创建并绑定一个平台账号,平台账号登录标识默认为手机号。 +- 手机号作为平台账号登录标识时,需要同时校验平台账号全局唯一。 +- 默认平台账号创建成功后,账号类型为平台账号,绑定用户为当前用户。 +- 关闭创建默认平台账号仅适用于特殊导入、待激活用户或经授权的管理场景。 +- 保存成功后,可在用户详情页登录账号页签继续绑定第三方账号或维护其他登录账号。 +- 新增用户时不直接分配角色,保存成功后可在用户详情页角色页签分配角色。 + +编辑模式规则: + +- 所属客户、创建时间、更新时间采用只读文本展示。 +- 用户姓名、手机号、所属组织、默认组织、用户状态、备注可编辑。 +- 修改所属组织后,如默认组织不在新的所属组织范围内,需要重新选择默认组织。 +- 停用用户时需要提示登录和 Token 影响。 + +模式差异: + +| 字段 / 规则 | 新增模式 | 编辑模式 | +| --- | --- | --- | +| 所属客户 | 平台用户选择;客户管理员只读当前客户 | 只读展示 | +| 所属组织 | 必填 | 可编辑 | +| 默认组织 | 必填,来自所属组织 | 可编辑,必须来自所属组织 | +| 登录账号 | 默认按手机号创建平台账号 | 账号在用户详情页登录账号页签维护 | +| 角色 | 不在新增页配置 | 不在编辑页配置,通过用户详情维护 | +| 保存结果 | 创建用户档案 | 更新用户档案 | + +### 5.4.10.4 用户详情页 + +用户详情页用于查看用户基础信息、所属组织、登录账号、已分配角色、用户状态和操作记录。 + +展示方式: + +- 上方为用户基础信息只读区。 +- 下方为 Tab 页签。 +- Tab 页签包括:所属组织、登录账号、已分配角色、操作记录。 + +详情页区域: + +| 区域 | 展示方式 | 主要内容 | +| --- | --- | --- | +| 上方基础信息区 | 只读信息区 | 用户姓名、手机号、所属客户、默认组织、用户状态、绑定账号数、最近登录时间 | +| 下方页签区 | Tab 页签 | 所属组织、登录账号、已分配角色、操作记录 | + +详情页主操作按钮: + +- 编辑用户 +- 创建平台账号 +- 绑定第三方账号 +- 分配角色 +- 启用用户 +- 停用用户 + +所属组织页签: + +| 字段 | 说明 | +| --- | --- | +| 组织名称 | 用户所属组织 | +| 组织编码 | 所属组织编码 | +| 组织类型 | 所属组织类型 | +| 是否默认组织 | 是、否 | +| 启用状态 | 组织启用状态 | + +登录账号页签: + +| 字段 | 说明 | +| --- | --- | +| 账号类型 | 平台账号、微信、企业微信、钉钉、飞书、其他 | +| 登录标识 | 平台账号、手机号、邮箱、openId、unionId 或第三方用户 ID | +| 账号名称 | 第三方账号昵称或平台账号名称 | +| 绑定状态 | 已绑定、已解绑 | +| 启用状态 | 启用、停用 | +| 绑定时间 | 账号绑定时间 | +| 最近登录时间 | 该账号最近一次登录时间 | +| 操作 | 重置密码、启用、停用、解绑;其中重置密码仅平台账号展示 | + +已分配角色页签: + +| 字段 | 说明 | +| --- | --- | +| 角色名称 | 用户已分配角色 | +| 角色类型 | 平台角色、客户角色、应用角色 | +| 所属应用 | 角色归属应用 | +| 数据范围 | 角色对应数据范围 | +| 分配人 | 执行分配的用户 | +| 分配时间 | 角色分配时间 | +| 操作 | 移除 | + +操作记录页签: + +| 字段 | 说明 | +| --- | --- | +| 操作时间 | 操作发生时间 | +| 操作人 | 执行操作的用户 | +| 操作类型 | 新增、编辑、启用、停用、创建平台账号、绑定账号、解绑账号、账号停用、重置平台账号密码、分配角色、移除角色、组织变更 | +| 操作内容 | 操作摘要 | +| 操作说明 | 操作原因或备注 | + +### 5.4.10.5 登录账号维护 + +登录账号维护用于创建平台账号、绑定第三方账号、启用 / 停用账号、解绑账号和重置平台账号密码。 + +展示方式: + +- 位于用户详情页登录账号 Tab 页签。 +- 已绑定账号采用数据表格展示。 +- 创建平台账号、绑定第三方账号、重置平台账号密码采用表单弹窗。 + +创建平台账号弹窗字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 用户姓名 | 只读文本 | 当前用户 | 系统自动带入 | +| 账号类型 | 只读文本 | 平台账号 | 系统自动带入 | +| 登录标识 | 文本输入框 | 人工录入或根据手机号带出 | 必填,平台全局唯一 | +| 初始密码 | 密码输入框 / 系统生成 | 人工录入或系统生成 | 必填或系统生成 | +| 启用状态 | Switch | 人工选择 | 默认启用 | +| 首次登录修改密码 | Switch | 人工选择 | 默认开启 | + +绑定第三方账号弹窗字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 用户姓名 | 只读文本 | 当前用户 | 系统自动带入 | +| 账号类型 | 下拉框 | 微信、企业微信、钉钉、飞书、其他 | 必填 | +| 登录标识 | 文本输入框 | 第三方账号标识 | 必填,同一账号类型下唯一 | +| 账号名称 | 文本输入框 | 第三方账号昵称或名称 | 选填 | +| 启用状态 | Switch | 人工选择 | 默认启用 | + +页面规则: + +- 平台账号登录标识在基础平台全局唯一。 +- 第三方账号登录标识在同一账号类型下全局唯一。 +- 一个账号同一时间只能绑定一个用户。 +- 第三方账号不在基础平台内重置密码。 +- 解绑账号后,该账号不可继续登录该用户身份。 +- 平台账号创建、账号绑定、解绑、启用、停用、平台账号密码重置需要记录操作日志。 + +### 5.4.10.6 分配角色弹窗 + +分配角色弹窗用于维护用户角色。 + +展示方式: + +- 采用数据表格 + 表单弹窗方式展示。 +- 当前已分配角色在用户详情页已分配角色页签展示。 +- 点击分配角色后,打开角色选择弹窗。 + +角色选择字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 应用 | 下拉框 | 当前客户已开通应用 | 可为空 | +| 角色名称 | 文本输入框 | 人工录入 | 支持模糊查询 | +| 角色类型 | 下拉框 | 平台角色、客户角色、应用角色 | 可为空 | +| 角色列表 | 表格 + 多选框 | 当前客户可用且启用的角色 | 可多选 | + +页面规则: + +- 只能选择启用状态角色。 +- 只能选择当前客户可用角色。 +- 客户未开通应用时,不展示该应用角色。 +- 保存后刷新已分配角色页签。 +- 分配角色和移除角色需要记录操作日志。 + +### 5.4.10.7 重置密码弹窗 + +重置密码弹窗用于为用户下某个平台账号重置登录密码。 + +展示方式: + +- 采用表单弹窗方式展示。 +- 不使用表格或 Tab 页签。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 用户姓名 | 只读文本 | 当前用户 | 系统自动带入 | +| 登录标识 | 只读文本 | 当前平台账号登录标识 | 系统自动带入 | +| 密码生成方式 | 单选框 | 系统生成、人工设置 | 必填 | +| 新密码 | 密码输入框 | 人工录入 | 人工设置时必填 | +| 首次登录修改密码 | Switch | 人工选择 | 默认开启 | + +页面规则: + +- 仅平台账号支持重置密码。 +- 第三方账号不展示重置密码操作。 +- 重置密码后该平台账号原密码失效。 +- 系统生成密码时,需要按安全策略生成。 +- 重置密码后需要提示用户登录影响。 +- 重置密码需要记录操作日志。 + +## 5.4.11 使用导航 + +### 5.4.11.1 查询用户 + +操作路径: + +```text +基础平台 > 用户与账号管理 +``` + +操作步骤: + +1. 进入用户列表页。 +2. 平台用户选择客户;客户管理员和客户内用户默认当前客户,不展示客户查询条件。 +3. 按用户姓名、登录标识、手机号、所属组织、角色或用户状态查询。 +4. 在用户列表中查看用户。 + +### 5.4.11.2 新增用户 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户新增 / 编辑页 +``` + +操作步骤: + +1. 进入用户列表页。 +2. 点击新增用户。 +3. 系统打开用户新增 / 编辑页,并进入新增模式。 +4. 填写用户姓名、手机号。 +5. 选择所属组织和默认组织。 +6. 按需填写备注。 +7. 确认默认平台账号信息,登录标识默认等于手机号。 +8. 设置初始密码或选择系统生成初始密码。 +9. 保存用户。 +10. 系统创建用户档案,并默认使用手机号创建和绑定平台账号。 +11. 系统记录操作日志。 +12. 如需要绑定微信、企业微信、钉钉、飞书等第三方账号,继续进入用户详情页的登录账号页签维护。 + +### 5.4.11.3 编辑用户 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户新增 / 编辑页 +``` + +操作步骤: + +1. 进入用户列表页。 +2. 查询并选择目标用户。 +3. 点击编辑用户。 +4. 系统打开用户新增 / 编辑页,并进入编辑模式。 +5. 修改用户姓名、手机号、所属组织、默认组织、用户状态或备注。 +6. 保存修改。 +7. 系统刷新用户详情并记录操作日志。 + +### 5.4.11.4 查看用户详情 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户详情 +``` + +操作步骤: + +1. 进入用户列表页。 +2. 查询目标用户。 +3. 点击查看或用户姓名。 +4. 进入用户详情页。 +5. 查看基础信息、所属组织、登录账号、已分配角色和操作记录。 + +### 5.4.11.5 创建平台账号 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户详情 > 登录账号 > 创建平台账号 +``` + +操作步骤: + +1. 进入用户详情页。 +2. 打开登录账号页签。 +3. 点击创建平台账号。 +4. 填写登录标识。 +5. 设置初始密码或选择系统生成初始密码。 +6. 设置账号启用状态和首次登录修改密码。 +7. 保存账号。 +8. 系统刷新登录账号页签并记录操作日志。 + +### 5.4.11.6 绑定第三方账号 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户详情 > 登录账号 > 绑定第三方账号 +``` + +操作步骤: + +1. 进入用户详情页。 +2. 打开登录账号页签。 +3. 点击绑定第三方账号。 +4. 选择账号类型:微信、企业微信、钉钉、飞书或其他。 +5. 填写第三方登录标识和账号名称。 +6. 保存绑定关系。 +7. 系统校验该第三方账号未绑定其他用户。 +8. 系统刷新登录账号页签并记录操作日志。 + +### 5.4.11.7 账号启用 / 停用 / 解绑 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户详情 > 登录账号 +``` + +操作步骤: + +1. 进入用户详情页。 +2. 打开登录账号页签。 +3. 查询目标账号。 +4. 点击启用、停用或解绑。 +5. 停用或解绑账号时,系统提示登录影响。 +6. 确认操作。 +7. 系统刷新登录账号页签并记录操作日志。 + +### 5.4.11.8 分配角色 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户详情 > 分配角色 +``` + +操作步骤: + +1. 进入用户详情页。 +2. 点击分配角色。 +3. 系统打开分配角色弹窗。 +4. 按应用、角色名称或角色类型查询角色。 +5. 勾选需要分配的角色。 +6. 保存角色分配。 +7. 系统刷新已分配角色页签并记录操作日志。 + +### 5.4.11.9 重置平台账号密码 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户详情 > 登录账号 > 重置密码 +``` + +操作步骤: + +1. 进入用户详情页。 +2. 打开登录账号页签。 +3. 选择平台账号。 +4. 点击重置密码。 +5. 系统打开重置密码弹窗。 +6. 选择系统生成或人工设置密码。 +7. 设置是否首次登录修改密码。 +8. 保存。 +9. 系统重置该平台账号密码并记录操作日志。 + +### 5.4.11.10 启用 / 停用用户 + +操作路径: + +```text +基础平台 > 用户与账号管理 > 用户列表 > 启用 / 停用 +``` + +操作步骤: + +1. 进入用户列表页。 +2. 查询目标用户。 +3. 点击启用或停用。 +4. 停用用户时,系统提示停用影响。 +5. 确认操作。 +6. 系统更新用户状态并记录操作日志。 + +停用影响: + +- 用户下所有账号不可继续登录基础平台。 +- 用户已登录 Token 在下一次认证鉴权时失效。 +- 用户历史组织归属、账号绑定关系、角色分配和操作日志不删除。 +- 如停用客户管理员,需要校验客户至少保留一个启用状态客户管理员。 + +## 5.4.12 验收标准 + +- 可按客户查询用户列表。 +- 平台用户可选择客户查看用户;客户管理员只能查看和维护本客户用户。 +- 客户管理员和客户内用户进入用户列表页时,默认当前客户,不展示客户查询条件。 +- 用户和登录账号分离维护。 +- 可新增用户档案,新增用户时默认使用手机号创建并绑定平台账号。 +- 新增用户时默认平台账号登录标识等于手机号,并校验平台账号全局唯一。 +- 新增用户页可设置默认平台账号初始密码或选择系统生成初始密码。 +- 可编辑用户姓名、手机号、所属组织、默认组织、用户状态和备注。 +- 用户新增、编辑复用用户新增 / 编辑页,并采用表单方式展示。 +- 用户至少归属于一个启用状态组织。 +- 用户必须有一个默认组织,且默认组织必须来自所属组织。 +- 手机号在同一客户下唯一,重复时不允许保存。 +- 可在用户详情页查看所属组织、登录账号、已分配角色和操作记录。 +- 一个用户可绑定多个登录账号。 +- 平台账号登录标识在基础平台全局唯一,重复时不允许保存。 +- 第三方账号登录标识在同一账号类型下唯一,重复时不允许绑定。 +- 支持账号类型:平台账号、微信、企业微信、钉钉、飞书、其他。 +- 可创建平台账号。 +- 可绑定、解绑第三方账号。 +- 可启用、停用单个账号。 +- 可重置平台账号密码。 +- 第三方账号不展示重置密码操作。 +- 可为用户分配和移除角色。 +- 只能为用户分配当前客户可用且启用的角色。 +- 客户未开通应用时,不可分配该应用角色。 +- 停用用户后,该用户下所有账号不可登录基础平台。 +- 停用账号后,仅该账号不可登录,不影响同一用户下其他启用账号。 +- 停用用户后历史组织归属、账号绑定关系、角色分配和操作日志不删除。 +- 停用客户管理员时,需要校验客户至少保留一个启用状态客户管理员。 +- 用户新增、编辑、启用、停用、平台账号创建、账号绑定、账号解绑、账号启停、平台账号密码重置、角色分配、角色移除、组织变更均生成操作日志。 diff --git a/40-平台与架构/基础平台/功能模块/07-角色管理.md b/40-平台与架构/基础平台/功能模块/07-角色管理.md index 904a394..1465043 100644 --- a/40-平台与架构/基础平台/功能模块/07-角色管理.md +++ b/40-平台与架构/基础平台/功能模块/07-角色管理.md @@ -4,42 +4,560 @@ 上级文档:[基础平台产品设计](../基础平台产品设计.md) - ## 5.7.1 功能说明 -角色管理用于将权限项组合成可分配给用户的权限集合。 +角色管理用于将应用、菜单、菜单操作权限和数据范围组合成可分配给用户的权限集合。 + +角色不是用户基础信息。用户基础信息只维护自然人档案、所属组织和默认组织;用户能访问什么应用、菜单、操作和数据,由用户被分配的角色决定。 + +应用管理负责定义应用、菜单和菜单下的操作权限;角色管理负责引用这些已定义能力进行授权;用户与账号管理负责把角色分配给具体用户。 ## 5.7.2 功能范围 +- 查询角色列表 +- 查看角色详情 - 新增角色 - 编辑角色 - 复制角色 - 启用 / 停用角色 -- 为角色配置权限 -- 为角色配置数据范围 -- 查询角色列表 +- 配置角色菜单权限 +- 配置角色操作权限 +- 配置角色数据范围 +- 查看已分配用户 +- 查看角色操作记录 -## 5.7.3 角色类型 +## 5.7.3 字段要求 -基础平台 1.0 支持: +角色基础信息至少包括: -- 平台角色 -- 客户角色 -- 应用角色 +| 字段 | 说明 | 是否必填 | +| --- | --- | --- | +| 所属客户 | 角色归属客户;平台角色可为空或归属平台 | 条件必填 | +| 角色名称 | 角色展示名称 | 是 | +| 角色编码 | 角色唯一编码 | 是 | +| 角色类型 | 平台角色、客户角色、应用角色 | 是 | +| 所属应用 | 应用角色归属应用 | 条件必填 | +| 角色来源 | 系统预置、自定义 | 是 | +| 是否角色模板 | 是否可作为应用开通后的默认角色模板 | 是 | +| 角色说明 | 角色用途说明 | 否 | +| 启用状态 | 启用、停用 | 是 | +| 创建时间 | 角色创建时间 | 是 | +| 更新时间 | 角色最近更新时间 | 是 | -## 5.7.4 业务规则 +### 5.7.3.1 角色编码规则 -- 平台角色由平台超级管理员维护。 -- 客户角色由客户管理员维护。 -- 应用角色可作为系统预置角色。 -- 角色停用后不可再分配给新用户。 -- 停用角色不影响历史操作日志。 -- 用户拥有多个角色时,功能权限取并集。 -- 数据权限按角色配置规则合并,具体合并规则需在角色配置中明确展示。 +角色编码用于系统识别、权限计算、日志追踪和接口返回,不作为页面主要展示名称。 -## 5.7.5 验收标准 +编码规则: -- 可创建角色并配置功能权限。 -- 用户分配角色后权限立即生效。 -- 角色停用后不可继续分配。 -- 多角色用户权限计算正确。 +- 平台角色编码在基础平台全局唯一。 +- 客户角色编码在同一客户下唯一。 +- 应用角色编码在同一应用下唯一。 +- 编码建议采用大写英文字母、数字和下划线组合。 +- 系统预置角色编码创建后原则上不允许修改。 +- 自定义角色编码创建后原则上不允许修改,避免影响权限引用和日志追踪。 + +编码示例: + +| 角色类型 | 编码示例 | 说明 | +| --- | --- | --- | +| 平台角色 | PLATFORM_ADMIN | 平台超级管理员 | +| 客户角色 | CUSTOMER_ADMIN | 客户管理员 | +| 应用角色 | RECON_FINANCE | 连锁业务对账系统财务角色 | + +## 5.7.4 角色类型 + +基础平台 1.0 支持以下角色类型: + +| 角色类型 | 定义 | 维护主体 | 适用范围 | +| --- | --- | --- | --- | +| 平台角色 | 平台内部管理角色 | 平台超级管理员 | 平台管理、客户管理、应用管理、运维管理等平台级功能 | +| 客户角色 | 客户内部通用角色 | 客户管理员 / 实施人员 | 客户下多应用、多组织用户 | +| 应用角色 | 面向某个应用的角色 | 产品管理员 / 客户管理员 | 指定应用下的菜单、操作和数据范围 | + +业务说明: + +- 平台角色主要用于公司内部平台管理人员,不直接面向客户普通业务用户。 +- 客户角色用于客户内部通用管理场景,例如客户管理员、总部财务、区域运营等。 +- 应用角色用于某个业务系统内的权限组合,例如对账财务、分账运营、客服主管等。 +- 督导不是组织类型,也不是用户基础字段;督导可以作为客户角色或应用角色维护,并通过数据范围配置其负责门店。 + +## 5.7.5 权限配置 + +### 5.7.5.1 菜单权限 + +菜单权限用于控制用户能否在基础平台门户中看到对应菜单,并进入对应业务页面。 + +业务规则: + +- 菜单来源于应用管理中已启用的应用菜单。 +- 客户未开通的应用,不可为客户角色授权该应用菜单。 +- 停用应用下的菜单不可授权。 +- 停用菜单不可授权。 +- 授权子菜单时,系统应自动包含其上级菜单的展示权限,保证菜单路径完整。 +- 取消上级菜单权限时,应提示是否同步取消下级菜单和操作权限。 + +### 5.7.5.2 操作权限 + +操作权限用于控制用户在某个菜单或页面下可执行的具体动作。 + +业务规则: + +- 操作权限来源于应用管理中菜单下配置的操作权限。 +- 操作权限必须依附于具体菜单或页面。 +- 不允许脱离菜单单独授权操作权限。 +- 用户未获得菜单权限时,不可单独获得该菜单下操作权限。 +- 菜单下操作权限停用后,不可继续用于新增角色授权。 +- 已被角色引用的操作权限停用时,需要在角色权限配置中展示停用状态,并提示管理员处理。 + +### 5.7.5.3 数据范围 + +数据范围用于控制用户可查看或操作的数据边界。 + +基础平台 1.0 支持以下数据范围: + +| 数据范围 | 说明 | 选择要求 | +| --- | --- | --- | +| 全部数据 | 当前客户下全部授权数据 | 仅平台角色、客户高权限角色可选 | +| 本组织及下级组织 | 用户默认组织及下级组织数据 | 无需手工选择组织 | +| 本组织 | 用户默认组织数据 | 无需手工选择组织 | +| 指定组织 | 指定组织及可选下级范围 | 需要选择组织 | +| 指定门店 | 指定门店数据 | 需要选择门店 | +| 本人数据 | 用户本人创建、负责或被分配的数据 | 无需手工选择组织 | + +业务规则: + +- 数据范围必须按客户隔离。 +- 指定组织来源于组织管理中的启用组织。 +- 指定门店来源于组织管理中组织类型为门店的启用组织,左侧管理组织树默认不展示门店,但数据范围选择器需要支持门店检索和选择。 +- 督导负责区域下部分门店时,数据范围应配置为指定门店,或配置为指定组织并明确是否包含下级门店。 +- 角色未配置数据范围时,不应默认授予全部数据。 +- 多角色用户的数据范围按授权范围合并,但不得突破客户隔离边界。 + +## 5.7.6 业务规则 + +- 角色必须归属于平台或某个客户。 +- 客户角色只能在所属客户内使用。 +- 应用角色必须归属于一个应用。 +- 客户未开通某应用时,不可给该客户角色授权该应用菜单和操作权限。 +- 系统预置角色可复制为自定义角色。 +- 系统预置角色是否允许编辑由平台配置控制;1.0 建议只允许复制,不直接编辑核心预置角色。 +- 自定义角色可编辑角色名称、说明、菜单权限、操作权限和数据范围。 +- 已分配给用户的角色停用后,该角色权限对用户失效。 +- 角色停用后不可继续分配给新用户。 +- 停用角色不删除历史分配记录和操作日志。 +- 删除角色不作为 1.0 必备能力;如需取消使用,通过停用处理。 +- 用户拥有多个角色时,菜单权限和操作权限取并集。 +- 用户拥有多个角色时,数据范围按角色授权范围合并。 +- 权限变更后,用户下次刷新菜单、获取当前用户信息或 Token 重新鉴权时应获得最新权限结果。 + +## 5.7.7 界面设计 + +### 5.7.7.1 功能入口与访问权限 + +角色管理作为基础平台的客户内管理功能,建议放置在基础平台左侧菜单: + +```text +基础平台 +└── 角色管理 +``` + +页面访问规则: + +- 平台超级管理员、实施人员、具备角色管理权限的平台用户可维护平台角色和客户角色。 +- 客户管理员只能维护本客户下客户角色和应用角色。 +- 产品管理员可维护其负责应用的应用角色模板。 +- 普通业务用户不可访问角色管理页面。 +- 无角色管理权限的用户不展示角色管理菜单。 + +### 5.7.7.2 角色列表页 + +点击基础平台 > 角色管理后,进入角色列表页。 + +展示方式: + +- 平台用户进入页面后,顶部展示客户选择器和角色查询条件。 +- 客户管理员或归属于某个客户的用户进入页面后,系统默认当前客户,不展示客户查询条件。 +- 角色列表采用查询区域 + 数据表格展示。 +- 查询条件较多时支持展开 / 收起。 +- 查询按钮作为查询区域最后一个表单元素。 + +简化版原型图: + +```text +┌──────────────────────────────────────────────────────────────────────────────┐ +│ 基础平台 > 角色管理 [新增角色] │ +├──────────────────────────────────────────────────────────────────────────────┤ +│ 客户:[客户选择器/当前客户只读] 角色名称:[ ] 角色编码:[ ] │ +│ 角色类型:[全部 v] 所属应用:[全部 v] 启用状态:[全部 v] [查询] [重置] │ +├──────────────────────────────────────────────────────────────────────────────┤ +│ 角色列表 │ +│ ┌────────────┬────────────┬────────┬────────────┬────────┬────────┐ │ +│ │ 角色名称 │ 角色编码 │ 类型 │ 所属应用 │ 状态 │ 操作 │ │ +│ ├────────────┼────────────┼────────┼────────────┼────────┼────────┤ │ +│ │ 客户管理员 │ CUSTOMER...│ 客户 │ - │ 启用 │ 查看 │ │ +│ │ 对账财务 │ RECON_FIN │ 应用 │ 对账系统 │ 启用 │ 编辑 │ │ +│ └────────────┴────────────┴────────┴────────────┴────────┴────────┘ │ +│ < 1 / 20 > │ +└──────────────────────────────────────────────────────────────────────────────┘ +``` + +查询条件: + +| 查询项 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 所属客户 | 客户选择器 / 只读文本 | 客户管理中已启用客户 | 平台用户选择;客户管理员只读当前客户 | +| 角色名称 | 文本输入框 | 人工录入 | 支持模糊查询 | +| 角色编码 | 文本输入框 | 人工录入 | 支持精确或模糊查询 | +| 角色类型 | 下拉框 | 平台角色、客户角色、应用角色 | 可为空 | +| 所属应用 | 下拉框 | 当前客户已开通应用 / 平台全部应用 | 可为空 | +| 启用状态 | 下拉框 | 全部、启用、停用 | 默认全部 | +| 查询 | 按钮 | 用户点击 | 作为查询区域最后一个表单元素 | + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 角色名称 | 角色展示名称 | +| 角色编码 | 角色编码 | +| 所属客户 | 平台用户查看时展示 | +| 角色类型 | 平台角色、客户角色、应用角色 | +| 所属应用 | 应用角色展示所属应用 | +| 角色来源 | 系统预置、自定义 | +| 是否角色模板 | 是、否 | +| 启用状态 | 启用、停用 | +| 已分配用户数 | 当前角色已分配用户数量 | +| 更新时间 | 最近更新时间 | +| 操作 | 查看、编辑、复制、配置权限、启用、停用 | + +### 5.7.7.3 角色新增 / 编辑页 + +角色新增 / 编辑页用于创建或维护角色基础信息。新增和编辑使用同一个页面或弹窗,根据操作模式控制默认值、只读字段和保存规则。 + +展示方式: + +- 采用表单方式展示。 +- 只维护角色基础信息。 +- 不在新增 / 编辑页直接配置菜单权限、操作权限和数据范围。 +- 角色保存后,在角色详情页下方页签中配置权限和数据范围。 + +表单字段: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 所属客户 | 客户选择器 / 只读文本 | 客户管理中已启用客户 | 平台角色可为空;客户管理员只读当前客户 | +| 角色名称 | 文本输入框 | 人工录入 | 必填 | +| 角色编码 | 文本输入框 | 人工录入 / 系统生成 | 必填,按角色类型校验唯一性 | +| 角色类型 | 下拉框 | 平台角色、客户角色、应用角色 | 必填 | +| 所属应用 | 下拉框 | 应用管理中已启用应用 | 应用角色必填 | +| 角色来源 | 只读文本 | 新增默认为自定义 | 系统预置角色由系统生成 | +| 是否角色模板 | Switch | 人工选择 | 默认否 | +| 启用状态 | Switch | 人工选择 | 默认启用 | +| 角色说明 | 多行文本框 | 人工录入 | 选填 | + +新增模式规则: + +- 角色名称、角色编码、角色类型、启用状态为必填。 +- 客户角色必须选择所属客户。 +- 应用角色必须选择所属应用。 +- 客户管理员新增角色时,所属客户默认为当前客户且不可修改。 +- 新增角色时不直接分配用户。 +- 新增角色时不直接配置权限,保存后进入角色详情页配置。 + +编辑模式规则: + +- 角色编码、角色类型、角色来源原则上只读。 +- 系统预置角色是否允许编辑,由平台配置控制。 +- 已分配用户数大于 0 的角色,编辑权限或数据范围时需要提示影响范围。 +- 停用角色时需要提示该角色已分配用户数量和权限失效影响。 + +### 5.7.7.4 角色详情页 + +角色详情页用于查看角色基础信息、配置权限、配置数据范围、查看已分配用户和操作记录。 + +展示方式: + +- 上方为角色基础信息只读区。 +- 下方为 Tab 页签。 +- Tab 页签包括:菜单权限、数据范围、已分配用户、操作记录。 + +详情页区域: + +| 区域 | 展示方式 | 主要内容 | +| --- | --- | --- | +| 上方基础信息区 | 只读信息区 | 角色名称、角色编码、角色类型、所属客户、所属应用、启用状态、已分配用户数 | +| 下方页签区 | Tab 页签 | 菜单权限、数据范围、已分配用户、操作记录 | + +详情页主操作按钮: + +- 编辑角色 +- 复制角色 +- 配置权限 +- 配置数据范围 +- 启用角色 +- 停用角色 + +### 5.7.7.5 菜单权限配置页签 + +菜单权限配置页签用于维护角色可访问的应用菜单和菜单下操作权限。 + +展示方式: + +- 采用应用选择器 + 菜单树形表格展示。 +- 菜单树按应用分组展示。 +- 菜单节点支持勾选菜单权限。 +- 菜单节点下展示该菜单可授权的操作权限复选框。 + +字段与控件: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 应用 | 下拉框 / 应用分组 | 当前客户已开通且启用的应用 | 客户角色可多应用;应用角色限定所属应用 | +| 菜单树 | 树形表格 + 复选框 | 应用管理中已启用菜单 | 勾选菜单访问权限 | +| 操作权限 | 复选框组 | 菜单下已启用操作权限 | 勾选查看、新增、编辑、审核、导出等操作 | + +页面规则: + +- 客户未开通应用时,不展示该应用菜单。 +- 应用角色只展示所属应用菜单。 +- 勾选操作权限时,系统自动勾选对应菜单权限。 +- 取消菜单权限时,系统提示是否同步取消该菜单下操作权限。 +- 保存后,已分配该角色的用户权限在重新获取权限时生效。 +- 权限配置变更需要记录操作日志。 + +### 5.7.7.6 数据范围配置页签 + +数据范围配置页签用于维护角色对应的数据访问边界。 + +展示方式: + +- 采用表单 + 组织 / 门店选择器展示。 +- 数据范围类型使用单选框。 +- 指定组织、指定门店根据所选数据范围展示对应选择器。 + +字段与控件: + +| 字段 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 数据范围类型 | 单选框 | 全部数据、本组织及下级组织、本组织、指定组织、指定门店、本人数据 | 必填 | +| 指定组织 | 树形多选器 | 当前客户启用组织树 | 选择指定组织时展示 | +| 是否包含下级组织 | Switch | 人工选择 | 指定组织时可配置 | +| 指定门店 | 门店选择器 / 表格多选 | 当前客户启用门店 | 选择指定门店时展示 | +| 数据范围说明 | 多行文本框 | 人工录入 | 选填 | + +页面规则: + +- 数据范围类型必填。 +- 指定组织时,至少选择一个组织。 +- 指定门店时,至少选择一个门店。 +- 指定门店选择器需要支持按门店名称、门店编码、所属区域查询。 +- 普通客户角色默认不允许选择全部数据,除非具备高权限授权。 +- 保存后,已分配该角色的用户数据范围在重新获取权限时生效。 +- 数据范围变更需要记录操作日志。 + +### 5.7.7.7 已分配用户页签 + +已分配用户页签用于查看当前角色已被哪些用户使用。 + +展示方式: + +- 采用查询区域 + 数据表格展示。 + +查询条件: + +| 查询项 | 控件类型 | 值来源 / 录入方式 | 说明 | +| --- | --- | --- | --- | +| 用户姓名 | 文本输入框 | 人工录入 | 支持模糊查询 | +| 手机号 | 文本输入框 | 人工录入 | 支持模糊查询 | +| 所属组织 | 树形选择器 | 当前客户组织树和门店选择器 | 可为空 | +| 用户状态 | 下拉框 | 全部、启用、停用 | 默认全部 | + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 用户姓名 | 用户显示姓名 | +| 手机号 | 用户手机号 | +| 默认组织 | 用户默认组织 | +| 用户状态 | 启用、停用 | +| 分配人 | 执行角色分配的用户 | +| 分配时间 | 角色分配时间 | + +页面规则: + +- 已分配用户页签只做查看,不在此处直接分配或移除用户角色。 +- 用户角色分配和移除在用户与账号管理中完成。 + +### 5.7.7.8 操作记录页签 + +操作记录页签用于查看角色相关关键操作。 + +展示方式: + +- 采用数据表格展示。 + +列表字段: + +| 字段 | 说明 | +| --- | --- | +| 操作时间 | 操作发生时间 | +| 操作人 | 执行操作的用户 | +| 操作类型 | 新增、编辑、复制、启用、停用、配置菜单权限、配置操作权限、配置数据范围 | +| 操作内容 | 操作摘要 | +| 操作说明 | 操作原因或备注 | + +## 5.7.8 使用导航 + +### 5.7.8.1 查询角色 + +操作路径: + +```text +基础平台 > 角色管理 +``` + +操作步骤: + +1. 进入角色列表页。 +2. 平台用户选择客户;客户管理员和客户内用户默认当前客户,不展示客户查询条件。 +3. 按角色名称、角色编码、角色类型、所属应用或启用状态查询。 +4. 在角色列表中查看角色。 + +### 5.7.8.2 新增角色 + +操作路径: + +```text +基础平台 > 角色管理 > 角色新增 / 编辑页 +``` + +操作步骤: + +1. 进入角色列表页。 +2. 点击新增角色。 +3. 系统打开角色新增 / 编辑页,并进入新增模式。 +4. 填写角色名称、角色编码。 +5. 选择角色类型。 +6. 如为客户角色,选择所属客户。 +7. 如为应用角色,选择所属应用。 +8. 设置是否角色模板、启用状态和角色说明。 +9. 保存角色。 +10. 系统创建角色并记录操作日志。 +11. 进入角色详情页配置菜单权限和数据范围。 + +### 5.7.8.3 编辑角色 + +操作路径: + +```text +基础平台 > 角色管理 > 角色新增 / 编辑页 +``` + +操作步骤: + +1. 进入角色列表页。 +2. 查询并选择目标角色。 +3. 点击编辑角色。 +4. 系统打开角色新增 / 编辑页,并进入编辑模式。 +5. 修改角色名称、是否角色模板、启用状态或角色说明。 +6. 保存修改。 +7. 系统刷新角色详情并记录操作日志。 + +### 5.7.8.4 配置菜单权限和操作权限 + +操作路径: + +```text +基础平台 > 角色管理 > 角色详情 > 菜单权限 +``` + +操作步骤: + +1. 进入角色详情页。 +2. 打开菜单权限页签。 +3. 选择应用或查看应用分组。 +4. 在菜单树中勾选角色可访问菜单。 +5. 在菜单节点下勾选可授权操作权限。 +6. 保存权限配置。 +7. 系统刷新菜单权限页签并记录操作日志。 + +### 5.7.8.5 配置数据范围 + +操作路径: + +```text +基础平台 > 角色管理 > 角色详情 > 数据范围 +``` + +操作步骤: + +1. 进入角色详情页。 +2. 打开数据范围页签。 +3. 选择数据范围类型。 +4. 如选择指定组织,选择组织并设置是否包含下级组织。 +5. 如选择指定门店,按门店名称、门店编码或所属区域查询并选择门店。 +6. 保存数据范围。 +7. 系统刷新数据范围页签并记录操作日志。 + +### 5.7.8.6 复制角色 + +操作路径: + +```text +基础平台 > 角色管理 > 角色列表 / 角色详情 > 复制角色 +``` + +操作步骤: + +1. 查询并选择目标角色。 +2. 点击复制角色。 +3. 系统打开角色新增 / 编辑页,并带入原角色基础信息、菜单权限、操作权限和数据范围。 +4. 修改角色名称和角色编码。 +5. 保存角色。 +6. 系统创建新角色并记录操作日志。 + +### 5.7.8.7 启用 / 停用角色 + +操作路径: + +```text +基础平台 > 角色管理 > 角色列表 / 角色详情 > 启用 / 停用 +``` + +操作步骤: + +1. 查询并选择目标角色。 +2. 点击启用或停用。 +3. 停用角色时,系统提示已分配用户数量和权限失效影响。 +4. 确认操作。 +5. 系统更新角色状态并记录操作日志。 + +停用影响: + +- 角色不可继续分配给新用户。 +- 已分配该角色的用户不再获得该角色对应菜单、操作和数据范围。 +- 历史角色分配记录和操作日志不删除。 + +## 5.7.9 验收标准 + +- 可按客户查询角色列表。 +- 平台用户可选择客户查看角色;客户管理员只能查看和维护本客户角色。 +- 客户管理员和客户内用户进入角色列表页时,默认当前客户,不展示客户查询条件。 +- 可新增、编辑、复制、启用、停用角色。 +- 用户基础信息中不维护角色,角色通过用户详情页分配。 +- 角色编码按角色类型和归属范围校验唯一性。 +- 平台角色、客户角色、应用角色的适用范围正确。 +- 应用角色必须归属于一个应用。 +- 客户未开通应用时,不可为该客户角色授权该应用菜单和操作权限。 +- 菜单权限来源于应用管理中的启用菜单。 +- 操作权限来源于应用管理中菜单下的启用操作权限。 +- 不允许脱离菜单单独授权操作权限。 +- 勾选操作权限时,系统自动具备对应菜单权限。 +- 可配置数据范围:全部数据、本组织及下级组织、本组织、指定组织、指定门店、本人数据。 +- 指定组织和指定门店的数据范围选择器可正常选择和保存。 +- 督导负责部分门店时,可通过指定门店或指定组织数据范围授权。 +- 角色停用后不可继续分配给新用户。 +- 角色停用后,已分配用户不再获得该角色权限。 +- 多角色用户菜单权限和操作权限按并集生效。 +- 多角色用户数据范围按授权范围合并,且不突破客户隔离。 +- 角色新增、编辑、复制、启用、停用、菜单权限配置、操作权限配置、数据范围配置均生成操作日志。 diff --git a/40-平台与架构/基础平台/功能模块/10-基础配置管理.md b/40-平台与架构/基础平台/功能模块/08-基础配置管理.md similarity index 84% rename from 40-平台与架构/基础平台/功能模块/10-基础配置管理.md rename to 40-平台与架构/基础平台/功能模块/08-基础配置管理.md index e6e5f2e..d153c73 100644 --- a/40-平台与架构/基础平台/功能模块/10-基础配置管理.md +++ b/40-平台与架构/基础平台/功能模块/08-基础配置管理.md @@ -1,15 +1,15 @@ -# 5.10 基础配置管理 +# 5.8 基础配置管理 本文档从《基础平台产品设计》第 5 章拆分而来,用于独立描述基础平台功能模块的业务需求、规则和验收标准。 上级文档:[基础平台产品设计](../基础平台产品设计.md) -## 5.10.1 功能说明 +## 5.8.1 功能说明 基础配置管理用于维护客户级、应用级基础参数。 -## 5.10.2 功能范围 +## 5.8.2 功能范围 - 配置项管理 - 配置值维护 @@ -17,7 +17,7 @@ - 按客户配置 - 按应用配置 -## 5.10.3 配置分类 +## 5.8.3 配置分类 1.0 支持: @@ -26,14 +26,14 @@ - 应用配置 - 业务开关 -## 5.10.4 业务规则 +## 5.8.4 业务规则 - 平台配置仅平台管理员维护。 - 客户配置仅影响当前客户。 - 应用配置仅影响对应应用。 - 配置变更需要记录操作日志。 -## 5.10.5 验收标准 +## 5.8.5 验收标准 - 可维护客户级配置。 - 可维护应用级配置。 diff --git a/40-平台与架构/基础平台/功能模块/08-权限管理.md b/40-平台与架构/基础平台/功能模块/08-权限管理.md deleted file mode 100644 index 0d1cae0..0000000 --- a/40-平台与架构/基础平台/功能模块/08-权限管理.md +++ /dev/null @@ -1,57 +0,0 @@ -# 5.8 权限管理 - -本文档从《基础平台产品设计》第 5 章拆分而来,用于独立描述基础平台功能模块的业务需求、规则和验收标准。 - -上级文档:[基础平台产品设计](../基础平台产品设计.md) - - -## 5.8.1 功能说明 - -权限管理用于控制用户可访问的应用、菜单、页面和操作。 - -## 5.8.2 权限分类 - -基础平台 1.0 支持: - -- 应用权限 -- 菜单权限 -- 操作权限 -- 数据范围权限 - -## 5.8.3 操作权限 - -基础操作权限包括: - -- 查看 -- 新增 -- 编辑 -- 删除 -- 审核 -- 导入 -- 导出 -- 启用 / 停用 - -## 5.8.4 数据范围 - -基础数据范围包括: - -- 全部数据 -- 本组织及下级组织 -- 本组织 -- 指定组织 -- 本人数据 - -## 5.8.5 业务规则 - -- 用户未授权应用时不可看到应用入口。 -- 用户未授权菜单时不可看到菜单。 -- 用户未授权操作时不可执行对应操作。 -- 数据权限必须按客户隔离。 -- 不允许用户通过 URL 或其他入口访问未授权功能。 - -## 5.8.6 验收标准 - -- 菜单显示与用户权限一致。 -- 操作按钮显示与用户权限一致。 -- 未授权用户无法访问对应接口或页面。 -- 数据范围控制正确。 diff --git a/40-平台与架构/基础平台/功能模块/11-消息与待办.md b/40-平台与架构/基础平台/功能模块/09-消息与待办.md similarity index 86% rename from 40-平台与架构/基础平台/功能模块/11-消息与待办.md rename to 40-平台与架构/基础平台/功能模块/09-消息与待办.md index db9d514..516fbdb 100644 --- a/40-平台与架构/基础平台/功能模块/11-消息与待办.md +++ b/40-平台与架构/基础平台/功能模块/09-消息与待办.md @@ -1,15 +1,15 @@ -# 5.11 消息与待办 +# 5.9 消息与待办 本文档从《基础平台产品设计》第 5 章拆分而来,用于独立描述基础平台功能模块的业务需求、规则和验收标准。 上级文档:[基础平台产品设计](../基础平台产品设计.md) -## 5.11.1 功能说明 +## 5.9.1 功能说明 消息与待办用于为业务系统提供基础通知能力。 -## 5.11.2 功能范围 +## 5.9.2 功能范围 - 系统消息 - 待办消息 @@ -17,14 +17,14 @@ - 消息查询 - 消息跳转业务系统 -## 5.11.3 业务规则 +## 5.9.3 业务规则 - 消息必须归属于客户和用户。 - 用户只能查看自己的消息。 - 待办可关联业务系统和业务单据。 - 业务单据处理完成后,待办状态应支持更新。 -## 5.11.4 验收标准 +## 5.9.4 验收标准 - 用户可查看自己的消息和待办。 - 已读 / 未读状态正确。 diff --git a/40-平台与架构/基础平台/功能模块/09-菜单管理.md b/40-平台与架构/基础平台/功能模块/09-菜单管理.md deleted file mode 100644 index d24806d..0000000 --- a/40-平台与架构/基础平台/功能模块/09-菜单管理.md +++ /dev/null @@ -1,32 +0,0 @@ -# 5.9 菜单管理 - -本文档从《基础平台产品设计》第 5 章拆分而来,用于独立描述基础平台功能模块的业务需求、规则和验收标准。 - -上级文档:[基础平台产品设计](../基础平台产品设计.md) - - -## 5.9.1 功能说明 - -菜单管理用于维护应用在系统中的导航结构。 - -## 5.9.2 功能范围 - -- 新增菜单 -- 编辑菜单 -- 排序菜单 -- 启用 / 停用菜单 -- 绑定权限项 -- 配置菜单所属应用 - -## 5.9.3 业务规则 - -- 菜单必须归属于某个应用。 -- 菜单可多级展示。 -- 停用菜单后用户不可见。 -- 菜单是否可见由应用开通状态、用户角色、菜单权限共同决定。 - -## 5.9.4 验收标准 - -- 菜单可按应用维护。 -- 菜单可根据权限显示或隐藏。 -- 菜单排序生效。 diff --git a/40-平台与架构/基础平台/功能模块/12-操作日志.md b/40-平台与架构/基础平台/功能模块/10-操作日志.md similarity index 85% rename from 40-平台与架构/基础平台/功能模块/12-操作日志.md rename to 40-平台与架构/基础平台/功能模块/10-操作日志.md index 1b6a9ad..dd2f15f 100644 --- a/40-平台与架构/基础平台/功能模块/12-操作日志.md +++ b/40-平台与架构/基础平台/功能模块/10-操作日志.md @@ -1,15 +1,15 @@ -# 5.12 操作日志 +# 5.10 操作日志 本文档从《基础平台产品设计》第 5 章拆分而来,用于独立描述基础平台功能模块的业务需求、规则和验收标准。 上级文档:[基础平台产品设计](../基础平台产品设计.md) -## 5.12.1 功能说明 +## 5.10.1 功能说明 操作日志用于记录用户关键操作,支持审计和问题排查。 -## 5.12.2 日志范围 +## 5.10.2 日志范围 1.0 至少记录: @@ -23,7 +23,7 @@ - 导入 - 导出 -## 5.12.3 日志字段 +## 5.10.3 日志字段 日志至少包括: @@ -37,13 +37,13 @@ - 操作对象 - 操作结果 -## 5.12.4 业务规则 +## 5.10.4 业务规则 - 操作日志不可由普通用户修改或删除。 - 日志查询需按权限控制。 - 不同客户日志隔离。 -## 5.12.5 验收标准 +## 5.10.5 验收标准 - 关键操作可生成日志。 - 日志内容可查询。 diff --git a/40-平台与架构/基础平台/功能模块/13-数据字典.md b/40-平台与架构/基础平台/功能模块/11-数据字典.md similarity index 84% rename from 40-平台与架构/基础平台/功能模块/13-数据字典.md rename to 40-平台与架构/基础平台/功能模块/11-数据字典.md index 81eca9c..ce9d758 100644 --- a/40-平台与架构/基础平台/功能模块/13-数据字典.md +++ b/40-平台与架构/基础平台/功能模块/11-数据字典.md @@ -1,28 +1,28 @@ -# 5.13 数据字典 +# 5.11 数据字典 本文档从《基础平台产品设计》第 5 章拆分而来,用于独立描述基础平台功能模块的业务需求、规则和验收标准。 上级文档:[基础平台产品设计](../基础平台产品设计.md) -## 5.13.1 功能说明 +## 5.11.1 功能说明 数据字典用于维护基础枚举类数据,供各业务系统复用。 -## 5.13.2 功能范围 +## 5.11.2 功能范围 - 字典分类 - 字典项 - 启用 / 停用字典项 - 字典项排序 -## 5.13.3 业务规则 +## 5.11.3 业务规则 - 字典编码唯一。 - 停用字典项后,不影响历史数据展示。 - 字典变更需记录日志。 -## 5.13.4 验收标准 +## 5.11.4 验收标准 - 可维护字典分类和字典项。 - 业务系统可使用启用状态的字典项。 diff --git a/40-平台与架构/基础平台/功能模块/README.md b/40-平台与架构/基础平台/功能模块/README.md index 11466b6..5a4e854 100644 --- a/40-平台与架构/基础平台/功能模块/README.md +++ b/40-平台与架构/基础平台/功能模块/README.md @@ -11,9 +11,7 @@ | 5.5 | 单点登录与统一认证鉴权 | [05-单点登录与统一认证鉴权.md](./05-单点登录与统一认证鉴权.md) | | 5.6 | 统一门户与应用容器 | [06-统一门户与应用容器.md](./06-统一门户与应用容器.md) | | 5.7 | 角色管理 | [07-角色管理.md](./07-角色管理.md) | -| 5.8 | 权限管理 | [08-权限管理.md](./08-权限管理.md) | -| 5.9 | 菜单管理 | [09-菜单管理.md](./09-菜单管理.md) | -| 5.10 | 基础配置管理 | [10-基础配置管理.md](./10-基础配置管理.md) | -| 5.11 | 消息与待办 | [11-消息与待办.md](./11-消息与待办.md) | -| 5.12 | 操作日志 | [12-操作日志.md](./12-操作日志.md) | -| 5.13 | 数据字典 | [13-数据字典.md](./13-数据字典.md) | +| 5.8 | 基础配置管理 | [08-基础配置管理.md](./08-基础配置管理.md) | +| 5.9 | 消息与待办 | [09-消息与待办.md](./09-消息与待办.md) | +| 5.10 | 操作日志 | [10-操作日志.md](./10-操作日志.md) | +| 5.11 | 数据字典 | [11-数据字典.md](./11-数据字典.md) | diff --git a/40-平台与架构/基础平台/基础平台产品设计.md b/40-平台与架构/基础平台/基础平台产品设计.md index 52eba69..bd3898e 100644 --- a/40-平台与架构/基础平台/基础平台产品设计.md +++ b/40-平台与架构/基础平台/基础平台产品设计.md @@ -37,7 +37,7 @@ - 统一 Token 认证鉴权 - 统一门户与菜单聚合 - 应用 iframe 容器 -- 角色与权限管理 +- 角色管理与权限授权 - 菜单与应用入口管理 - 基础配置管理 - 操作日志 @@ -81,7 +81,7 @@ - 统一 Token 认证鉴权 - 统一门户与菜单聚合 - 应用 iframe 容器 -- 角色权限管理 +- 角色授权管理 - 菜单与应用入口管理 - 基础配置管理 - 消息与待办基础能力 @@ -107,7 +107,7 @@ | --- | --- | | 平台超级管理员 | 管理客户、系统应用、全局配置、平台级账号 | | 客户管理员 | 管理本客户下组织、用户、角色、权限、菜单 | -| 产品管理员 | 管理某个业务产品的菜单、权限项、接入配置 | +| 产品管理员 | 管理某个业务产品的菜单、菜单操作权限、接入配置 | | 实施人员 | 初始化客户组织、账号、权限、配置 | | 客服 / 运维人员 | 查询账号、权限、日志、消息状态,协助排查问题 | | 业务系统用户 | 通过基础平台获得账号、权限、菜单、消息和待办 | @@ -120,7 +120,7 @@ #### 3.2.2 新产品接入 -产品管理员将新业务系统注册到基础平台,配置应用入口、菜单、权限项和可授权范围。 +产品管理员将新业务系统注册到基础平台,配置应用入口、菜单、菜单操作权限和可授权范围。 #### 3.2.3 客户开通业务产品 @@ -144,17 +144,17 @@ | 应用 | 接入基础平台的业务系统 | 例如连锁业务对账系统、分账系统、聚合支付 | | 组织 | 客户内部管理结构 | 例如总部、品牌、区域、门店、部门 | | 用户 | 使用系统的自然人 | 可属于一个或多个组织 | -| 账号 | 用户登录系统的身份标识 | 与用户关联 | +| 账号 | 用户登录系统的身份标识 | 与用户关联,可来自平台账号或第三方账号 | | 登录会话 | 用户登录后形成的访问状态 | 用于支撑跨应用访问 | | Token | 用户访问应用和接口的认证凭证 | 由基础平台统一签发和校验 | | 门户框架 | 基础平台统一页面框架 | 包含头部、左侧菜单、Tab、内容区 | | 应用入口 | 业务应用在基础平台中的访问入口 | 可指向基础平台页面或 iframe 应用页面 | | 已打开页签 | 用户在门户中打开的页面 Tab | 可关联基础平台页面或业务应用页面 | | iframe 容器 | 基础平台承载业务应用页面的容器 | 用于嵌入业务应用界面 | -| 角色 | 权限集合 | 例如客户管理员、财务主管、门店店长 | -| 权限项 | 系统可控制的功能或操作 | 例如查看、创建、修改、审核、导出 | +| 角色 | 权限集合 | 例如客户管理员、财务主管、门店店长、督导 | +| 操作权限 | 菜单或页面下可控制的功能操作 | 例如查看、创建、修改、审核、导出 | | 菜单 | 用户可见的系统导航入口 | 与应用和权限关联 | -| 数据范围 | 用户可查看或操作的数据边界 | 例如全部、指定组织、指定门店 | +| 数据范围 | 用户可查看或操作的数据边界 | 例如全部、指定组织、指定门店;督导可配置为负责部分门店 | | 配置项 | 可被客户或系统配置的参数 | 例如启用状态、业务开关 | | 消息 | 系统向用户发送的通知 | 可包含待办、通知、提醒 | | 操作日志 | 用户在系统中的关键操作记录 | 用于审计和排查 | @@ -165,16 +165,18 @@ - 一个客户下可建立多级组织。 - 一个用户归属于一个客户。 - 一个用户可关联多个组织,但必须有一个默认组织。 +- 一个用户可绑定多个登录账号。 +- 一个登录账号同一时间只能绑定一个用户。 - 一个用户可拥有多个角色。 - 一个用户登录基础平台后,可在已授权应用之间进行单点访问。 - 各业务应用访问时,Token 认证鉴权统一由基础平台完成。 - 基础平台统一聚合所有应用菜单。 - 业务应用不再独立渲染系统级菜单。 - 业务应用页面通过 iframe 方式嵌入基础平台内容区。 -- 一个角色可包含多个权限项。 -- 一个权限项归属于一个应用。 -- 一个菜单归属于一个应用,并可绑定权限项。 -- 一个用户最终可访问的菜单和功能,由客户开通应用、用户角色、权限项和数据范围共同决定。 +- 一个角色可包含多个菜单权限和操作权限。 +- 操作权限归属于具体菜单或页面。 +- 一个菜单归属于一个应用,并可配置菜单下操作权限。 +- 一个用户最终可访问的菜单和功能,由客户开通应用、用户角色、菜单权限、操作权限和数据范围共同决定。 ## 5. 功能模块设计 @@ -191,12 +193,10 @@ | 5.5 | 单点登录与统一认证鉴权 | [05-单点登录与统一认证鉴权.md](./功能模块/05-单点登录与统一认证鉴权.md) | | 5.6 | 统一门户与应用容器 | [06-统一门户与应用容器.md](./功能模块/06-统一门户与应用容器.md) | | 5.7 | 角色管理 | [07-角色管理.md](./功能模块/07-角色管理.md) | -| 5.8 | 权限管理 | [08-权限管理.md](./功能模块/08-权限管理.md) | -| 5.9 | 菜单管理 | [09-菜单管理.md](./功能模块/09-菜单管理.md) | -| 5.10 | 基础配置管理 | [10-基础配置管理.md](./功能模块/10-基础配置管理.md) | -| 5.11 | 消息与待办 | [11-消息与待办.md](./功能模块/11-消息与待办.md) | -| 5.12 | 操作日志 | [12-操作日志.md](./功能模块/12-操作日志.md) | -| 5.13 | 数据字典 | [13-数据字典.md](./功能模块/13-数据字典.md) | +| 5.8 | 基础配置管理 | [08-基础配置管理.md](./功能模块/08-基础配置管理.md) | +| 5.9 | 消息与待办 | [09-消息与待办.md](./功能模块/09-消息与待办.md) | +| 5.10 | 操作日志 | [10-操作日志.md](./功能模块/10-操作日志.md) | +| 5.11 | 数据字典 | [11-数据字典.md](./功能模块/11-数据字典.md) | ## 6. 跨模块业务规则 @@ -300,7 +300,7 @@ - iframe 应用嵌入 - Tab 与 keepalive - Token 共享与有效期管理 -- 角色权限管理 +- 角色授权管理 - 菜单展示控制 - 应用开通控制 - 数据范围控制 @@ -402,9 +402,9 @@ | 模块 | 验收项 | 是否必须 | | --- | --- | --- | | 客户管理 | 支持客户新增、编辑、停用、客户编码生成、客户类型、所属行业、应用开通、客户管理员维护 | 是 | -| 应用管理 | 支持应用新增、编辑、启停、入口配置、菜单配置、权限项配置、可授权范围配置、已开通客户查看 | 是 | -| 组织管理 | 支持多级组织树和组织停用 | 是 | -| 用户管理 | 支持用户、账号、组织、角色维护 | 是 | +| 应用管理 | 支持应用新增、编辑、启停、入口配置、菜单配置、菜单操作权限配置、可授权范围配置、已开通客户查看 | 是 | +| 组织管理 | 支持客户组织树、新增、编辑、启停、调整上级组织、组织负责人维护和组织操作记录 | 是 | +| 用户管理 | 支持用户查询、新增、编辑、启停、新增用户默认以手机号创建平台账号、第三方账号绑定 / 解绑、平台账号密码重置、所属组织、默认组织和角色分配 | 是 | | 单点登录 | 支持一次登录访问多个已授权应用 | 是 | | Token 认证鉴权 | 所有应用 Token 认证鉴权均通过基础平台完成 | 是 | | Token 刷新 | 支持基础平台门户统一刷新 Token 并同步给已打开 iframe 应用 | 是 | @@ -416,8 +416,6 @@ | Tab 与 keepalive | 支持已打开页面 Tab 管理和状态保持 | 是 | | Token 共享 | 支持已打开 iframe 应用共享基础平台 Token | 是 | | 角色管理 | 支持角色授权和数据范围配置 | 是 | -| 权限管理 | 支持应用、菜单、操作、数据范围控制 | 是 | -| 菜单管理 | 支持菜单层级、排序、启停和权限绑定 | 是 | | 配置管理 | 支持平台、客户、应用配置 | 是 | | 消息待办 | 支持消息查询、已读未读、待办跳转 | 是 | | 操作日志 | 支持关键操作记录和查询 | 是 |