mirror of
https://gitee.com/xiongmao1988/rax-medical.git
synced 2025-08-23 20:44:58 +08:00
63 lines
1.7 KiB
TypeScript
63 lines
1.7 KiB
TypeScript
import * as other from "@/utils/other";
|
|
import {ElMessage} from "element-plus";
|
|
import request, {CommonHeaderEnum, postData} from "@/utils/request";
|
|
|
|
const registerUrl = "/admin/register/user"
|
|
|
|
const logoutUrl = "/admin/token/logout"
|
|
|
|
export const login = (data: any) => {
|
|
return new Promise(resolve => {
|
|
const basicAuth = 'Basic ' + window.btoa(import.meta.env.VITE_OAUTH2_PASSWORD_CLIENT);
|
|
|
|
let encPassword = data.password;
|
|
if (import.meta.env.VITE_PWD_ENC_KEY) {
|
|
encPassword = other.encryption(data.password, import.meta.env.VITE_PWD_ENC_KEY);
|
|
}
|
|
|
|
data.grant_type = 'password';
|
|
data.scope = 'server';
|
|
|
|
request({
|
|
url: '/admin/oauth2/token',
|
|
method: 'post',
|
|
data: {...data, password: encPassword},
|
|
headers: {
|
|
skipToken: true,
|
|
Authorization: basicAuth,
|
|
'Content-Type': CommonHeaderEnum.FORM_CONTENT_TYPE,
|
|
},
|
|
}).then((res: any) => {
|
|
resolve(res.data ? res.data : res.response.data)
|
|
}).catch(err => {
|
|
resolve(err)
|
|
handleError(err)
|
|
})
|
|
})
|
|
};
|
|
|
|
export const register = (data: any) => {
|
|
return new Promise(resolve => {
|
|
postData(registerUrl, data).then(res => {
|
|
resolve(res.data)
|
|
}).catch(err => {
|
|
resolve(err)
|
|
handleError(err)
|
|
})
|
|
})
|
|
}
|
|
|
|
export function logout() {
|
|
return request({
|
|
url: logoutUrl,
|
|
method: "DELETE"
|
|
})
|
|
}
|
|
|
|
function handleError(err: any) {
|
|
if (err && err.msg) {
|
|
ElMessage.error(err.msg)
|
|
} else {
|
|
ElMessage.error('系统异常请联系管理员')
|
|
}
|
|
} |