3.8 KiB
TDesign Shell Wave C Implementation Plan
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: 将标准页签迁到 t-tabs、表单二分段迁到 t-radio-group、标准数据列表迁到 t-table;Login 方式切换纳入。
Architecture: 按页并行。t-tabs v-model 对齐既有 tab 字段;t-table 用 :data + :columns + row-key,操作列 cell/slot 保留现有 t-button;分页继续外置 t-pagination。不换 Monitor/Alarms/Media 卡、航线库卡、value-table、飞行控制、map-type。
Tech Stack: Vue 3、tdesign-vue-next(t-tabs、t-table、t-radio-group)
Spec: docs/superpowers/specs/2026-08-28-tdesign-shell-wave-c-design.md
Task 1: C1 Users + Firmwares + OpLogs → t-table
Files:
-
Modify:
src/views/UsersView/UsersView.vue -
Modify:
src/views/FirmwaresView/FirmwaresView.vue -
Modify:
src/views/OperationLogsView/OperationLogsView.vue -
Modify:
src/main.js(补 table/tabs/radio 样式css.mjs) -
三页
asset-table→t-table(columns 对齐原 th;操作列保留 t-button) -
row-key用 id -
外置
t-pagination不动 -
main.js:
import 'tdesign-vue-next/es/table/style/css.mjs'(及后续 tabs/radio 可同 commit 或 C2) -
Commit:
feat: 用户固件操作日志列表切换到 t-table
Task 2: C2 Devices tabs + table
Files:
-
Modify:
src/views/DevicesView/DevicesView.vue -
asset-tabs→t-tabs(机巢/无人机,角标进 label) -
asset-table→t-table(按 tab 数据源切换 columns/data) -
binding-device 卡片跳转若非表列可留
-
Commit:
feat: 设备管理页签与列表切换到 TDesign
Task 3: C3 Tasks tabs + tables + mode-segment
Files:
-
Modify:
src/views/TasksView/TasksView.vue -
business-tabs→t-tabs -
计划表 / 执行记录表 →
t-table -
mode-segment(执行方式、转弯方式)→t-radio-group variant="default-filled" -
航线库卡片栅格不换
-
Commit:
feat: 任务页签表格与分段切换到 TDesign
Task 4: C4 Account tabs + tables
Files:
-
Modify:
src/views/AccountView/AccountView.vue -
business-tabs→t-tabs -
orders/usage/downloads/sim/simRecharge/sessions 等列表 →
t-table -
communication-table →
t-table -
外置分页保留
-
Commit:
feat: 账户中心页签与列表切换到 TDesign
Task 5: C5 Media / System / DeviceDetail / Login
Files:
-
Modify:
src/views/MediaView/MediaView.vue -
Modify:
src/views/SystemView/SystemView.vue -
Modify:
src/views/DeviceDetailView/DeviceDetailView.vue -
Modify:
src/views/LoginView/LoginView.vue -
Media/System:仅
business-tabs→t-tabs(卡栅格/设置内容不改结构) -
DeviceDetail:
full-detail-tabs→t-tabs;alarms/logsrecord-table→t-table;value-tableKV 不换 -
Login:密码/短信方式切换 →
t-tabs或t-radio-group -
main.js 确保 tabs/radio/table 样式已引入
-
Commit:
feat: 媒体系统详情登录页签与详情表切换到 TDesign
Task 6: 验收
- 目标页无 business-tabs/asset-tabs/full-detail-tabs 原生 button(保留清单除外)
- Users/Firmwares/OpLogs/Devices/Tasks(计划执行)/Account/DeviceDetail(alarms|logs) 有
t-table - Monitor map-type 仍在;Alarms 非 t-table 强改
- 浏览器:Devices 切 tab、Users 表与翻页、Tasks 分段、Login 切方式、登录不白屏
调用约定
- 不
git add -A;样式路径用css.mjs。 - 跳过全量测试;冒烟 Main 统一。