2.2 KiB
2.2 KiB
ADDED Requirements
Requirement: 受控系统配置列表
系统 SHALL 在设置管理提供受控系统配置列表,支持按 module 筛选和分页,并展示后端返回的配置元数据及当前值。
Scenario: 查询系统配置
- WHEN 用户进入系统配置页面或执行刷新
- THEN 前端调用
GET /api/admin/system-configs - AND 使用响应中的
data.list、data.page、data.page_size和data.total渲染列表 - AND 展示配置 Key、模块、说明、值、控件提示、注册状态、只读状态、敏感状态和更新时间
Scenario: 按模块筛选
- WHEN 用户选择
carrier_callback或c2b.payment - THEN 查询请求携带对应的
module参数 - AND 页面从第一页展示筛选后的配置
Requirement: 动态配置编辑
系统 SHALL 根据配置返回的 control、value_type、enum_values、min 和 max 元数据渲染编辑控件并进行前端基础校验;更新请求 SHALL 统一提交字符串形式的 value。
Scenario: 更新可编辑配置
- WHEN 用户修改非只读配置并提交
- THEN 前端调用
PUT /api/admin/system-configs/{key} - AND 请求体为
{ "key": "配置Key", "value": "字符串化配置值" } - AND 成功后使用接口返回的配置数据更新列表
Scenario: bool 和 int 配置
- WHEN 配置类型分别为
bool或int - THEN 页面分别使用开关或数字输入控件
- AND bool 提交
true/false字符串,int 提交十进制数字字符串 - AND int 值违反
min或max时阻止提交
Scenario: 枚举配置
- WHEN 配置返回非空
enum_values - THEN 页面使用枚举选择控件
- AND 只能提交允许的枚举值
Requirement: 只读和敏感配置保护
系统 SHALL 禁止前端编辑只读配置;敏感配置 SHALL 展示接口返回的脱敏值,用户未主动输入新值时不得将该脱敏值再次提交。
Scenario: 只读配置
- WHEN 配置的
readonly为true - THEN 页面禁用编辑控件和保存操作
Scenario: 敏感配置未修改
- WHEN 敏感配置仅展示脱敏值且用户未输入新值
- THEN 页面不提交该配置的更新请求