import type { HjcUser } from '~/types/tender' /** 登录态(token 存 cookie,SSR 安全;服务器端代理从 cookie 读取并转发 Authorization) */ export function useHjcAuth() { const token = useCookie('hjc_token', { maxAge: 60 * 60 * 24 * 7, sameSite: 'lax' }) const user = useState('hjc-user', () => null) function isLoggedIn() { return !!token.value } async function login(enterpriseName: string, password: string) { const res: any = await $fetch('/api/tender/login', { method: 'POST', body: { enterpriseName, password } }) if (res?.access_token) { token.value = res.access_token user.value = res.user || null return { ok: true, user: res.user } } return { ok: false, message: res?.message || '登录失败' } } async function register(payload: Record) { const res: any = await $fetch('/api/tender/register', { method: 'POST', body: payload }) if (res?.access_token) { token.value = res.access_token user.value = res.user || null return { ok: true, user: res.user } } return { ok: false, message: res?.message || '注册失败' } } function logout() { token.value = null user.value = null } return { token, user, isLoggedIn, login, register, logout } }