/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package dao;
import controller.operating.Strings;
import java.util.ArrayList;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import model.Pessoa;
/**
*
* @author clayton
*/
public class PessoaDAO {
public Pessoa getPessoa(String codigo) {
Connection conexao = Conexao.getSqlConnection();
Pessoa pessoa = new Pessoa();
try {
Statement statement = conexao.createStatement();
statement.executeQuery("SELECT * FROM pessoa WHERE codigoPessoa = " + codigo);
ResultSet resultSet = statement.getResultSet();
while (resultSet.next()) {
pessoa = new Pessoa();
pessoa.setCodigoPessoa(resultSet.getInt("codigoPessoa"));
pessoa.setNome(resultSet.getString("nomePessoa"));
pessoa.setEmail(resultSet.getString("email"));
pessoa.setTelefone(resultSet.getString("telefone"));
pessoa.setCelular(resultSet.getString("celular"));
}
resultSet.close();
statement.close();
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, Strings.getMensagemErroRecuperacao("Pessoa", erro.getMessage()), Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
}
return pessoa;
}
public int getMaiorCodigo() {
Connection conexao = Conexao.getSqlConnection();
int intCodigo = 0;
try {
Statement statement = conexao.createStatement();
statement.executeQuery("SELECT MAX(codigoPessoa) AS codigo FROM pessoa");
ResultSet resultSet = statement.getResultSet();
while (resultSet.next()) {
intCodigo = resultSet.getInt("codigo");
}
resultSet.close();
statement.close();
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, Strings.getMensagemErroNovoCodigo("Pessoa", erro.getMessage()), Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
}
return intCodigo;
}
public ArrayList<Pessoa> getPessoas() {
Connection conexao = Conexao.getSqlConnection();
ArrayList<Pessoa> listaDePessoas = new ArrayList<Pessoa>();
try {
Statement statement = conexao.createStatement();
statement.executeQuery("SELECT * FROM pessoa");
ResultSet resultSet = statement.getResultSet();
Pessoa pessoa;
while (resultSet.next()) {
pessoa = new Pessoa();
pessoa.setCodigoPessoa(resultSet.getInt("codigoPessoa"));
pessoa.setNome(resultSet.getString("nomePessoa"));
pessoa.setEmail(resultSet.getString("email"));
pessoa.setTelefone(resultSet.getString("telefone"));
pessoa.setCelular(resultSet.getString("celular"));
listaDePessoas.add(pessoa);
}
resultSet.close();
statement.close();
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, Strings.getMensagemErroRecuperacao("Pessoas", erro.getMessage()), Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
}
return listaDePessoas;
}
public boolean salvar(Pessoa pPessoa) {
Connection conexao = Conexao.getSqlConnection();
try {
Statement statement = conexao.createStatement();
String strSQL = "INSERT INTO pessoa " +
"(codigoPessoa, nomePessoa, email, telefone, celular) " +
"VALUES(" + pPessoa.getCodigoPessoa() + ", '" + pPessoa.getNome() +
"', '" + pPessoa.getEmail() + "', '" + pPessoa.getTelefone() +
"', '" + pPessoa.getCelular() + "')";
//System.out.println(strSQL);
statement.execute(strSQL);
statement.close();
return true;
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, Strings.getMensagemErroPersitencia("Pessoa", erro.getMessage()), Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
return false;
}
}
public boolean atualizar(Pessoa pPessoa) {
Connection conexao = Conexao.getSqlConnection();
try {
Statement statement = conexao.createStatement();
statement.execute("UPDATE pessoa " +
"SET nomePessoa = '" + pPessoa.getNome() +
"', email = '" + pPessoa.getEmail() +
"', telefone = '" + pPessoa.getTelefone() +
"', celular = '" + pPessoa.getCelular() +
"' WHERE codigoPessoa = " + pPessoa.getCodigoPessoa());
statement.close();
return true;
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, Strings.getMensagemErroEdicao("Pessoa", erro.getMessage()), Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
return false;
}
}
public boolean excluir(Pessoa pPessoa) {
Connection conexao = Conexao.getSqlConnection();
try {
Statement statement = conexao.createStatement();
statement.execute("DELETE FROM pessoa WHERE codigoPessoa = " + pPessoa.getCodigoPessoa());
statement.close();
return true;
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, Strings.getMensagemErroExclusao("Pessoa", erro.getMessage()), Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
return false;
}
}
}