feat: 新增管理台模型配置管理功能

- 支持配置类型注册表机制(basic、zhisuan)
- 配置列表展示(生效中/未生效状态区分)
- 新增/编辑配置表单,支持动态字段渲染
- 生效中配置不可编辑/删除限制
- 配置类型创建后不可修改
- 密钥掩码显示与显示/隐藏切换
- 操作二次确认弹窗(设为默认、删除)
This commit is contained in:
2026-03-26 11:14:42 +08:00
parent a576a5e40e
commit b00d75de8a
12 changed files with 931 additions and 10 deletions

View File

@@ -0,0 +1,115 @@
## Purpose
管理台模型配置管理功能,支持管理员管理多组 AI 模型接入配置,并可选择其中一组作为平台默认配置生效。
## Requirements
### Requirement: 配置列表展示
系统 SHALL 在管理台展示模型配置列表,包括当前生效配置卡片和所有配置表格。
#### Scenario: 查看配置列表页
- **WHEN** 管理员进入模型配置管理页面
- **THEN** 系统展示当前生效配置卡片(包含名称、类型、关键信息)
- **AND** 系统展示配置列表表格(包含名称、类型、关键信息摘要、状态、操作按钮)
#### Scenario: 区分配置状态
- **WHEN** 配置列表中有多个配置
- **THEN** 当前生效配置在表格中显示"生效中"状态标签
- **AND** 其他配置显示"未生效"状态标签
### Requirement: 设为默认配置
系统 SHALL 允许管理员将非生效配置设为平台默认配置,操作需二次确认。
#### Scenario: 成功切换默认配置
- **WHEN** 管理员点击某未生效配置的"设为默认"按钮
- **THEN** 系统显示二次确认弹窗
- **AND** 管理员确认后,该配置变为生效状态
- **AND** 原生效配置变为未生效状态
#### Scenario: 取消切换默认配置
- **WHEN** 管理员点击"设为默认"按钮后
- **AND** 在二次确认弹窗中点击取消
- **THEN** 系统关闭弹窗,配置状态保持不变
### Requirement: 删除配置
系统 SHALL 允许管理员删除非生效的配置,删除前需二次确认。
#### Scenario: 成功删除配置
- **WHEN** 管理员点击某未生效配置的"删除"按钮
- **THEN** 系统显示二次确认弹窗
- **AND** 管理员确认后,该配置从列表中移除
#### Scenario: 无法删除生效配置
- **WHEN** 某配置是当前生效配置
- **THEN** 其删除按钮被禁用
- **AND** 鼠标悬停时显示提示"生效中的配置不可删除"
### Requirement: 新增配置
系统 SHALL 提供独立页面供管理员新增模型配置,支持选择配置类型并填写对应字段。
#### Scenario: 成功新增基础类型配置
- **WHEN** 管理员点击"新增配置"按钮进入新增页面
- **AND** 选择配置类型为"OpenAI 兼容接口"
- **AND** 填写配置名称、API 地址、API 密钥、模型名称
- **AND** 填写常用参数Temperature、Max Tokens、Top P
- **AND** 点击保存
- **THEN** 系统创建新配置并返回列表页
- **AND** 新配置默认状态为"未生效"
#### Scenario: 成功新增智算平台配置
- **WHEN** 管理员在新增页面选择配置类型为"智算管理平台"
- **THEN** 表单动态切换为智算平台字段API 地址、App ID、App Secret
- **AND** 管理员填写完成后保存
- **THEN** 系统创建新配置并返回列表页
#### Scenario: 新增时切换类型清空字段
- **WHEN** 管理员在新增页面已填写某类型的部分字段
- **AND** 切换配置类型为另一种类型
- **THEN** 系统清空已填写的类型特定字段
- **AND** 保留通用字段(配置名称)
#### Scenario: 新增配置表单验证失败
- **WHEN** 管理员提交表单时未填写必填项
- **THEN** 系统高亮显示未填写的必填字段
- **AND** 阻止表单提交
### Requirement: 编辑配置
系统 SHALL 提供独立页面供管理员编辑现有配置,仅允许编辑非生效配置。
#### Scenario: 成功编辑配置
- **WHEN** 管理员点击某未生效配置的"编辑"按钮
- **THEN** 系统进入编辑页面,预填充该配置的当前值
- **AND** 配置类型字段显示为只读
- **AND** 管理员修改其他字段后保存
- **THEN** 系统更新配置并返回列表页
#### Scenario: 无法编辑生效配置
- **WHEN** 某配置是当前生效配置
- **THEN** 其编辑按钮被禁用
- **AND** 鼠标悬停时显示提示"生效中的配置不可编辑"
#### Scenario: 编辑时类型字段只读
- **WHEN** 管理员在编辑配置页面
- **THEN** 配置类型选择器被禁用
- **AND** 显示提示"配置类型不可修改"
### Requirement: 配置类型注册表
系统 SHALL 使用可扩展的注册表机制定义配置类型,每种类型包含独立的字段定义和验证规则。
#### Scenario: 扩展新配置类型
- **WHEN** 需要添加新的配置类型(如"阿里云百炼"
- **THEN** 开发者只需在注册表中添加类型定义
- **AND** 无需修改配置表单页面的核心逻辑
- **AND** 新类型自动在类型选择器和表单中生效
### Requirement: 密钥字段掩码显示
系统 SHALL 对所有敏感字段API 密钥、App Secret 等)使用掩码显示。
#### Scenario: 列表页密钥掩码
- **WHEN** 配置列表展示配置信息
- **THEN** API 密钥、App Secret 字段显示为掩码格式(如"sk-****xxxx"
#### Scenario: 表单页密钥掩码
- **WHEN** 编辑配置时表单显示已保存的密钥
- **THEN** 密钥输入框显示为掩码格式
- **AND** 管理员可点击显示/隐藏按钮切换明文/密文