yuanjing/src/apis/auth.ts
2026-10-15 17:59:34 +08:00

47 lines
1.3 KiB
TypeScript

import { get, post, PUT } from '@/utlis/request';
import type {
RVO,
LoginBO,
LoginVO,
SmsSendCodeBO,
SmsLoginBO,
SmsResetPasswordBO,
UserInfoVO,
UserCreateBO,
UserUpdateBO,
} from '@/types/auth';
// ===== 认证 =====
/** 用户名密码登录 */
export const authLogin = (data: LoginBO) =>
post<RVO<LoginVO>, LoginBO>('/v1/auth/login', data);
/** 发送手机号验证码 */
export const authSendSmsCode = (data: SmsSendCodeBO) =>
post<RVO<null>, SmsSendCodeBO>('/v1/auth/sms/send_code', data);
/** 手机号验证码登录 */
export const authSmsLogin = (data: SmsLoginBO) =>
post<RVO<LoginVO>, SmsLoginBO>('/v1/auth/sms/login', data);
/** 手机号验证码重置密码 */
export const authSmsResetPassword = (data: SmsResetPasswordBO) =>
post<RVO<null>, SmsResetPasswordBO>('/v1/auth/sms/reset_password', data);
/** 退出登录 */
export const authLogout = () => get<RVO<null>, undefined>('/v1/auth/logout');
// ===== 用户 =====
/** 获取当前登录用户信息 */
export const getUserInfo = () => get<RVO<UserInfoVO>, undefined>('/v1/user/get_info');
/** 创建用户(注册) */
export const createUser = (data: UserCreateBO) =>
post<RVO<string>, UserCreateBO>('/v1/user/security/create', data);
/** 更新用户信息 */
export const updateUser = (data: UserUpdateBO) =>
PUT<RVO<null>, UserUpdateBO>('/v1/user/update', data);