import request from '@/utils/request' import { ADMIN_API_PREFIX } from '@/config' import type { CaptchaInfoRespVO, LoginReqVO, LoginRespVO, PermissionInfoVO } from '@/types' /** * 认证相关接口 * * 后端实现在 parking-module-system(P1 起已替换掉 P0 的内存占位实现)。 * 管理员默认账号 admin / admin123(见 sql/02_system_seed.sql)。 */ export const AuthApi = { /** 图形验证码信息 */ getCaptchaInfo: () => request.get(`${ADMIN_API_PREFIX}/system/auth/captcha-info`), /** 登录 */ login: (data: LoginReqVO) => request.post(`${ADMIN_API_PREFIX}/system/auth/login`, data), /** * 刷新令牌 * * ⚠️ 页面代码**不需要**手动调用:`utils/request.ts` 收到 401 时会自动刷新并重放原请求。 * 这里导出是为了让「刷新接口存在」这件事在 API 契约层可见。 */ refreshToken: (refreshToken: string) => request.post(`${ADMIN_API_PREFIX}/system/auth/refresh-token`, { refreshToken }), /** 登出 */ logout: () => request.post(`${ADMIN_API_PREFIX}/system/auth/logout`), /** 获取当前用户的 用户信息 + 角色 + 权限 + 菜单(一次调用拿全,菜单驱动前端动态路由) */ getPermissionInfo: () => request.get(`${ADMIN_API_PREFIX}/system/auth/get-permission-info`) }