tenantInfo.ts 1.78 KB
import {BaseQueryParams, BaseQueryRequest} from "../base";

export enum TenantStatusEnum {
  NORMAL = 'NORMAL',
  DISABLED = 'DISABLED',
  EXPIRED = 'EXPIRED',
}

export enum UserStatusEnum {
  NORMAL = 'NORMAL',
  DISABLED = 'DISABLED',
  EXPIRED = 'EXPIRED',
}

export interface TenantDTO {
  id: string;
  name: string;
  icon: string;
  tenantCode: string;
  enabled: boolean;
  description: string;
  defaultConfig: string;
  tenantExpireTime: string;
  createTime: string;
  tenantStatus: TenantStatusEnum;
}

export interface TenantRequestDTO {
  id?: string;
  icon?: string;
  name: string;
  enabled: boolean;
  description: string;
  tenantExpireTime?: string;
}

export interface TenantPageRequestParams extends BaseQueryParams {
  tenantName?: string;
}

export interface TenantAdminPageRequestParams extends BaseQueryParams {
  realName?: string;
  tenantCode: string;
}

export interface UserDTO {
  id: string;
  username: string;
  realName: string;
  phoneNumber: string;
  email: string;
  avatar: string;
  enabled: boolean;
  accountExpireTime: string;
  createTime: string;
  updateTime: string;
  userStatusEnum: UserStatusEnum
  hasPassword?: boolean;
}

export enum MessageTypeEnum {
  EMAIL_MESSAGE = 'EMAIL_MESSAGE',
  PHONE_MESSAGE = 'PHONE_MESSAGE'
}

export class SendResetPasswordEmailMsg {
  userId: string;
  messageTypeEnum: MessageTypeEnum;

  constructor(userId: string, msgType: MessageTypeEnum) {
    this.userId = userId;
    this.messageTypeEnum = msgType;
  }

}

export class TenantPageRequest extends BaseQueryRequest {
  tenantName: string | undefined;

  constructor(page: number = 1, pageSize: number = 10, tenantName?: string) {
    super(page, pageSize);
    this.tenantName = tenantName;
  }

  setTenantName(tenantName: string) {
    this.tenantName = tenantName;
  }
}