import { defHttp } from '/@/utils/http/axios'; import { LoginParams, LoginResultModel, GetUserInfoModel } from './model/userModel'; import { encodeStr } from '/@/utils/encodeUtil'; import { ErrorMessageMode } from '/#/axios'; enum Api { Login = '/basic-api/sys/login', // Login = '/zfb-api/', Logout = '/logout', GetUserInfo = '/basic-api/sys/user/infoAnon', GetPermCode = '/getPermCode', } /** * @description: user login api */ export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal') { const form = new FormData(); const encryptPassword: string = encodeStr(window.btoa(params.password)); form.append('username', params.username); form.append('password', encryptPassword); form.append('captcha', params.captcha); return defHttp.post( { url: Api.Login, // params, params: form, headers: { 'Content-Type': 'multipart/form-data' }, }, { errorMessageMode: mode, }, ); } /** * @description: getUserInfo */ export function getUserInfo(id: number) { return defHttp.get( { url: `${Api.GetUserInfo}/${id}` }, { errorMessageMode: 'none' }, ); } export function getPermCode() { return defHttp.get({ url: Api.GetPermCode }); } export function doLogout() { return defHttp.get({ url: Api.Logout }); }