private void salvarBtnActionPerformed( java.awt.event.ActionEvent evt) { // GEN-FIRST:event_salvarBtnActionPerformed String nome = TextField_Nome.getText(); String sobrenome = TextField_Sobrenome.getText(); String rg = TextField_RG.getText(); String cpf = TextField_CPF.getText(); String telefone = TextField_Telefone.getText(); String senha = PasswordField_Senha.getText(); if ("".equals(nome) || "".equals(sobrenome) || "".equals(rg) || "".equals(cpf) || "".equals(telefone) || "".equals(senha)) { JOptionPane.showMessageDialog(null, "Por favor, preencha todos os campos."); } else { int cargo = 0; int nivel = 0; List<Departamento> dl = List_Departamentos.getSelectedValuesList(); nivel = Integer.parseInt((String) ComboBox_Nivel.getSelectedItem()); Departamento d = (Departamento) ComboBox_Departamento.getSelectedItem(); int departamento = d.getId(); Departamento ds = (Departamento) ComboBox_Departamentos.getSelectedItem(); int departamento_gerenciado = ds.getId(); FuncionarioDAO fd = new FuncionarioDAO(); // Verifica se é pra inserir ou fazer um update if (this.funcionarioId > 0) { int idFuncionario = this.funcionarioId; FuncionarioDepartamentoDAO fdd = new FuncionarioDepartamentoDAO(); fdd.removerFuncionarioDepartamentoDeFuncionario(this.funcionarioId); if (ComboBox_Cargo.getSelectedItem().equals("Diretor")) { cargo = 1; Diretor f = new Diretor(nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); fd.alterarFuncionario(this.funcionarioId, f); if (idFuncionario > 0) { f.setId(idFuncionario); // fdd = new FuncionarioDepartamentoDAO(); fdd.inserirFuncionarioDepartamento(dl, f); } } else if (ComboBox_Cargo.getSelectedItem().equals("Gerente")) { cargo = 2; Gerente f = new Gerente(nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); fd.alterarFuncionario(this.funcionarioId, f); if (idFuncionario > 0) { f.setId(idFuncionario); // FuncionarioDepartamentoDAO fdd = new // FuncionarioDepartamentoDAO(); List<Departamento> dll = new ArrayList<Departamento>(); dll.add(ds); fdd.inserirFuncionarioDepartamento(dll, f); } } else if (ComboBox_Cargo.getSelectedItem().equals("Analista")) { cargo = 3; Analista f = new Analista(nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); fd.alterarFuncionario(this.funcionarioId, f); } else if (ComboBox_Cargo.getSelectedItem().equals("Programador")) { cargo = 4; Programador f = new Programador( nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); fd.alterarFuncionario(this.funcionarioId, f); } else { cargo = 5; nivel = 1; AuxiliarDeLimpeza f = new AuxiliarDeLimpeza( nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); fd.alterarFuncionario(this.funcionarioId, f); } if (idFuncionario > 0) { JOptionPane.showMessageDialog(null, "Usuário alterado com sucesso."); setVisible(false); dispose(); } else { JOptionPane.showMessageDialog(null, "Houve um erro ao alterar funcionario."); } } else { int idFuncionario = 0; if (ComboBox_Cargo.getSelectedItem().equals("Diretor")) { cargo = 1; Diretor f = new Diretor(nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); idFuncionario = fd.inserirFuncionario(f); if (idFuncionario > 0) { f.setId(idFuncionario); FuncionarioDepartamentoDAO fdd = new FuncionarioDepartamentoDAO(); fdd.inserirFuncionarioDepartamento(dl, f); } } else if (ComboBox_Cargo.getSelectedItem().equals("Gerente")) { cargo = 2; Gerente f = new Gerente(nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); idFuncionario = fd.inserirFuncionario(f); if (idFuncionario > 0) { f.setId(idFuncionario); FuncionarioDepartamentoDAO fdd = new FuncionarioDepartamentoDAO(); List<Departamento> dll = new ArrayList<Departamento>(); dll.add(ds); fdd.inserirFuncionarioDepartamento(dll, f); } } else if (ComboBox_Cargo.getSelectedItem().equals("Analista")) { cargo = 3; Analista f = new Analista(nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); idFuncionario = fd.inserirFuncionario(f); } else if (ComboBox_Cargo.getSelectedItem().equals("Programador")) { cargo = 4; Programador f = new Programador( nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); idFuncionario = fd.inserirFuncionario(f); } else { cargo = 5; nivel = 1; AuxiliarDeLimpeza f = new AuxiliarDeLimpeza( nome, sobrenome, rg, cpf, telefone, cargo, nivel, departamento, senha); idFuncionario = fd.inserirFuncionario(f); } if (idFuncionario > 0) { JOptionPane.showMessageDialog(null, "Usuário inserido com sucesso."); setVisible(false); dispose(); } else { JOptionPane.showMessageDialog(null, "Houve um erro ao inserir funcionario."); } } } } // GEN-LAST:event_salvarBtnActionPerformed