Browse Source

Funciones login

master
Samuel Gamez 4 months ago
parent
commit
9e4bcd333d
  1. 99
      ProyectoInventario-war/src/java/xforce/seguridad/DemoBeanLogin.java
  2. 2
      ProyectoInventario-war/web/estados.xhtml
  3. 2
      ProyectoInventario-war/web/paises.xhtml
  4. 17
      ProyectoInventario-war/web/productoLista.xhtml
  5. 4
      ProyectoInventario-war/web/template/listas.xhtml

99
ProyectoInventario-war/src/java/xforce/seguridad/DemoBeanLogin.java

@ -41,6 +41,7 @@ public class DemoBeanLogin implements Serializable {
private String user; private String user;
private static String http = "pinchilink"; private static String http = "pinchilink";
private boolean permisos = false; private boolean permisos = false;
private boolean agregaciones = false;
public Usuarios getUsuarios() { public Usuarios getUsuarios() {
return usuarios; return usuarios;
@ -58,6 +59,14 @@ public class DemoBeanLogin implements Serializable {
this.rol = rol; this.rol = rol;
} }
public boolean isAgregaciones() {
return agregaciones;
}
public void setAgregaciones(boolean agregaciones) {
this.agregaciones = agregaciones;
}
public String getUser() { public String getUser() {
return user; return user;
} }
@ -102,7 +111,6 @@ public class DemoBeanLogin implements Serializable {
System.out.println(rol); System.out.println(rol);
httpSession.setAttribute(http, "true"); httpSession.setAttribute(http, "true");
permiso();
System.out.println(permisos); System.out.println(permisos);
usuarios = new Usuarios(); usuarios = new Usuarios();
return "productoLista.xhtml"; return "productoLista.xhtml";
@ -128,7 +136,7 @@ public class DemoBeanLogin implements Serializable {
} }
} }
public void verificarAcceso(String rolesRequeridos) { public void verificarAcceso(String rolesRequeridos, String nombreDeLaPagina) {
String[] roles = rolesRequeridos.split(","); String[] roles = rolesRequeridos.split(",");
boolean accesoPermitido = false; boolean accesoPermitido = false;
for (String rolRequerido : roles) { for (String rolRequerido : roles) {
@ -141,22 +149,105 @@ public class DemoBeanLogin implements Serializable {
FacesContext context = FacesContext.getCurrentInstance(); FacesContext context = FacesContext.getCurrentInstance();
NavigationHandler handler = context.getApplication().getNavigationHandler(); NavigationHandler handler = context.getApplication().getNavigationHandler();
handler.handleNavigation(context, null, "productoLista.xhtml?faces-redirect=true"); handler.handleNavigation(context, null, "productoLista.xhtml?faces-redirect=true");
} else {
switch (nombreDeLaPagina) {
//
case "productoLista":
switch (rol) {
case "admin":
permisos = true;
agregaciones = true;
break;
case "almacenista":
permisos = true;
agregaciones = true;
break;
case "auxiliar":
permisos = false;
agregaciones = false;
break;
default:
permisos = false;
agregaciones = false;
} }
break;
//
case "marcaLista":
switch (rol) {
case "admin":
break;
case "almacenista":
break;
case "auxiliar":
break;
default:
permisos = false;
agregaciones = false;
} }
break;
//
case "usuariosLista":
public void permiso() {
switch (rol) { switch (rol) {
case "admin": case "admin":
permisos = true;
break;
case "almacenista":
break; break;
case "auxiliar": case "auxiliar":
break;
default:
permisos = false; permisos = false;
agregaciones = false;
}
break;
//
case "proveedorLista":
switch (rol) {
case "admin":
break; break;
case "almacenista": case "almacenista":
break;
case "auxiliar":
break;
default:
permisos = false; permisos = false;
agregaciones = false;
}
break;
//
case "ubicacionLista":
switch (rol) {
case "admin":
break;
case "almacenista":
break;
case "auxiliar":
break; break;
default: default:
permisos = false; permisos = false;
agregaciones = false;
}
break;
default:
break;
}
} }
} }

2
ProyectoInventario-war/web/estados.xhtml

@ -117,7 +117,7 @@ Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/XHtml.xhtml to edit t
ajax="true" ajax="true"
styleClass="ui-button-success" styleClass="ui-button-success"
style="width: 50px;" style="width: 50px;"
icon="pi pi-check" icon="pi pi-save"
update="formEstados:tableEstados, nombre, paisesId, update="formEstados:tableEstados, nombre, paisesId,
alertNombre, alertPais, formEstados:growl" /> alertNombre, alertPais, formEstados:growl" />

2
ProyectoInventario-war/web/paises.xhtml

@ -85,7 +85,7 @@ Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/XHtml.xhtml to edit t
ajax="true" ajax="true"
styleClass="ui-button-success" styleClass="ui-button-success"
style="width: 50px;" style="width: 50px;"
icon="pi pi-check" icon="pi pi-save"
update="formPais:tablePais, nombre, alertNombre, formPais:growl" /> update="formPais:tablePais, nombre, alertNombre, formPais:growl" />
<p:commandButton oncomplete="PF('pais').close()" <p:commandButton oncomplete="PF('pais').close()"

17
ProyectoInventario-war/web/productoLista.xhtml

@ -23,6 +23,12 @@
<ui:define name="content"> <ui:define name="content">
<f:view> <f:view>
<f:metadata>
<f:viewParam name="rol" value="#{demoBeanLogin.rol}" />
<f:event type="preRenderView" listener="#{demoBeanLogin.verificarAcceso('admin,almacenista,auxiliar', 'productoLista')}" />
</f:metadata>
<div> <div>
<h:form> <h:form>
<p:menubar > <p:menubar >
@ -39,20 +45,22 @@
icon="pi pi-globe" icon="pi pi-globe"
oncomplete="PF('pais').show()" oncomplete="PF('pais').show()"
update="paisDialog" update="paisDialog"
actionListener="#{demoBeanPaises.prepararNuevo()}"/> actionListener="#{demoBeanPaises.prepararNuevo()}"
rendered="#{demoBeanLogin.agregaciones == true}" />
<p:menuitem value="Estados" <p:menuitem value="Estados"
icon="pi pi-map" icon="pi pi-map"
oncomplete="PF('estado').show()" oncomplete="PF('estado').show()"
update="estadosDialog" update="estadosDialog"
actionListener="#{demoBeanEstados.prepararNuevo()}"/> actionListener="#{demoBeanEstados.prepararNuevo()}"
rendered="#{demoBeanLogin.agregaciones == true}" />
<p:menuitem value="Tipos" <p:menuitem value="Tipos"
icon="pi pi-tags" icon="pi pi-tags"
oncomplete="PF('tipo').show()" oncomplete="PF('tipo').show()"
update="tip" update="tip"
actionListener="#{demoBeanTipo.prepararNuevo()}"/> actionListener="#{demoBeanTipo.prepararNuevo()}"
<!-- <p:divider />--> rendered="#{demoBeanLogin.agregaciones == true}" />
</p:submenu> </p:submenu>
</p:menubar> </p:menubar>
@ -214,6 +222,7 @@
oncomplete="PF('deleteProducto').show()" oncomplete="PF('deleteProducto').show()"
update=":dialogDel" update=":dialogDel"
style="margin-left: 1px" style="margin-left: 1px"
disabled="#{!demoBeanLogin.permisos}"
/> />
</div> </div>
</p:column> </p:column>

4
ProyectoInventario-war/web/template/listas.xhtml

@ -26,8 +26,8 @@
<p:commandButton action="#{demoBeanLogin.logout()}" <p:commandButton action="#{demoBeanLogin.logout()}"
immediate="true" immediate="true"
ajax="false" ajax="false"
style="margin-left: 5px; margin-right: 10px; width: 50px; vertical-align: middle;" style="margin-left: 5px; margin-right: 10px; vertical-align: middle;"
icon="pi pi-times" icon="pi pi-power-off"
styleClass="ui-button-danger" /> styleClass="ui-button-danger" />
</h:form> </h:form>
</div> </div>

Loading…
Cancel
Save