bom eu tenho meu metodo na minha tela de cadastro:
public void cadastrar(){
String login = txtLogin.getText(), senha=txtSenha.getText(), confirm = confirmSenha.getText(), nome=txtNome.getText();
int matricula=Integer.parseInt(txtMatricula.getText());
int nComputador=Integer.parseInt(txtComputador.getText()),modem = Integer.parseInt(txtModem.getText()),impressora=Integer.parseInt(txtImpressora.getText()),monitor=Integer.parseInt(txtMonitor.getText());
Departamento setor1 = new Departamento(0, "setor1");
Departamento setor2 = new Departamento(1, "setor2");
Departamento setor3 = new Departamento(2, "setor3");
Departamento setor4 = new Departamento(4, "setor4");
departamentos.add(setor1);
departamentos.add(setor2);
departamentos.add(setor3);
departamentos.add(setor4);
obsDepartamentos = FXCollections.observableArrayList(departamentos);
cbDepart.setItems(obsDepartamentos);
Alerts alertar = new Alerts();
Usuario usuario = new Usuario(login,senha,nome,matricula);
Equipamentos equipamentos = new Equipamentos(nComputador,modem,impressora,monitor);
if (txtLogin.getText().trim().isEmpty() || txtSenha.getText().trim().isEmpty() || confirmSenha.getText().trim().isEmpty() || txtNome.getText().trim().isEmpty() || txtMatricula.getText().trim().isEmpty()|| txtComputador.getText().trim().isEmpty()){
alertar.alertCadastroVazio();
}else if (senha.equals(confirm)){
if (aFachada.getInstancia().incluirUsuario(usuario,equipamentos)) {
alertar.alertUsuarioCadastrado();
} else {
alertar.alertUsuarioNCadastrado();
}
}else{
alertar.alertSenhaDif();
}
}
e esse é a parte do combo box:
Departamento setor1 = new Departamento(0, "setor1");
Departamento setor2 = new Departamento(1, "setor2");
Departamento setor3 = new Departamento(2, "setor3");
Departamento setor4 = new Departamento(4, "setor4");
departamentos.add(setor1);
departamentos.add(setor2);
departamentos.add(setor3);
departamentos.add(setor4);
obsDepartamentos = FXCollections.observableArrayList(departamentos);
cbDepart.setItems(obsDepartamentos);
como eu conseguiria passar o departamento nesse codigo:
Alerts alertar = new Alerts(); Usuario usuario = new Usuario(login,senha,nome,matricula); Equipamentos equipamentos = new Equipamentos(nComputador,modem,impressora,monitor); if (txtLogin.getText().trim().isEmpty() || txtSenha.getText().trim().isEmpty() || confirmSenha.getText().trim().isEmpty() || txtNome.getText().trim().isEmpty() || txtMatricula.getText().trim().isEmpty()|| txtComputador.getText().trim().isEmpty()){ alertar.alertCadastroVazio(); }else if (senha.equals(confirm)){ if (aFachada.getInstancia().incluirUsuario(usuario,equipamentos)) { alertar.alertUsuarioCadastrado(); } else { alertar.alertUsuarioNCadastrado(); } }else{ alertar.alertSenhaDif(); }
mas eu não tou conseguindo imaginar como vou passar isso como parametro para meu outro metodo na minha classe DAO:
public void cadastrar(Usuario u, Equipamentos e, Departamento d) throws SQLException{
PreparedStatement equipamentos = con.prepareStatement("INSERT INTO equipamentos(numero_computador, numero_modem, numero_impressora, numero_monitor) VALUES(?,?,?,?)",PreparedStatement.RETURN_GENERATED_KEYS);
equipamentos.setInt(1, e.getNumero_computador());
equipamentos.setInt(2, e.getNumero_modem());
equipamentos.setInt(3, e.getNumero_impressora());
equipamentos.setInt(4, e.getNumero_monitor());
try {
con.setAutoCommit(false);
equipamentos.executeUpdate();
ResultSet resultEquip = equipamentos.getGeneratedKeys();
resultEquip.next();
Long idEquipGerado = resultEquip.getLong(1);
String cadastrarUsuario = "INSERT INTO USUARIO(idpermissao,login, senha, nome,matricula,online,idequipamento,iddepartamento) VALUES(3,?,?,?,?,0,?,?)";
PreparedStatement cadastrar = con.prepareStatement(cadastrarUsuario);
cadastrar.setString(1, u.getLogin());
cadastrar.setString(2,u.getSenha());
cadastrar.setString(3,u.getNome());
cadastrar.setInt(4,u.getMatricula());
cadastrar.setLong(5,idEquipGerado);
cadastrar.setInt(6,d.getId_departamento());
cadastrar.executeUpdate();
}catch(SQLException ex){
}
}
