对比时间:2026-05-14 | admin-web (vue-next-admin) → admin-web-new (vue-pure-admin v6.3)
| 维度 | admin-web (原版) | admin-web-new (新版) |
|---|---|---|
| 基础框架 | vue-next-admin (Vue 3 + Element Plus) | vue-pure-admin v6.3 (Vue 3 + Element Plus) |
| 构建工具 | Vite (旧版) | Vite 7 |
| TypeScript | 部分支持 | 全面支持 |
| API 层 | 无独立 API 层,视图中直接调用 $get/$post |
独立 src/api/ 目录,22 个模块文件 |
| 路由结构 | 单文件 route.ts 定义全部路由 |
模块化 router/modules/admin.ts + remaining.ts |
| 状态管理 | 8 个 Pinia Store | 6 个 Pinia Store (更聚焦) |
| 权限控制 | perm 字段 + frontEnd.ts 过滤 |
RePerms / ReAuth 组件化 + permission store |
| 代码规范 | 无 | ESLint + Prettier + Stylelint + Husky + lint-staged |
| CSS 方案 | Scoped SCSS | Scoped SCSS + Tailwind CSS |
| 组件库 | Element Plus + 自定义 ExtForm 组件 | Element Plus + PureAdmin 组件 + ExtForm 适配 |
| HTTP 封装 | utils/request.ts ($get/$post/$body/$put) |
utils/http/index.ts (axios 实例) |
| 原版路由 | 新版权限 | 状态 | 说明 |
|---|---|---|---|
/home → views/admin/index.vue |
/admin/dashboard → views/admin/dashboard/index.vue |
✅ | ECharts 折线图+饼图、统计卡片、日期筛选、站点切换、深色主题适配均已实现 |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| 站点清单 | station/list/index.vue + dialog.vue + upload.vue |
station/list.vue + dialog.vue |
⚠️ | 核心 CRUD 已完成,站点数据上传功能缺失 |
| 设备清单 | station/device/index.vue + dialog.vue + config.vue + upload.vue |
station/device.vue + device-dialog.vue |
⚠️ | 核心 CRUD 已完成,设备详情配置页缺失、设备上传功能缺失 |
| 站点账户 | station/account/index.vue |
station/account.vue |
✅ | 已迁移 |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| 订单列表 | ordering/index.vue + dialog.vue |
ordering/index.vue + dialog.vue |
✅ | 17 列表字段完整,含订单详情弹窗 |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| C端用户列表 | account/index.vue + detail.vue |
user/index.vue |
⚠️ | 列表+搜索完整,用户详情页缺失 |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| 横幅管理 | banner/index.vue + dialog.vue |
banner/index.vue |
⚠️ | 列表+搜索完整,新增/编辑弹窗未独立抽离(可能内联在 index.vue 中) |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| 充值记录 | finance/index.vue |
finance/recharge.vue (+ 冗余 finance/index.vue) |
✅ | 已迁移 |
| 退款清单 | finance/refund.vue |
finance/refund.vue |
✅ | 已迁移 |
| 提现记录 | finance/withdraw.vue |
finance/withdraw.vue |
✅ | 已迁移 |
| 分账记录 | finance/splitRecord.vue |
finance/split-record.vue |
✅ | 已迁移 |
| 结算记录 | finance/settlement.vue |
finance/settlement.vue |
✅ | 已迁移 |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| 平台费率 | platform/rate/index.vue + dialog.vue |
platform/rate.vue + rate-dialog.vue |
✅ | 已迁移 |
| 设备配置 | platform/deviceConfig/index.vue + dialog.vue |
platform/device-config.vue + device-config-dialog.vue |
✅ | 已迁移 |
| 功能 | 原版文件 | 新版文件 | 状态 | 说明 |
|---|---|---|---|---|
| 角色权限 | role/index.vue + dialog.vue |
role/index.vue |
✅ | 权限树已实现(339行),弹窗可能内联 |
| 数据字典 | dict/index.vue |
dict/index.vue |
✅ | 嵌套表格+弹窗编辑已实现 |
| 系统公告 | notice/index.vue |
notice/index.vue |
✅ | 已迁移 |
| 常见问题 | faq/index.vue + dialog.vue |
faq/index.vue |
⚠️ | 列表+搜索完成,新增/编辑弹窗未独立 |
| 反馈上报 | feedback/index.vue + dialog.vue |
feedback/index.vue |
⚠️ | 列表+搜索完成,反馈详情/回复弹窗未独立 |
| 操作日志 | log/opt/index.vue |
log/index.vue |
✅ | 已迁移(含详情弹窗) |
| 投资人 | investor/index.vue + dialog.vue |
investor/index.vue |
⚠️ | 列表+搜索完成,新增/编辑弹窗未独立 |
| 运维账户 | user/index.vue + dialog.vue |
account/index.vue |
⚠️ | 列表+搜索完成,新增/编辑弹窗未独立 |
| 功能 | 原版文件 | 状态 | 说明 |
|---|---|---|---|
| 部门管理 | department/index.vue + dialog.vue |
❌ | 部门树形结构管理,完全缺失 |
| 消息管理 | message/index.vue |
❌ | 消息列表/发送/已读管理,完全缺失 |
| 消息模板 | template/index.vue |
❌ | 消息模板 CRUD,完全缺失 |
| 错误日志 | log/error/index.vue |
❌ | 仅迁移了操作日志,错误日志缺失 |
原版 admin-web 没有独立 API 层,新版已创建 22 个 API 模块:
| API 模块 | 对应原版调用 | 状态 |
|---|---|---|
api/stat.ts |
stat/dashboard, stat/trend, stat/washDeviceStatus |
✅ |
api/station.ts |
washStation/*, stationAccount/*, washDevice/* |
✅ |
api/order.ts |
washOrder/* |
✅ |
api/user.ts |
登录/个人信息/字典 | ✅ |
api/custom.ts |
custom/listUser, custom/listRecharge |
✅ |
api/admin.ts |
admin-user/*, adminUser/* |
✅ |
api/banner.ts |
banner/* |
✅ |
api/finance.ts |
finance/*, splitRecord/*, payLog/* |
✅ |
api/platform.ts |
platform-fee-rate/* |
✅ |
api/device-config.ts |
device-config/*, deviceConfig/* |
✅ |
api/role.ts |
role/*, permission/* |
✅ |
api/dict.ts |
dict/* |
✅ |
api/notice.ts |
notice/* |
✅ |
api/faq.ts |
faq/* |
✅ |
api/feedback.ts |
feedback/* |
✅ |
api/investor.ts |
investorInfo/* |
✅ |
api/file.ts |
文件上传 | ✅ |
api/routes.ts |
动态路由(预留) | ✅ |
api/mock.ts |
Mock 数据 | ✅ |
api/list.ts |
通用列表 | ✅ |
api/system.ts |
系统监控日志 | ✅ |
| — | message/* |
❌ 缺失 |
| — | messageTemplate/* |
❌ 缺失 |
| — | department/* |
❌ 缺失 |
| 原版组件 | 新版对应 | 说明 |
|---|---|---|
components/form/Ext*.vue (17 个) |
components/ExtForm/ |
已适配到 pure-admin |
components/auth/*.vue |
components/RePerms/, components/ReAuth/ |
pure-admin 内置方案 |
components/noticeBar/ |
layout/components/lay-notice/ |
已迁移 |
components/svgIcon/ |
components/ReIcon/ |
pure-admin 内置 |
components/qrcode/ |
components/ReQrcode/ |
pure-admin 内置 |
components/pdf/ |
vue-pdf-embed 依赖 |
npm 包替代 |
components/avatar/ |
布局组件内置 | pure-admin 内置 |
components/ReDialog/ |
components/ReDialog/ |
pure-admin 已有 |
| — | components/RePureTableBar/ |
pure-admin 表格栏 |
| — | components/ReSegmented/ |
pure-admin 分段控制器 |
| — | components/ReSelector/ |
pure-admin 选择器 |
| 类别 | 总数 | 已完成 | 部分完成 | 未完成 |
|---|---|---|---|---|
| 页面模块 | 22 | 13 | 5 | 4 |
| API 模块 | 22 | 22 | 0 | 0 |
| 路由页面 | 25 | 22 | — | 3 |
高优先级:
中优先级:
department) — 完整缺失,需新建路由+页面+APImessage) — 完整缺失,需新建路由+页面+APItemplate) — 完整缺失,需新建路由+页面+API低优先级:
log/error) — 可合并到 log/index.vue 中作为 Tabstation/list/upload, station/device/upload)account/detail)station/index.vue, finance/index.vue)