-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrepositorio_clientes.php
127 lines (91 loc) · 2.79 KB
/
repositorio_clientes.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?php
require 'database/conexao.php';
include 'cliente.class.php';
interface IRepositorioClientes {
public function cadastrarCliente($cliente);
public function removerCliente($cliente);
public function atualizarCliente($cliente);
public function buscarCliente($codigo);
public function getListaClientes($filtro);
}
class RepositorioClientesMySQL implements IRepositorioclientes {
private $conexao;
public function __construct()
{
$this->conexao = new Conexao("localhost","root","mysql","pipoo");
if ($this->conexao->conectar() == false)
{
echo "Erro " . mysqli_error();
}
}
public function cadastrarCliente($cliente)
{
$nome = $cliente->getNome();
$cpf = $cliente->getCPF();
$endereco = $cliente->getEndereco();
$data_cadastro = $cliente->getData_cadastro();
$saldo_devedor = $cliente->getSaldo_devedor();
$situacao = $cliente->getSituacao();
$sql = "INSERT INTO clientes (nome, codigo, cpf, endereco, data_cadastro,saldo_devedor,situacao) VALUES
('$nome','','$cpf','$endereco','$data_cadastro','$saldo_devedor','$situacao')";
$this->conexao->executarQuery($sql);
}
public function removerCliente($codigo)
{
$sql = " DELETE FROM clientes WHERE codigo='$codigo' ";
$this->conexao->executarQuery($sql);
}
public function atualizarCliente($cliente)
{
$nome = $cliente->getNome();
$codigo = $cliente->getCodigo();
$cpf = $cliente->getCPF();
$endereco = $cliente->getEndereco();
$data_cadastro = $cliente->getData_cadastro();
$saldo_devedor = $cliente->getSaldo_devedor();
$situacao = $cliente->getSituacao();
$sql = "UPDATE clientes SET nome='$nome',cpf='$cpf',
endereco='$endereco',saldo_devedor='$saldo_devedor',situacao='$situacao' WHERE codigo = '$codigo' ";
// echo $sql;
// die();
$this->conexao->executarQuery($sql);
}
public function buscarCliente($codigo)
{
$linha = $this->conexao->obtemPrimeiroRegistroQuery("SELECT * FROM clientes WHERE codigo='$codigo' ");
$cliente = new Cliente(
$linha['nome'],
$linha['codigo'],
$linha['cpf'],
$linha['endereco'],
$linha['data_cadastro'],
$linha['saldo_devedor'],
$linha['situacao']);
return $cliente;
}
public function getListaClientes($filtro)
{
if (isset($filtro))
{
$filtro = " WHERE situacao like '%$filtro%' ";
}
$sql = "SELECT * FROM clientes $filtro ";
//print_r($sql);
$listagem = $this->conexao->executarQuery($sql);
$arrayClientes = array();
while( $linha = mysqli_fetch_array($listagem)){
$cliente = new cliente(
$linha['nome'],
$linha['codigo'],
$linha['cpf'],
$linha['endereco'],
$linha['data_cadastro'],
$linha['saldo_devedor'],
$linha['situacao']);
array_push($arrayClientes, $cliente);
}
return $arrayClientes;
}
}
$repositorio = new RepositorioclientesMySQL();
?>