Example #1
0
 public function cadastroPost()
 {
     if (!$this->getRequisicao()->isPost()) {
         $this->redireciona("/animal/cadastro");
     }
     $nPeso = Utils::stringToFloat($this->getRequisicao()->getPost('peso'));
     $oAnimal = new Model();
     $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());
     $sDestino = null;
     if ($this->getRequisicao()->isSetPost("codigo_cliente") && !empty($this->getRequisicao()->getPost("codigo_cliente"))) {
         $iCodigoCliente = $this->getRequisicao()->getPost("codigo_cliente");
         $oAnimal->setCliente(new Cliente($iCodigoCliente));
         $sDestino = "/cliente/ver/{$iCodigoCliente}";
     }
     $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_nascimento" => $sDataNascimento, "data_cadastro" => $sDataCadastro));
         $oValidador->validar();
         if (!empty($aErroDatas)) {
             throw new Exception(implode("<br>", $aErroDatas));
         }
         $oDao = new Entidade();
         if (!$oDao->salvar($oAnimal)) {
             throw new Exception("Houve um erro ao tentar inserir o animal. Contate suporte.");
         }
         $this->getSessao()->setMensagemSucesso("Animal adicionado com sucesso.");
         if (empty($sDestino)) {
             $sDestino = "/cliente/cadastro?animal={$oAnimal->getCodigo()}";
         }
         $this->redireciona($sDestino);
     } catch (Exception $e) {
         $this->getSessao()->setObjeto("animal", $oAnimal);
         $this->getSessao()->setMensagemErro($e->getMessage());
         $this->redireciona("/animal/cadastro");
     }
 }
Example #2
0
 public function cadastroPost()
 {
     if (!$this->getRequisicao()->isPost()) {
         $this->redireciona("/animal/cadastro");
     }
     try {
         $nSaldoDevedor = Utils::stringToFloat($this->getRequisicao()->getPost('saldo_devedor'));
         if (empty($nSaldoDevedor)) {
             $nSaldoDevedor = 0;
         }
         $sDDD1 = $this->getRequisicao()->getPost("ddd1");
         $sDDD2 = $this->getRequisicao()->getPost("ddd2");
         $sDDD3 = $this->getRequisicao()->getPost("ddd3");
         $sDDD4 = $this->getRequisicao()->getPost("ddd4");
         $sDDD5 = $this->getRequisicao()->getPost("ddd5");
         $sTelefone = $sDDD1 . str_replace("-", "", $this->getRequisicao()->getPost("telefone"));
         $sTelefone2 = !empty($this->getRequisicao()->getPost("telefone2")) ? $sDDD2 . str_replace("-", "", $this->getRequisicao()->getPost("telefone2")) : null;
         $sTelefone3 = !empty($this->getRequisicao()->getPost("telefone3")) ? $sDDD3 . str_replace("-", "", $this->getRequisicao()->getPost("telefone3")) : null;
         $sTelefone4 = !empty($this->getRequisicao()->getPost("telefone4")) ? $sDDD4 . str_replace("-", "", $this->getRequisicao()->getPost("telefone4")) : null;
         $sTelefone5 = !empty($this->getRequisicao()->getPost("telefone5")) ? $sDDD5 . str_replace("-", "", $this->getRequisicao()->getPost("telefone5")) : null;
         $oCliente = new Model();
         $oCliente->setNome($this->getRequisicao()->getPost("nome"));
         $oCliente->setNomeSecundario($this->getRequisicao()->getPost("nome_secundario"));
         $oCliente->setEndereco($this->getRequisicao()->getPost("endereco"));
         $oCliente->setBairro($this->getRequisicao()->getPost("bairro"));
         $oCliente->setTelefone($sTelefone);
         $oCliente->setTelefone2($sTelefone2);
         $oCliente->setTelefone3($sTelefone3);
         $oCliente->setTelefone4($sTelefone4);
         $oCliente->setTelefone5($sTelefone5);
         $oCliente->setObservacao($this->getRequisicao()->getPost("observacao"));
         $oCliente->setSaldoDevedor($nSaldoDevedor);
         $oCliente->setUsuario($this->getSessao()->getUsuarioLogado()->getCodigo());
         $oValidador = new Validador();
         $oDaoCliente = new Entidade();
         $oDaoCliente->iniciaTransacao();
         $oValidador->setDados(array('cliente' => $oCliente));
         $oValidador->validar();
         if (!$oDaoCliente->salvar($oCliente)) {
             throw new Exception("Houve um erro ao tentar inserir o cliente. Contate suporte.");
         }
         $sDestino = "/cliente/cadastro";
         if ($this->getRequisicao()->isSetPost("codigo_animal") && !empty($this->getRequisicao()->getPost("codigo_animal"))) {
             $iCodigoAnimal = $this->getRequisicao()->getPost("codigo_animal");
             $oAnimal = new Animal($iCodigoAnimal);
             $oAnimal->setCliente($oCliente);
             $oDaoAnimal = new EntidadeAnimal();
             if (!$oDaoAnimal->salvar($oAnimal)) {
                 throw new Exception("Houve um erro ao tentar atualizar animal. Contate suporte.");
             }
             $sDestino = "/cliente/ver/{$oCliente->getCodigo()}";
         }
         $oDaoCliente->encerraTransacao(false);
         $this->getSessao()->setMensagemSucesso("Cliente adicionado com sucesso.");
         $this->redireciona($sDestino);
     } catch (Exception $e) {
         $oDaoCliente->encerraTransacao(true);
         $this->getSessao()->setObjeto("cliente", $oCliente);
         $this->getSessao()->setMensagemErro($e->getMessage());
         $this->redireciona("/cliente/cadastro");
     }
 }