tenantApi.ts 1.99 KB
import {getPageData} from '../base';
import {
  SendResetPasswordEmailMsg,
  TenantAdminPageRequestParams,
  TenantDTO,
  TenantPageRequestParams,
  TenantRequestDTO, UserDTO
} from './tenantInfo';
import {defHttp} from "/@/utils/http/axios";

enum Api {
  userPage = '/user/page',
  tenantPage = '/admin/tenant/page',
  saveTenantAdmin = '/user/saveTenantAdmin',
  updateOrCreateTenant = "/admin/tenant/updateOrCreateTenant",
  deleteTenant = "/admin/tenant",
  resetTenantAdminPassword = "/tenant/resetPassword/",
  sendMessageOrEmail = "/tenant/sendRestPasswordMsg",
  deleteTenantAdmin = '/admin/user/deleteTenantAdmin',
  getTenantRoles="/admin/tenant/roles/",
}

export function getTenantPage(params: TenantPageRequestParams) {
  return getPageData<TenantDTO>(params, Api.tenantPage);
}

export function getTenantAdminPage(params: TenantAdminPageRequestParams) {
  return getPageData<UserDTO>(params, Api.userPage);
}

export async function saveTenantAdmin(params: UserDTO) {
  await defHttp.post(
    {
      params: params,
      url: Api.saveTenantAdmin
    }
  );
}

export async function updateOrCreateTenant(params: TenantRequestDTO) {
  await defHttp.post(
    {
      params: params,
      url: Api.updateOrCreateTenant
    }
  );
}

export async function deleteTenant(tenantIds: Array<string>) {
  await defHttp.delete(
    {
      data: tenantIds,
      url: Api.deleteTenant
    }
  );
}

export async function deleteTenantAdmin(adminIds: Array<string>) {
  await defHttp.delete(
    {
      data: adminIds,
      url: Api.deleteTenantAdmin
    }
  );
}

export async function resetPassword(params: string) {
  await defHttp.post(
    {
      url: Api.resetTenantAdminPassword + params
    }
  );
}

export async function sendMessageOrEmail(params: SendResetPasswordEmailMsg) {
  await defHttp.post(
    {
      params: params,
      url: Api.sendMessageOrEmail
    }
  );
}

export function getTenantRoles(tenantCode:string){
  return defHttp.get(
    {
      params:tenantCode,
      url:Api.getTenantRoles
    }
  );
}