Files
one-pipe-system/openspec/changes/add-package-traffic-alert/tasks.md
2026-09-17 12:16:20 +08:00

41 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Tasks: 套餐真流量预警前端对接
## 1. API 与类型
- [x] 1.1 新增 `src/types/api/packageTrafficAlert.ts`:规则列表/规则项、创建/修改参数、预警记录列表/记录项、详情、导出请求/响应类型snake_case对齐接口文档记录字段按前端注意事项预留可选
- [x] 1.2 `src/types/api/index.ts` 导出新类型
- [x] 1.3 新增 `src/api/modules/packageTrafficAlert.ts``getAlertRules` / `createAlertRule` / `updateAlertRule` / `getAlertRecords` / `getAlertRecordDetail` / `exportAlertRecords` 6 个方法
- [x] 1.4 `src/api/modules/index.ts` 导出 `PackageTrafficAlertService`
## 2. 常量与权限
- [x] 2.1 `src/config/constants/augustIteration.ts``AUGUST_PERMISSIONS` 新增 `packageTrafficAlert` 权限组rules_view / rule_create / rule_update / records_view / record_detail / export
- [x] 2.2 新增通知状态常量:枚举 1-5 文案(已通知/待投递/投递失败/未通知(接收人已失效)/未通知(无有效业务员))及 tag 类型映射
- [x] 2.3 若导出任务列表需要场景区分,补充真流量预警导出场景配置(场景值与后端确认后更新 `EXPORT_TASK_SCENE_CONFIG``getExportTaskSceneName`
## 3. 预警规则页
- [x] 3.1 新增 `src/views/package-management/traffic-alert-rules/index.vue`:筛选栏(套餐选择器、启用状态)、列表(套餐名称、真流量额度 GB、阈值、启用状态、备注、更新时间、分页默认 20/最大 100
- [x] 3.2 新增/编辑弹窗:套餐选择器(编辑时不可改)、阈值 ElInputNumber1-100两位小数创建必填、启用开关、备注≤500 字符带计数);创建成功提示同一套餐最多一条规则
- [x] 3.3 启用状态行内开关(调用修改接口,仅传 enabled文案说明“停用后不再产生新预警既有预警保留”
- [x] 3.4 403/错误处理:无权限提示;重复创建等后端错误展示 msg
## 4. 预警记录页
- [x] 4.1 新增 `src/views/package-management/traffic-alerts/index.vue`:筛选栏(套餐、店铺、业务员、资产类型、资产关键词、阈值、触发时间范围、通知状态)、列表(触发时快照字段 + `business_user_group_names` 当前值 + 通知状态 tag、分页
- [x] 4.2 新增 `detail.vue`(或详情抽屉):快照字段展示、`shop_changed_since_trigger` / `owner_changed_since_trigger` 变化提示、空值/空数组显示 `-`、越权按资源不可见处理
- [x] 4.3 导出弹窗格式选择xlsx/csv+“基于当前筛选条件全量导出”说明,调用 `exportAlertRecords` 携带当前筛选,成功后提示并引导跳转导出任务列表下载
## 5. 路由、菜单与国际化
- [x] 5.1 `src/router/routesAlias.ts`:新增 `TrafficAlertRules` / `TrafficAlerts` / `TrafficAlertDetail`
- [x] 5.2 `src/router/routes/asyncRoutes.ts`套餐管理分组下新增规则页、记录页keepAlive与隐藏详情路由
- [x] 5.3 `src/locales/langs/zh.json` / `en.json``menus.packageManagement` 新增 `trafficAlertRules` / `trafficAlerts` / `trafficAlertDetail`
## 6. 联调与验收
- [ ] 6.1 测试环境(`https://cmp-api.boss160.cn`)联调 6 个接口,核对记录列表/详情实际字段名并修正类型
- [ ] 6.2 权限验证:超级管理员/平台账号正常访问;其他账号 403 提示符合预期;详情越权按资源不可见
- [ ] 6.3 边界验证:阈值 0.99/1/100/100.01 校验、备注 500 字符、同套餐重复创建、空店铺/业务员展示 `-`、导出任务创建后可在导出任务列表下载
- [x] 6.4 ESLint / Stylelint / `vue-tsc` 类型检查通过