This commit is contained in:
44
openspec/changes/add-export-task-management/proposal.md
Normal file
44
openspec/changes/add-export-task-management/proposal.md
Normal file
@@ -0,0 +1,44 @@
|
||||
# Change: 新增统一导出任务管理
|
||||
|
||||
## Why
|
||||
|
||||
资产管理中的 IoT 卡与设备列表需要按当前检索条件执行全量导出,直接在前端同步导出容易超时且无法追踪进度。`docs/api.md` 已定义统一导出任务接口,需要在后台管理端补齐创建导出任务、查看任务列表、查看详情、下载结果和取消任务的前端能力。
|
||||
|
||||
同时,导出入口会覆盖多个业务列表和后续可扩展的导出视角,必须做成可复用的弹窗与任务管理能力,并按现有 RBAC 体系为所有按钮和操作补充权限编码。
|
||||
|
||||
## What Changes
|
||||
|
||||
- 在资产管理下新增“导出管理”,并在其下新增“导出列表”页面。
|
||||
- 新增统一导出任务前端 API 与类型契约,对接:
|
||||
- `GET /api/admin/export-tasks`
|
||||
- `POST /api/admin/export-tasks`
|
||||
- `GET /api/admin/export-tasks/{id}`
|
||||
- `POST /api/admin/export-tasks/{id}/cancel`
|
||||
- 新增可复用的创建导出任务弹窗,打开时说明“导出规则基于列表中的检索条件全量导出”。
|
||||
- 在 IoT 卡管理页增加导出按钮,默认创建 `scene=iot_card` 的导出任务。
|
||||
- 在设备管理页增加导出按钮,默认创建 `scene=device` 的导出任务。
|
||||
- 导出列表支持分页、场景、状态、创建时间范围筛选,列表数据调用导出任务列表接口,详情/下载调用详情接口,取消操作调用取消接口。
|
||||
- 所有新增按钮和行操作均需要接入权限编码,不允许无权限用户看到或触发对应操作。
|
||||
|
||||
## Impact
|
||||
|
||||
- Affected specs:
|
||||
- `export-task-management`
|
||||
- Affected code:
|
||||
- `src/api/modules/exportTask.ts`
|
||||
- `src/types/api/exportTask.ts`
|
||||
- `src/types/api/index.ts`
|
||||
- `src/api/modules/index.ts`
|
||||
- `src/router/routesAlias.ts`
|
||||
- `src/router/routes/asyncRoutes.ts`
|
||||
- `src/views/asset-management/iot-card-management/index.vue`
|
||||
- `src/views/asset-management/device-list/index.vue`
|
||||
- `src/views/asset-management/export-task-management/export-task-list/index.vue`
|
||||
- `src/components/business/ExportTaskCreateDialog.vue`
|
||||
- 菜单与国际化文案配置文件
|
||||
- Dependencies:
|
||||
- 依赖后端按 `docs/api.md` 提供导出任务接口和 JWT 鉴权。
|
||||
- 依赖现有 `useAuth` / `v-permission` 权限基础设施。
|
||||
- 导出创建时传入的 `query` 需要与对应业务列表接口的检索参数保持一致。
|
||||
- Breaking changes:
|
||||
- 无。新增页面、按钮、API 模块和类型均为增量能力。
|
||||
Reference in New Issue
Block a user