Exemple #1
0
 public function obterCliente($where = null, $array = false)
 {
     $wSql = array();
     try {
         $sql = "SELECT pessoa.id as pessoa_id, pessoa.nome, pessoa.idade, pessoa.data_nascimento," . "pessoa.cpf, pessoa.rg, pessoa.nome_mae, pessoa.sexo, pessoa.telefone," . "pessoa.celular, pessoa.email, pessoa.endereco, pessoa.cidade_id," . "pessoa.bairro, cliente.id, cliente.senha FROM cliente " . "INNER JOIN pessoa ON (cliente.pessoa_id = pessoa.id) ";
         if ($where == null) {
             $result = $this->database()->fetchRowMany($sql);
         } else {
             if (array_key_exists('email', $where)) {
                 array_push($wSql, "email = :email");
             }
             if (array_key_exists('senha', $where)) {
                 array_push($wSql, "senha = :senha");
             }
             if (array_key_exists('id', $where)) {
                 array_push($wSql, "cliente.id = :id");
             }
             if (array_key_exists('nome', $where)) {
                 array_push($wSql, "nome = :nome");
             }
             if (array_key_exists('cpf', $where)) {
                 array_push($wSql, "cpf = :cpf");
             }
             if (count($wSql) >= 1) {
                 $wWher = " WHERE " . implode(" AND ", $wSql);
                 $sql .= $wWher;
             }
             $result = $this->database()->fetchRow($sql, $where);
         }
         if ($array) {
             return $result;
         } elseif ($result) {
             $cliente = new Cliente();
             $cliente->setId($result['id']);
             $cliente->setNome($result['nome']);
             $cliente->setIdade($result['idade']);
             $cliente->setData_nascimento($result['data_nascimento']);
             $cliente->setCpf($result['cpf']);
             $cliente->setRg($result['rg']);
             $cliente->setNome_mae($result['nome_mae']);
             $cliente->setSexo($result['sexo']);
             $cliente->setTelefone($result['telefone']);
             $cliente->setCelular($result['celular']);
             $cliente->setEmail($result['email']);
             $cliente->setEndereco($result['endereco']);
             $cliente->setCidade_id($result['cidade_id']);
             $cliente->setSenha($result['senha']);
             return $cliente;
         } else {
             return false;
         }
     } catch (\Simplon\Mysql\MysqlException $ex) {
         return $ex->getMessage();
     }
 }
Exemple #2
0
 function salvarCliente()
 {
     $cliente = new Cliente();
     $erro = '';
     if ($this->getPost('id')) {
         $cliente->setId($this->getPost('id'));
     }
     $cliente->setNome($this->getPost('nome'));
     $cliente->setIdade($this->getPost('idade'));
     $sexo = $this->getPost('sexo') == 'Masculino' ? 'M' : 'F';
     $cliente->setSexo($sexo);
     $cliente->setData_nascimento($this->getPost('data_nascimento'));
     $cliente->setNome_mae($this->getPost('nome_mae'));
     $cpf = $this->getPost('cpf');
     //        if (!Utils::validaCPF($cpf)) {
     //            $erro .= "CPF inválido.";
     //        } else {
     $cliente->setCpf($cpf);
     //        }
     $cliente->setRg($this->getPost('rg'));
     $email = $this->getPost('email');
     //        if (!$this->getPost('id') && $this->emailExist($email)) {
     //            $erro .= "E-mail já esta sendo utilizado.";
     //        } else {
     $cliente->setEmail($email);
     //        }
     $cliente->setCelular($this->getPost('celular'));
     $cliente->setTelefone($this->getPost('telefone'));
     if ($this->getPost('cidade_id') == "0") {
         $erro .= "Cidade deve ser informada.";
     }
     $cliente->setSenha($this->getPost('senha'));
     $cliente->setCidade_id($this->getPost('cidade_id'));
     $cliente->setBairro($this->getPost('bairro'));
     $cliente->setEndereco($this->getPost('endereco'));
     $clienteS = serialize($cliente);
     if (strlen($erro) > 0) {
         $this->redirect($this->UrlBuilder()->doAction('cliente', array('errorMsg' => $erro, 'adicionar' => true, 'clienteS' => $clienteS)));
     }
     $clienteDao = new ClienteDao($cliente);
     if ($this->getPost('id')) {
         if ($clienteDao->editar(array('id' => $this->getPost('id')))) {
             $successMsg = "Cliente atualizada com sucesso!";
             if (SessionHandler::checkSession('usuario')) {
                 $this->redirect($this->UrlBuilder()->doAction('cliente', array('admin' => TRUE, 'successMsg' => $successMsg)));
             }
             $this->redirect($this->UrlBuilder()->doAction('cliente', array('successMsg' => $successMsg)));
         } else {
             $errorMsg = "Cliente não pode ser salvo!";
             $this->redirect($this->UrlBuilder()->doAction('cliente', array('adicionar' => true, 'errorMsg' => $clienteDao->getErro(), 'clienteS' => $clienteS)));
         }
     } else {
         if ($idcliente = $clienteDao->salvar()) {
             if (SessionHandler::checkSession('usuario')) {
                 $successMsg = "Cliente salvo com sucesso!";
                 $this->redirect($this->UrlBuilder()->doAction('cliente', array('successMsg' => $successMsg)));
             }
             $successMsg = "Cliente salvo com sucesso!";
             $where = array('id' => $idcliente);
             $clienteDao = new ClienteDao();
             $cliente = $clienteDao->obterCliente($where);
             if ($cliente instanceof Cliente) {
                 $session = array('senha' => $cliente->getSenha(), 'email' => $cliente->getEmail());
             }
             SessionHandler::createSession('cliente', $session);
             $this->redirect($this->UrlBuilder()->doAction('index'));
         } else {
             if (SessionHandler::checkSession('usuario')) {
                 $errorMsg = "Problemas ao salvar cliente!";
                 $this->redirect($this->UrlBuilder()->doAction('cliente', array('errorMsg' => $errorMsg)));
             }
             $errorMsg = "Cliente não pode ser salvo!";
             $this->redirect($this->UrlBuilder()->doAction('index'));
         }
     }
 }