import { GET, POST, PUT } from './request'; import { createHashPassword, Obj2Query } from '@/utils/tools'; import { ResLogin, PromotionRecordType } from './response/user'; import { UserAuthTypeEnum } from '@/constants/common'; import { UserBillType, UserType, UserUpdateParams } from '@/types/user'; import type { PagingData, RequestPaging } from '@/types'; import { informSchema, PaySchema } from '@/types/mongoSchema'; export const sendAuthCode = (data: { username: string; type: `${UserAuthTypeEnum}`; googleToken: string; }) => POST('/user/sendAuthCode', data); export const getTokenLogin = () => GET('/user/tokenLogin'); export const postRegister = ({ username, password, code, inviterId }: { username: string; code: string; password: string; inviterId: string; }) => POST('/user/register', { username, code, inviterId, password: createHashPassword(password) }); export const postFindPassword = ({ username, code, password }: { username: string; code: string; password: string; }) => POST('/user/updatePasswordByCode', { username, code, password: createHashPassword(password) }); export const postLogin = ({ username, password }: { username: string; password: string }) => POST('/user/loginByPassword', { username, password: createHashPassword(password) }); export const loginOut = () => GET('/user/loginout'); export const putUserInfo = (data: UserUpdateParams) => PUT('/user/update', data); export const getUserBills = (data: RequestPaging) => POST>(`/user/getBill`, data); export const getPayOrders = () => GET(`/user/getPayOrders`); export const getPayCode = (amount: number) => GET<{ codeUrl: string; payId: string; }>(`/user/getPayCode?amount=${amount}`); export const checkPayResult = (payId: string) => GET(`/user/checkPayResult?payId=${payId}`); export const getInforms = (data: RequestPaging) => POST>(`/user/inform/list`, data); export const getUnreadCount = () => GET(`/user/inform/countUnread`); export const readInform = (id: string) => GET(`/user/inform/read`, { id });