import api from '@/utils/http' import { buildWebEncryptedLoginBody } from '@/utils/loginRsa' export interface PortalUserInfo { id: string username: string realName?: string phone?: string role?: string avatarUrl?: string | null } export interface LoginResult { token: string refreshToken: string expiresIn: number userInfo: PortalUserInfo } /** 门户 RSA 登录 */ export async function fetchLogin(username: string, password: string): Promise { const body = await buildWebEncryptedLoginBody(username, password) return api.post({ url: '/web/auth/login', data: body }) } /** 刷新 Token */ export async function fetchRefreshToken(refreshToken: string) { return api.post<{ token: string refreshToken: string expiresIn: number }>({ url: '/web/auth/refresh-token', data: { refreshToken } }) }