fix: some
Some checks failed
构建并部署前端到测试环境 / build-and-deploy (push) Failing after 28m40s

This commit is contained in:
luo
2026-09-18 18:11:53 +08:00
parent 5e7f5eaba4
commit 08889d2e42
55 changed files with 2888 additions and 414 deletions

View File

@@ -0,0 +1,23 @@
# Change: 调整运营报表展示并补齐导出场景
## Why
运营报表首版将「汇总数据」标题与趋势图放在报表页内,信息层级冗余且与仪表台分析页重复;同时导出管理缺少临期资产、设备激活情况报表、套餐续费情况报表三个导出场景,且佣金/套餐真流量场景命名与实际业务口径不一致。
## What Changes
- 运营报表两个页面移除「汇总数据」标题,仅保留数据快照、导出状态与导出/下载操作。
- 运营报表两个页面移除趋势图卡片与「统计粒度」筛选,不再请求趋势接口。
- 在仪表台分析页(`/dashboard/analysis`)新增「设备激活趋势」「套餐续费趋势」组件,占位与门禁与运营报表一致(超级管理员/平台账号);统计粒度改为下拉选择(按日/按月),并支持时间范围与刷新。
- 导出管理新增 3 个导出场景:`expiring_asset`(临期资产)、`operations_activation`(设备激活情况报表)、`operations_renewal`(套餐续费情况报表)。
- 修正场景显示名称:`commission_record` → 佣金明细、`package_traffic_alert` → 套餐真流量达量预警。
## Impact
- Affected specs: `operations-reports`(修改)、`export-task-management`(新增/修改)
- Affected code:
- `src/views/operations-reports/activation/index.vue``src/views/operations-reports/renewal/index.vue`
- `src/views/dashboard/analysis/index.vue``src/views/dashboard/analysis/widget/OperationsActivationTrend.vue``src/views/dashboard/analysis/widget/OperationsRenewalTrend.vue`(新增)
- `src/types/api/exportTask.ts``src/config/constants/exportTask.ts`
- `src/router/routesAlias.ts``src/router/routes/asyncRoutes.ts`
- `src/locales/langs/zh.json``src/locales/langs/en.json`

View File

@@ -0,0 +1,37 @@
## ADDED Requirements
### Requirement: Additional Export Task Scenes
The admin frontend SHALL support three additional export task scenes: `expiring_asset`(临期资产)、`operations_activation`(设备激活情况报表)、`operations_renewal`(套餐续费情况报表)。每个场景 SHALL 有独立的导出任务列表子页,页面固定查询该场景任务(`GET /api/admin/export-tasks` with `scene=<scene>`),并提供 `export_task:<scene>:detail` / `export_task:<scene>:download` 权限配置。
#### Scenario: Open expiring asset export task page
- **GIVEN** 用户打开「导出临期资产」页面
- **WHEN** 页面查询导出任务列表
- **THEN** 系统 MUST call `GET /api/admin/export-tasks` with `scene=expiring_asset`
#### Scenario: Open operations report export task pages
- **GIVEN** 用户打开「导出设备激活情况报表」或「导出套餐续费情况报表」页面
- **WHEN** 页面查询导出任务列表
- **THEN** 系统 MUST call `GET /api/admin/export-tasks` with `scene=operations_activation``scene=operations_renewal`
#### Scenario: Gate new scene actions
- **WHEN** 任一新增场景页面渲染详情与下载操作
- **THEN** 系统 MUST 使用对应场景的 `export_task:<scene>:detail``export_task:<scene>:download` 权限码
### Requirement: Export Scene Display Names
导出任务创建弹窗与导出任务列表 SHALL 按最新业务口径展示场景名称:`commission_record` 显示为「佣金明细」(原「佣金记录」),`package_traffic_alert` 显示为「套餐真流量达量预警」(原「套餐真流量预警」);新增场景依次显示为「临期资产」「设备激活情况报表」「套餐续费情况报表」。
#### Scenario: Show renamed scene names
- **WHEN** 导出弹窗以 `scene=commission_record` 打开
- **THEN** 弹窗 MUST 显示「佣金明细」
- **AND** 以 `scene=package_traffic_alert` 打开时 MUST 显示「套餐真流量达量预警」
#### Scenario: Show new scene names
- **WHEN** 导出弹窗以 `scene=operations_activation` 打开
- **THEN** 弹窗 MUST 显示「设备激活情况报表」

