Files
one-pipe-system/openspec/changes/add-polling-priority-queue/tasks.md
luo 68d8f769d1
Some checks failed
构建并部署前端到测试环境 / build-and-deploy (push) Has been cancelled
fix: some
2026-09-17 18:37:20 +08:00

2.5 KiB
Raw Blame History

Tasks: 轮询管理 - 优先队列

1. 类型

  • 1.1 新增 src/types/api/pollingPriorityQueue.ts:优先轮询项 PollingPriorityItemid / card_id / iccid / task_type / task_type_name / status / status_name / trigger_type / trigger_type_name / trigger_types / trigger_count / attempt_count / result / result_name / failure_reason / shop_id_snapshot / source_order_id / source_package_usage_id / manual_operator_id / manual_operator_name / manual_reason / claimed_at / last_triggered_at / created_at / updated_at
  • 1.2 查询参数、分页响应 PollingPriorityItemPageResult、人工入队请求/响应、入队项 PriorityItemResult 类型
  • 1.3 src/types/api/index.ts 导出新类型

2. API

  • 2.1 新增 src/api/modules/pollingPriorityQueue.ts
    • getPriorityItemsGET /api/admin/polling-priority-items,分页查询卡轮询优先项,按创建时间倒序,支持卡 card_id、任务类型 task_type、状态 status、触发类型 trigger_type 筛选
    • createPriorityItemsPOST /api/admin/polling-priority-items,人工优先入队,请求 { card_id, reason }
    • getPriorityItemDetailGET /api/admin/polling-priority-items/{id},查询单项详情
  • 2.2 src/api/modules/index.ts 导出新服务

3. 页面

  • 3.1 src/router/routesAlias.ts 新增优先队列路由别名,src/router/routes/asyncRoutes.ts 在轮询管理下注册路由与菜单
  • 3.2 新增 src/views/polling-management/priority-queue/index.vue:筛选(卡/任务类型/状态/触发类型)、分页、表格展示列表项字段
  • 3.3 实现任务类型、状态、触发类型、执行结果枚举映射与中文展示
  • 3.4 实现人工优先入队弹窗:选择卡、原因必填校验(最长 500 字符),提交后展示 created_count / merged_count / items
  • 3.5 实现单项详情查看(页面或抽屉),越权与不存在按同一错误处理

4. 常量与文案

  • 4.1 在 src/config/constants/augustIteration.ts(或新增常量文件)登记任务类型/状态/触发类型/结果枚举与中文名称
  • 4.2 src/locales/langs/zh.jsonsrc/locales/langs/en.json 补充菜单与页面文案

5. Verification

  • 5.1 验证筛选与分页参数正确传递、列表按创建时间倒序
  • 5.2 验证人工入队成功/合并/原因校验(空与超长)
  • 5.3 验证详情接口与越权/不存在不区分
  • 5.4 运行 lint、类型检查与构建