Boa tarde galera do fórum guj, bom vamos direto ao assunto.
Preciso de um método que ao clicar num botão ele dispara um valor para o banco que bloqueia o usuário, tipo, tenho um campo do tipo int Ativado no banco onde 0 é bloquear e 1 ativar então preciso de um método que grave 0 quando clicar em bloquear ou 1 quando clicar em desbloquear.
Estava pensando no seguinte, mas não sei se está certo quando ao Dao.
no Beam eu inicializei duas variáveis uma recebendo 0 e ou recebendo 1, assim:
private int bloquear = 0;
private int desbloquear = 1;
depois foi só montar o método dentro do Beam mesmo um para bloquear e outro para desbloquear assim:
publicvoidbloquear(){FacesContextcontext=FacesContext.getCurrentInstance();usuario.setAtivado(bloquear);booleanresultado=dao.bloqDesbloq(usuario);if(resultado){usuario=newUsuario();context.addMessage(null,newFacesMessage("Usuário bloqueado com sucesso!"));}else{context.addMessage(null,newFacesMessage("Falha ao bloquear usuário!"));}}publicvoiddesbloquear(){FacesContextcontext=FacesContext.getCurrentInstance();usuario.setAtivado(desbloquear);booleanresultado=dao.bloqDesbloq(usuario);if(resultado){usuario=newUsuario();context.addMessage(null,newFacesMessage("Usuário desbloqueado com sucesso!"));}else{context.addMessage(null,newFacesMessage("Falha ao desbloquear usuário!"));}}
Caso alguém tenha uma forma de melhorar o código será bem vindo.
Agradecido.
pcdsjr
Você pode deixar seu código com uma variável a menos: