兰宝车间质量管理系统-前端
疯狂的狮子Li
2025-01-20 5e440a7dc434c43eb828fa62cf9c12b0078b8565
src/api/login.ts
@@ -3,79 +3,111 @@
import { LoginData, LoginResult, VerifyCodeResult, TenantInfo } from './types';
import { UserInfo } from '@/api/system/user/types';
// pc端固定客户端授权id
const clientId = import.meta.env.VITE_APP_CLIENT_ID;
/**
 * @param data {LoginData}
 * @returns
 */
export function login(data: LoginData): AxiosPromise<LoginResult> {
   const params = {
      tenantId: data.tenantId,
      username: data.username.trim(),
      password: data.password,
      code: data.code,
      uuid: data.uuid
   };
   return request({
      url: '/auth/login',
      headers: {
         isToken: false
      },
      method: 'post',
      data: params
   });
  const params = {
    ...data,
    clientId: data.clientId || clientId,
    grantType: data.grantType || 'password'
  };
  return request({
    url: '/auth/login',
    headers: {
      isToken: false,
      isEncrypt: true,
      repeatSubmit: false
    },
    method: 'post',
    data: params
  });
}
// 注册方法
export function register(data: any) {
   return request({
      url: '/auth/register',
      headers: {
         isToken: false
      },
      method: 'post',
      data: data
   });
  const params = {
    ...data,
    clientId: clientId,
    grantType: 'password'
  };
  return request({
    url: '/auth/register',
    headers: {
      isToken: false,
      isEncrypt: true,
      repeatSubmit: false
    },
    method: 'post',
    data: params
  });
}
/**
 * 注销
 */
export function logout() {
   return request({
      url: '/auth/logout',
      method: 'post'
   });
  if (import.meta.env.VITE_APP_SSE === 'true') {
    request({
      url: '/resource/sse/close',
      method: 'get'
    });
  }
  return request({
    url: '/auth/logout',
    method: 'post'
  });
}
/**
 * 获取验证码
 */
export function getCodeImg(): AxiosPromise<VerifyCodeResult> {
   return request({
      url: '/code',
      headers: {
         isToken: false
      },
      method: 'get',
      timeout: 20000
   });
  return request({
    url: '/auth/code',
    headers: {
      isToken: false
    },
    method: 'get',
    timeout: 20000
  });
}
/**
 * 第三方登录
 */
export function callback(data: LoginData): AxiosPromise<any> {
  const LoginData = {
    ...data,
    clientId: clientId,
    grantType: 'social'
  };
  return request({
    url: '/auth/social/callback',
    method: 'post',
    data: LoginData
  });
}
// 获取用户详细信息
export function getInfo(): AxiosPromise<UserInfo> {
   return request({
      url: '/system/user/getInfo',
      method: 'get'
   });
  return request({
    url: '/system/user/getInfo',
    method: 'get'
  });
}
// 获取租户列表
export function getTenantList(): AxiosPromise<TenantInfo> {
   return request({
      url: '/auth/tenant/list',
      headers: {
         isToken: false
      },
      method: 'get'
   });
export function getTenantList(isToken: boolean): AxiosPromise<TenantInfo> {
  return request({
    url: '/auth/tenant/list',
    headers: {
      isToken: isToken
    },
    method: 'get'
  });
}