View File

@@ -0,0 +1,31 @@
## ADDED Requirements
### Requirement: 运营报表趋势分析
系统 SHALL 在仪表台分析页(`/dashboard/analysis`)以「设备激活趋势」「套餐续费趋势」两个组件展示运营报表趋势数据。每个组件 SHALL 提供时间范围选择、统计粒度下拉(按日/按月)与刷新操作,并复用 `OperationsTrendChart` 以时间点为横轴渲染关键指标曲线。两个组件 SHALL 仅对超级管理员/平台账号可见。
#### Scenario: 展示激活趋势
- **WHEN** 用户在仪表台分析页展开「设备激活趋势」组件并选择时间范围
- **THEN** 请求 `GET /api/admin/operations-reports/activation-trend` 并按所选 `granularity`(日/月)渲染多系列曲线
#### Scenario: 切换统计粒度
- **WHEN** 用户将统计粒度从「按日」切换为「按月」
- **THEN** 组件以 `granularity=month` 重新请求趋势接口并刷新图表
## MODIFIED Requirements
### Requirement: 运营报表页面
系统 SHALL 提供顶层菜单「运营报表」及两个子页「设备激活报表」「套餐续费报表」。每页 SHALL 包含时间范围与分组筛选、数据快照信息、汇总表格与导出按钮;页面 SHALL NOT 展示「汇总数据」标题,也 SHALL NOT 在页面内渲染趋势图或提供统计粒度筛选。
#### Scenario: 查询汇总并渲染表格
- **WHEN** 用户选择时间范围与分组后点击查询
- **THEN** 请求对应汇总接口并以表格展示各分组指标与合计行
#### Scenario: 导出报表
- **WHEN** 用户点击导出并成功创建异步任务
- **THEN** 前端轮询任务状态,任务完成后可下载文件

View File

@@ -0,0 +1,24 @@
# Implementation Tasks
## 1. 运营报表页面调整
- [x] 1.1 移除 `activation/index.vue``renewal/index.vue` 表头「汇总数据」标题(保留数据快照与导出操作)
- [x] 1.2 移除报表页趋势图卡片、趋势相关导入/状态/请求及 `granularity` 搜索项
- [x] 1.3 清理报表页趋势相关样式(`.report-toolbar``.report-title``.report-snapshot` 的 margin
## 2. 趋势分析迁入仪表台分析页
- [x] 2.1 新增 `widget/OperationsActivationTrend.vue``widget/OperationsRenewalTrend.vue`(时间范围 + 统计粒度下拉 + 刷新,复用 `OperationsTrendChart`
- [x] 2.2 在 `views/dashboard/analysis/index.vue` 注册两个趋势组件,门禁使用 `isPlatformAccount`
## 3. 导出场景补齐
- [x] 3.1 `ExportTaskScene` 新增 `expiring_asset` / `operations_activation` / `operations_renewal`
- [x] 3.2 `EXPORT_TASK_SCENE_CONFIG` 新增三个场景配置,并修正 `commission_record`→佣金明细、`package_traffic_alert`→套餐真流量达量预警
- [x] 3.3 `routesAlias.ts``asyncRoutes.ts` 新增三个导出任务列表子路由
- [x] 3.4 `zh.json` / `en.json` 新增导出场景菜单标题并同步更新命名
## 4. 验证
- [x] 4.1 `npx eslint --fix``npx stylelint ... --fix``npx vue-tsc --noEmit``npx vite build --mode production`
- [x] 4.2 `npx openspec validate update-operations-reports-trend-and-export-scenes --strict`