基于前端源码
client/src/views/、client/src/components/、client/src/router/index.ts实际页面梳理,仅描述当前已实现的功能。
当前系统共 16 个页面,分布在 8 个功能模块 中。
| 模块 | 页面 | 路由 | 源文件 |
|---|---|---|---|
| 认证/初始化 | 服务器配置 | /server-config |
views/ServerConfig/index.vue |
| 登录 | /login |
views/Login/index.vue |
|
| 注册 | /register |
views/Register/index.vue |
|
| 看板 | 数据看板 | / |
views/Dashboard/index.vue |
| 账号管理 | 账号管理 | /accounts |
views/Accounts/index.vue |
| 作品管理 | 作品管理 | /works |
views/Works/index.vue |
| 发布管理 | 发布管理 | /publish |
views/Publish/index.vue |
| 评论管理 | 评论管理 | /comments |
views/Comments/index.vue |
| 定时任务 | 定时任务 | /schedule |
views/Schedule/index.vue |
| 数据分析 | 数据总览 | /analytics/overview |
views/Analytics/Overview/index.vue |
| 平台分析 | /analytics/platform |
views/Analytics/Platform/index.vue |
|
| 平台详情 | /analytics/platform-detail/:platform |
views/Analytics/PlatformDetail/index.vue |
|
| 账号分析 | /analytics/account |
views/Analytics/Account/index.vue |
|
| 作品分析 | /analytics/work |
views/Analytics/Work/index.vue |
|
| 系统管理 | 系统设置 | /settings |
views/Settings/index.vue |
| 个人中心 | /profile |
views/Profile/index.vue |
| 组件 | 源文件 | 用途 |
|---|---|---|
| MainLayout | layouts/MainLayout.vue |
主布局壳:侧边栏导航 + 内容区 + 标签页系统 |
| BrowserTab | components/BrowserTab.vue |
内嵌浏览器标签页,用于平台扫码登录 |
| CaptchaDialog | components/CaptchaDialog.vue |
验证码弹窗 |
| TaskProgressDialog | components/TaskProgressDialog.vue |
后台任务进度弹窗 |
路由: /server-config | 认证: 无
首次启动或服务未配置时显示。居中卡片布局,自定义无边框标题栏(最小化/最大化/关闭按钮)。
路由: /login | 认证: 无
居中卡片布局,自定义无边框标题栏,背景有圆形装饰。
登录方式切换:密码登录 / 手机验证码登录(两个 Tab)
密码登录表单:
手机验证码登录表单:
底部"还没有账号?立即注册"链接跳转 /register。
路由: /register | 认证: 无
布局风格与登录页一致。
注册表单:
底部"已有账号?返回登录"链接跳转 /login。
路由: / | 认证: 需要
页面头部:标题 "数据看板" + "刷新数据"按钮。
统计卡片:一行多列,每个卡片包含图标(带背景色)+ 数值 + 标签。
平台账号状态:
active=绿色"正常",其他=红色"已过期")/accounts最近发布任务:
/publish数据趋势图表:
路由: /accounts | 认证: 需要
头部操作:
筛选栏:
账号表格(el-table):
| 列 | 说明 |
|---|---|
| 账号 | 头像(40x40) + 账号名 |
| 平台 | 平台名称 Tag |
| 粉丝数 | 格式化数字 |
| 作品数 | 整数 |
| 登录状态 | Tag(正常/已过期) |
| Cookie 过期时间 | 日期 |
| 分组 | 分组名称 |
| 操作 | 编辑 / 删除 / 同步作品 / 同步评论 等 |
浏览器登录流程:
分组管理弹窗:
路由: /works | 认证: 需要
头部统计:总作品数、总播放量、总点赞数。
筛选栏:
作品卡片网格(非表格,卡片布局):
作品详情弹窗:完整信息 + 数据统计 + 关联评论列表 + 同步评论操作。
空状态:el-empty + "同步作品"按钮。
路由: /publish | 认证: 需要
头部操作:
任务表格(el-table):
| 列 | 说明 |
|---|---|
| 视频 | 标题 + 视频文件名 |
| 平台/渠道 | 目标平台 Tag 列表 |
| 目标账号 | 数量 + 成功(绿色Tag)/失败(红色Tag) 计数 |
| 状态 | Tag |
| 操作 | 查看详情 / 删除 |
创建发布任务弹窗:
任务状态:待发布 -> 发布中 -> 已完成/失败
路由: /comments | 认证: 需要
头部统计:未读数、待回复数。
当前作品信息卡(条件显示,从作品页跳转时):
筛选栏:
评论列表(非表格,列表布局):
回复功能:点击展开回复输入框,提交后调用后端 API。
路由: /schedule | 认证: 需要
头部:标题 + "创建任务" primary 按钮。
任务表格(el-table):
| 列 | 宽度 | 说明 |
|---|---|---|
| 任务名称 | min 160px | 文本 |
| 任务类型 | 120px | Tag |
| 执行时间 | 160px | HH:mm |
| 重复 | 140px | 文本 |
| 状态 | 100px | Switch(启用/停用) |
| 下次执行 | 170px | 日期 / "已停用" |
| 操作 | 150px fixed | 编辑 / 删除 |
创建/编辑任务弹窗(520px Dialog):
路由: /analytics(含子路由)| 认证: 需要
5 个子页面,均有日期范围筛选(开始日期 + 结束日期)和快捷按钮(昨天 / 近 7 天 / 近 30 天 / 本月 / 上月),均支持"导出数据"。
/analytics/overview(默认子页面)
/analytics/platform
/analytics/platform-detail/:platform
/analytics/account
/analytics/work
路由: /settings | 认证: 需要
Tab 页切换,共 5 个 Tab。
basic)| 配置项 | 控件 | 说明 |
|---|---|---|
| 开放注册 | Switch | 是否允许新用户自行注册 |
| 默认用户角色 | Select | 运营 / 编辑 / 管理员 |
"保存设置"按钮。
publish-proxy)| 配置项 | 控件 | 说明 |
|---|---|---|
| 神龙产品Key | Input | 发布时代理 IP 用的 Key |
| 签名 | Input password | show-password,代理服务签名 |
"保存配置" / "刷新"按钮。
python-service)| 配置项 | 控件 | 说明 |
|---|---|---|
| 服务地址 | Input | 如 http://localhost:5005 |
"保存配置" / "刷新" / "测试连接"按钮。测试结果以 el-alert 显示成功/失败。
users)用户表格:
| 列 | 说明 |
|---|---|
| 用户名 | — |
| 邮箱 | — |
| 角色 | Tag(运营/编辑/管理员) |
| 状态 | Tag(正常-绿/禁用-红) |
| 操作 | 编辑 / 删除(不可删除自己) |
新增用户弹窗(480px):用户名(必填 3-50 字符)、密码(必填 >=6 字符)、邮箱(选填)、角色(Select)。
编辑用户弹窗(480px):用户名(disabled)、新密码(留空不修改)、邮箱、角色、状态(正常/禁用)。
status)el-descriptions 展示:
路由: /profile | 认证: 需要
两栏布局(左 8 / 右 16)。
左栏 - 个人信息卡:
右栏 - 两个 Tab:
Tab "基本信息":昵称 Input + 邮箱 Input + "保存修改"按钮。
Tab "修改密码":当前密码 + 新密码(>=6 字符)+ 确认密码(需一致)+ "修改密码"按钮。
Ctrl+W 关闭当前标签页/server-config/login/| 场景 | 实现 |
|---|---|
| 加载中 | v-loading 指令 / 按钮 :loading 属性 |
| 空数据 | el-empty + 引导操作按钮 |
| 成功提示 | ElMessage.success |
| 错误提示 | ElMessage.error |
| 危险操作确认 | ElMessageBox.confirm |
| 表单校验 | el-form + rules,字段级红色提示 |
| 分页 | el-pagination,支持每页条数选择 |
WebSocket 事件(Server -> Client):
| 事件 | 用途 |
|---|---|
TASK_CREATED |
新任务创建 |
TASK_PROGRESS |
任务进度更新 -> TaskProgressDialog 展示 |
TASK_COMPLETED |
任务完成 |
TASK_FAILED |
任务失败 |
CAPTCHA_REQUIRED |
需要验证码 -> CaptchaDialog 弹窗 |