Files
crawler-plugin/admin-frontend-vue
huangzd1997 b70557a077 feat(认证/通知): 单设备登录互踢 + 站内通知铃铛系统
- 单设备登录:登录成功即 last-login-wins 绑定 users.machine;非超管旧 token
  在下一次受保护请求抛 4011 下线,超管豁免;仅认 token 内签名 deviceId,不用请求头。
  前端两端接入踢下线跳转(?kicked=1 提示),V118 清空历史 machine
- 站内通知:新增 notification 模块(任务失败扫描 / 密钥欠费 / 下游服务探测三类来源),
  前后台铃铛组件 + 轮询;后台列表按主管数据范围(UserDataScopeSupport)过滤;V116 建表

均已于 2026-09-13 部署上线,此次补提交源码(此前仅存在于已部署 JAR/构建产物中)
2026-09-13 23:08:22 +08:00
..

Admin Frontend Vue

独立的后台管理前端工程,与客户端 frontend-vue 完全分离。

本地开发

npm install
$env:VITE_API_TARGET = "http://127.0.0.1:18080"
npm run dev

开发入口:http://localhost:5174/admin-vue/

构建

npm run build
npm test

构建产物在 dist/,部署到 Nginx 的 /admin-vue/ 根目录。该工程不写入客户端的 new_web_source,也不打进 Java JAR。

运行时契约

  • 登录态:复用同源 Cookie/Session。
  • 当前用户:GET /api/admin/current-user
  • 菜单树:GET /api/admin/current-user/menusJava 返回树形菜单。
  • 退出登录:POST /api/admin/logout
  • 前端路由:History 模式,基准路径 /admin-vue/
  • 权限粒度:菜单/页面级,不定义按钮级权限。

首批页面

  • /admin-vue/account/users
  • /admin-vue/account/menus
  • /admin-vue/account/groups

当前首批页面已接入 Java 现有用户、菜单和数据权限分组 API;Java 菜单接口完成树形响应和 Flyway 菜单迁移后,路由权限守卫即可按最终菜单树工作。