import { Entity } from "../entity"; import { Empresa } from "../empresa"; export class Setup { public database: Database; constructor(json?:any) { json = json || {} this.database = json.database || new Database() } } export declare class RevendaCliente { _id: string nome: string } export class Database { public dump: string; public name: string; constructor(json?: any) { json = json || {} this.dump = json.dump || '' this.name = json.name || '' } } export class RequesterCliente extends Entity { public setup: Setup; public empresas: Array ; public dia_vencimento: number; public email: string; public nome: string; public data_vinculo: string; public observacao: string; public aprovado: boolean public estado: 'AGUARDANDO ANALISE' | 'AGUARDANDO APROVACAO' | 'EM ANALISE' | 'APROVADO' | 'CANCELADO' | 'CANCELAMENTO SOLICITADO' public revenda: RevendaCliente public suspenso: boolean = false public isRevenda: boolean = false constructor(json?: any, generateId: boolean = false) { super(json, generateId); json = json || {}; this.dia_vencimento = json && json.dia_vencimento || ''; this.email = json && json.email || ''; this.nome = json && json.nome || ''; this.aprovado = json && json.aprovado || false this.empresas = json && json.empresas && this.createEmpresasDomain(json.empresas) || new Array(); this.data_vinculo = json && json.data_vinculo || ''; this.observacao = json && json.obsersavacao || ''; this.setup = json && json.setup || new Setup() this.estado = json && json.estado || 'AGUARDANDO ANALISE' this.revenda = json && json.revenda || {} as RevendaCliente this.suspenso = json.cancelado || false this.isRevenda = json.isRevenda || false } private createEmpresasDomain(empresas: Array ): Array { return empresas.map(empresa => new Empresa(empresa)); } }