public function persist(AbstractCliente $cliente) { if ($cliente instanceof ClientePF) { $this->cliente = new ClientePF($cliente->getNome(), $cliente->getNumDoc(), $cliente->getEndereco(), $cliente->getIdade()); } if ($cliente instanceof ClientePJ) { $this->cliente = new ClientePJ($cliente->getNome(), $cliente->getNumDoc(), $cliente->getEndereco(), $cliente->getAnoFundacao()); } }
/** * ClientePF constructor. */ public function __construct($nome, $numDoc, $endereco, $idade) { parent::__construct($nome, $numDoc, $endereco); $this->idade = $idade; $this->tipoCliente = "Pessoa Física"; $this->estrelasCliente = 1; // clientes PF te no mínimo 1 estrela }
/** * ClientePJ constructor. */ public function __construct($nome, $numDoc, $endereco, $anoFundacao) { parent::__construct($nome, $numDoc, $endereco); $this->anoFundacao = $anoFundacao; $this->tipoCliente = "Pessoa Jurídica"; $this->estrelasCliente = 2; // clientes PJ tem no mínimo 2 estrelas }