4.4 KiB
4.4 KiB
Change: 接入轮询配置匹配预览、调序、重算和统计
Why
docs/轮询配置管理_API简化版.md 新增 7 个接口。当前 PollingConfigService 仅有配置 CRUD、启停和启用列表,轮询配置页面没有匹配预览、优先级整体调整、异步重算及统计入口。需要按已明确的契约补齐,并延续之前菜单、权限和界面交付标准。
What Changes
- 为全部 7 个新增接口补充服务方法、请求/响应类型及契约测试。
- 在既有「轮询配置」
/polling-management/config内增加匹配预览入口:支持当前配置 GET 预览,以及携带多条未保存修改的 POST 预览。支持新增草稿(id=0)、覆盖配置和模拟停用,展示卡信息、命中配置和最终任务间隔;预览不写数据。 - 草稿表单支持资产状态、套餐状态、五项检查间隔及重置日前窗口字段,准确区分前四项间隔的 null 继承、0 禁用和正数间隔;保护期 null 不检查。新增字段仅进入文档明确的 overrides,不擅自扩展旧 CRUD 保存契约。
- 为超级管理员接入优先级排序提交和确认后的异步重算,界面和事件双重身份检查,不创建普通用户可分配的专属操作权限。
- 在既有配置页面提供按 task_id 查询重算进度入口;启动后可自动查询,关闭、卸载和终态清理轮询,失败保留任务 ID 与错误信息。
- 在「轮询管理」下新增「轮询配置统计」
/polling-management/config-stats,包含重置日前加密查流量统计、分层统计两个独立授权区域;不额外增加一级菜单或详情路由。 - 界面沿用店铺列表及店铺详情标准;业务时间使用
formatDateTime;搜索展开仅在条件数 >=4 时启用;运营商账户复用按名称搜索的远程下拉。 - 完成后在
docs/权限.md与最终回复列明实际新增菜单名称、URL、父菜单、页面权限和按钮权限,仅列普通账号配置。
Impact
- Affected specs:
polling-config-extensions(新增);仓库当前没有已归档 specs,已完成的add-gateway-rate-limit-management提供可复用账户搜索和通用交互能力,不更改它的接口与权限。 - Affected code:
src/api/modules/pollingConfig.ts、src/types/api/pollingConfig.ts、类型统一导出、新权限常量、src/views/polling-management/config/、新增统计页、路由别名和静态路由、scripts/tests/、docs/权限.md。 - 保留当前工作区全部既有修改,包括网关限流、停复机时间控件、用户部署文件和
package.json。 - 不执行真实配置修改、优先级提交、重算任务创建、Git 推送或线上部署;写接口只用本地 mock 验证。
Contract boundaries
- POST 匹配预览同时在 Query 与 JSON Body 传同一 ICCID;Body 包含必填 iccid,不能只传其中一处。
- 优先级接口没有明确成功 data DTO,不读取虚构的返回列表;成功后主动刷新配置列表。
- 重算 carrier_id 请求为 number/null,响应为 string,任务状态和计数按接口原值展示;不把重算完成误解为停复机执行或强制推后轮询。
- 两个统计接口提供明确 DTO,按该结构展示;周期 null 显示无数据,0 保留为真实零。分层统计注明 5 分钟缓存,未匹配项突出告警;统计刷新不宣称清除后端缓存。
- 新文档只明确 overrides 支持额外配置字段,未给出新版持久化 CRUD 契约。因此保留原保存行为,用独立草稿表单承载新增预览字段;待后端提供明确保存契约后再扩展原保存表单。
Proposed ordinary-user configuration
| 项目 | URL / 编码 | 父菜单 / 位置 |
|---|---|---|
| 轮询配置统计 | /polling-management/config-stats,页面权限 polling_config_stats:page |
轮询管理 |
| 匹配预览(当前配置/草稿) | polling_config:match_preview |
既有轮询配置 |
| 查询重算进度 | polling_config:recalculate_progress |
既有轮询配置 |
| 查看重置日前统计 | polling_config_stats:pre_reset |
轮询配置统计 |
| 查看分层统计 | polling_config_stats:tiers |
轮询配置统计 |
以上是前端配置约定,后端独立鉴权。既有轮询配置菜单和旧 CRUD 权限不因本次接入强制迁移。
用户于 2026-10-24 回复「执行」,并于 2026-10-26 回复「继续」,已批准按本提案实施。