public void setFuncionario(int id) { FuncionarioDAO fd = new FuncionarioDAO(); Funcionario f = fd.consultarFuncionario(id); TextField_Nome.setText(f.getNome()); TextField_Sobrenome.setText(f.getSobrenome()); TextField_RG.setText(f.getRg()); TextField_CPF.setText(f.getCpf()); TextField_Telefone.setText(f.getTelefone()); PasswordField_Senha.setText(f.getSenha()); // Seta o departamento de acordo com o id DepartamentoDAO dd = new DepartamentoDAO(); Departamento d = dd.consultarDepartamento(f.getDepartamento()); for (int i = 0; i < ComboBox_Departamento.getItemCount(); i++) { Departamento dc = (Departamento) ComboBox_Departamento.getItemAt(i); if (dc.getId() == d.getId()) { ComboBox_Departamento.setSelectedIndex(i); } } if (f.getCargo() == 1) { // Seta o departamentos de acordo com o id FuncionarioDepartamentoDAO fdd = new FuncionarioDepartamentoDAO(); List<Departamento> dlist = fdd.consultarFuncionarioDepartamento(f.getId()); if (dlist.size() > 0) { int[] indices = new int[dlist.size()]; int c = 0; for (int i = 0; i < List_Departamentos.getModel().getSize(); i++) { Departamento dc = (Departamento) List_Departamentos.getModel().getElementAt(i); for (Departamento dg : dlist) { if (dc.getId() == dg.getId()) { indices[c] = i; c++; } } } List_Departamentos.setSelectedIndices(indices); } } else if (f.getCargo() == 2) { // Seta o departamento de acordo com o id FuncionarioDepartamentoDAO fdd = new FuncionarioDepartamentoDAO(); List<Departamento> dlist = fdd.consultarFuncionarioDepartamento(f.getId()); if (dlist.size() > 0) { Departamento dg = dlist.get(0); for (int i = 0; i < ComboBox_Departamentos.getItemCount(); i++) { Departamento dc = (Departamento) ComboBox_Departamentos.getItemAt(i); if (dc.getId() == dg.getId()) { ComboBox_Departamentos.setSelectedIndex(i); } } } } ComboBox_Nivel.setSelectedItem(new Integer(f.getNivel()).toString()); ComboBox_Cargo.setSelectedIndex(f.getCargo() - 1); }
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