/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package controllerTeste;
import controller.operating.Strings;
import daoTeste.EmpresaDAO;
import javax.swing.JOptionPane;
import model.Empresa;
/**
*
* @author aluno
*/
public class EmpresaController {
private Empresa empresa;
private EmpresaDAO empresaDAO;
private PessoaController pessoaCtrl;
private EnderecoController enderecoCtrl;
public EmpresaController() {
this.empresa = new Empresa();
this.empresaDAO = new EmpresaDAO();
this.pessoaCtrl = new PessoaController();
this.enderecoCtrl = new EnderecoController();
}
public String getNovoCodigo() {
String novoCodigo = "0";
empresaDAO = new EmpresaDAO();
int codigo = empresaDAO.getMaiorCodigo() + 1;
novoCodigo = String.valueOf(codigo);
return novoCodigo;
}
public Empresa getEmpresa(String codigo) {
empresa = empresaDAO.getEmpresa(codigo);
return empresa;
}
public boolean atualizar(Empresa pEmpresa) {
boolean atualizou = false;
empresa = pEmpresa;
pessoaCtrl = new PessoaController();
if(pessoaCtrl.atualizar(empresa)){
if(empresaDAO.atualizar(empresa)){
enderecoCtrl = new EnderecoController();
if(enderecoCtrl.atualizar(empresa.getEndereco())){
atualizou = true;
}else{
JOptionPane.showMessageDialog(null, "Atualizar Empresa " + Strings.mensagemErroProcesso, Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
pessoaCtrl.excluir(empresa);
empresaDAO.excluir(String.valueOf(empresa.getCodigoPessoa()));
}
}else{
JOptionPane.showMessageDialog(null, "Atualizar Empresa " + Strings.mensagemErroProcesso, Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
pessoaCtrl.excluir(empresa);
}
}
return atualizou;
}
public boolean salvar(Empresa pEmpresa) {
boolean salvou = false;
empresa = pEmpresa;
pessoaCtrl = new PessoaController();
if(pessoaCtrl.salvar(empresa)){
if(empresaDAO.salvar(empresa)){
enderecoCtrl = new EnderecoController();
if(enderecoCtrl.salvar(empresa.getEndereco())){
salvou = true;
}else{
JOptionPane.showMessageDialog(null, "Salvar Empresa " + Strings.mensagemErroProcesso, Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
pessoaCtrl.excluir(empresa);
empresaDAO.excluir(String.valueOf(empresa.getCodigoPessoa()));
}
}else{
JOptionPane.showMessageDialog(null, "Salvar Empresa " + Strings.mensagemErroProcesso, Strings.tituloMessageErro, JOptionPane.ERROR_MESSAGE);
pessoaCtrl.excluir(empresa);
}
}
return salvou;
}
public boolean excluir(String codigo) {
boolean excluiu = false;
if(empresaDAO.excluir(codigo)){
excluiu = true;
}
return excluiu;
}
}