Example #1
0
 public function validar()
 {
     $aMensagemErro = array();
     if (empty($this->oAnimal->getNome())) {
         $aMensagemErro[] = "O campo Nome do animal é de preenchimento obrigatório.";
     }
     if (empty($this->oAnimal->getEspecie())) {
         $aMensagemErro[] = "O campo Espécie do animal é de preenchimento obrigatório.";
     }
     if (empty($this->oAnimal->getRaca())) {
         $aMensagemErro[] = "O campo Raça do animal é de preenchimento obrigatório.";
     }
     if (empty($this->oAnimal->getPelo())) {
         $aMensagemErro[] = "O campo Pelo do animal é de preenchimento obrigatório.";
     }
     if (empty($this->oAnimal->getPelagem())) {
         $aMensagemErro[] = "O campo Pèlagem do animal é de preenchimento obrigatório.";
     }
     if (empty($this->oAnimal->getPorte())) {
         $aMensagemErro[] = "O campo Porte do animal é de preenchimento obrigatório.";
     }
     if (!is_numeric($this->oAnimal->getPeso())) {
         $aMensagemErro[] = "O campo Peso deve ser preenchido com valor numérico.";
     }
     if ($this->oAnimal->getPeso() <= 0) {
         $aMensagemErro[] = "O campo Peso do animal é de preenchimento obrigatório e deve ser maior que zero.";
     }
     if (empty($this->sDataNascimento)) {
         $aMensagemErro[] = "O campo Nascimento do animal é de preenchimento obrigatório.";
     }
     $aDataNascimento = explode("-", $this->sDataNascimento);
     if (count($aDataNascimento) != 3 || !checkdate($aDataNascimento[1], $aDataNascimento[2], $aDataNascimento[0])) {
         $aMensagemErro[] = "O campo Nascimento deve ser uma data válida.";
     } else {
         $this->oAnimal->setNascimento(new DateTime($this->sDataNascimento));
     }
     if (empty($this->sDataCadastro)) {
         $aMensagemErro[] = "O campo Cadastro do animal é de preenchimento obrigatório.";
     }
     $aDataCadastro = explode("-", $this->sDataCadastro);
     if (count($aDataCadastro) != 3 || !checkdate($aDataCadastro[1], $aDataCadastro[2], $aDataCadastro[0])) {
         $aMensagemErro[] = "O campo Cadastro deve ser uma data válida.";
     } else {
         $this->oAnimal->setCadastro(new DateTime($this->sDataCadastro));
     }
     if (empty($this->oAnimal->getSexo())) {
         $aMensagemErro[] = "O campo Sexo do animal é de preenchimento obrigatório.";
     }
     if (!empty($aMensagemErro)) {
         throw new Exception(implode("<br>", $aMensagemErro));
     }
 }
Example #2
0
 /**
  * @param $oStd
  * @return Model
  */
 private function preencheAnimal($oStd)
 {
     $oAnimal = new Model();
     $oAnimal->setCodigo($oStd->id);
     $oAnimal->setNome($oStd->nome);
     $oAnimal->setEspecie($oStd->especie);
     $oAnimal->setRaca($oStd->raca);
     $oAnimal->setPelo($oStd->pelo);
     $oAnimal->setPelagem($oStd->pelagem);
     $oAnimal->setPorte($oStd->porte);
     $oAnimal->setPeso($oStd->peso);
     $oAnimal->setNascimento(new DateTime($oStd->nascimento));
     $oAnimal->setCadastro(new DateTime($oStd->cadastro));
     $oAnimal->setCastrado($oStd->castrado);
     $oAnimal->setClientePacote($oStd->cliente_pacote);
     $oAnimal->setObservacoes($oStd->observacoes);
     $oAnimal->setSexo($oStd->sexo);
     return $oAnimal;
 }
Example #3
0
 public function editarPost()
 {
     if (!$this->getRequisicao()->isPost()) {
         $this->redireciona("/animal/editar/");
     }
     $nPeso = Utils::stringToFloat($this->getRequisicao()->getPost('peso'));
     $oAnimal = new Model($this->getRequisicao()->getPost("id"));
     $oAnimal->setNome($this->getRequisicao()->getPost('nome'));
     $oAnimal->setEspecie($this->getRequisicao()->getPost('especie'));
     $oAnimal->setRaca($this->getRequisicao()->getPost('raca'));
     $oAnimal->setPelo($this->getRequisicao()->getPost('pelo'));
     $oAnimal->setPelagem($this->getRequisicao()->getPost('pelagem'));
     $oAnimal->setPorte($this->getRequisicao()->getPost('porte'));
     $oAnimal->setPeso($nPeso);
     $oAnimal->setObservacoes($this->getRequisicao()->getPost('observacoes'));
     $oAnimal->setSexo($this->getRequisicao()->getPost('sexo'));
     $oAnimal->setCastrado($this->getRequisicao()->isSetPost('castrado'));
     $oAnimal->setClientePacote($this->getRequisicao()->isSetPost('temPacote'));
     $oAnimal->setUsuario($this->getSessao()->getUsuarioLogado()->getCodigo());
     $sDataNascimento = implode("-", array_reverse(explode("/", $this->getRequisicao()->getPost('nascimento'))));
     $sDataCadastro = implode("-", array_reverse(explode("/", $this->getRequisicao()->getPost('cadastro'))));
     try {
         $oValidador = new Validador();
         $oValidador->setDados(array('animal' => $oAnimal, 'data_cadastro' => $sDataCadastro, 'data_nascimento' => $sDataNascimento));
         $oValidador->validar();
         $oAnimal->setCadastro(new DateTime($sDataCadastro));
         $oAnimal->setNascimento(new DateTime($sDataNascimento));
         if (empty($oAnimal->getCodigo())) {
             throw new Exception("Animal não identificado para a edição.");
         }
         if (!empty($aErroDatas)) {
             throw new Exception(implode("<br>", $aErroDatas));
         }
         $oDao = new Entidade();
         if (!$oDao->salvar($oAnimal)) {
             throw new Exception("Houve um erro ao tentar atualizar o animal. Contate suporte.");
         }
         $this->getSessao()->setMensagemSucesso("Animal atualizado com sucesso.");
         $this->redireciona("/animal/lista");
     } catch (Exception $e) {
         $this->getSessao()->setObjeto("animal", $oAnimal);
         $this->getSessao()->setMensagemErro($e->getMessage());
         $this->redireciona("/animal/editar/{$oAnimal->getCodigo()}");
     }
 }