# 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 模块和类型均为增量能力。