diff --git a/ProyectoInventario-war/src/java/xforce/seguridad/DemoBeanLogin.java b/ProyectoInventario-war/src/java/xforce/seguridad/DemoBeanLogin.java index 2109259..c1a8f23 100644 --- a/ProyectoInventario-war/src/java/xforce/seguridad/DemoBeanLogin.java +++ b/ProyectoInventario-war/src/java/xforce/seguridad/DemoBeanLogin.java @@ -41,6 +41,7 @@ public class DemoBeanLogin implements Serializable { private String user; private static String http = "pinchilink"; private boolean permisos = false; + private boolean agregaciones = false; public Usuarios getUsuarios() { return usuarios; @@ -58,6 +59,14 @@ public class DemoBeanLogin implements Serializable { this.rol = rol; } + public boolean isAgregaciones() { + return agregaciones; + } + + public void setAgregaciones(boolean agregaciones) { + this.agregaciones = agregaciones; + } + public String getUser() { return user; } @@ -102,7 +111,6 @@ public class DemoBeanLogin implements Serializable { System.out.println(rol); httpSession.setAttribute(http, "true"); - permiso(); System.out.println(permisos); usuarios = new Usuarios(); 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(","); boolean accesoPermitido = false; for (String rolRequerido : roles) { @@ -141,22 +149,105 @@ public class DemoBeanLogin implements Serializable { FacesContext context = FacesContext.getCurrentInstance(); NavigationHandler handler = context.getApplication().getNavigationHandler(); handler.handleNavigation(context, null, "productoLista.xhtml?faces-redirect=true"); - } - } - - public void permiso() { - switch (rol) { - case "admin": - permisos = true; - break; - case "auxiliar": - permisos = false; - break; - case "almacenista": - permisos = false; - break; - default: - permisos = false; + } 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": + + switch (rol) { + case "admin": + + break; + case "almacenista": + + break; + case "auxiliar": + + break; + default: + permisos = false; + agregaciones = false; + } + break; + // + case "proveedorLista": + + switch (rol) { + case "admin": + + break; + case "almacenista": + + break; + case "auxiliar": + + break; + default: + permisos = false; + agregaciones = false; + } + break; + // + case "ubicacionLista": + + switch (rol) { + case "admin": + + break; + case "almacenista": + + break; + case "auxiliar": + + break; + default: + permisos = false; + agregaciones = false; + } + break; + + default: + break; + } } } diff --git a/ProyectoInventario-war/web/estados.xhtml b/ProyectoInventario-war/web/estados.xhtml index 7fe5f64..a5cee91 100644 --- a/ProyectoInventario-war/web/estados.xhtml +++ b/ProyectoInventario-war/web/estados.xhtml @@ -117,7 +117,7 @@ Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/XHtml.xhtml to edit t ajax="true" styleClass="ui-button-success" style="width: 50px;" - icon="pi pi-check" + icon="pi pi-save" update="formEstados:tableEstados, nombre, paisesId, alertNombre, alertPais, formEstados:growl" /> diff --git a/ProyectoInventario-war/web/paises.xhtml b/ProyectoInventario-war/web/paises.xhtml index d714f25..adb007f 100644 --- a/ProyectoInventario-war/web/paises.xhtml +++ b/ProyectoInventario-war/web/paises.xhtml @@ -85,7 +85,7 @@ Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/XHtml.xhtml to edit t ajax="true" styleClass="ui-button-success" style="width: 50px;" - icon="pi pi-check" + icon="pi pi-save" update="formPais:tablePais, nombre, alertNombre, formPais:growl" /> + + + + + +
@@ -39,20 +45,22 @@ icon="pi pi-globe" oncomplete="PF('pais').show()" update="paisDialog" - actionListener="#{demoBeanPaises.prepararNuevo()}"/> + actionListener="#{demoBeanPaises.prepararNuevo()}" + rendered="#{demoBeanLogin.agregaciones == true}" /> + actionListener="#{demoBeanEstados.prepararNuevo()}" + rendered="#{demoBeanLogin.agregaciones == true}" /> - + actionListener="#{demoBeanTipo.prepararNuevo()}" + rendered="#{demoBeanLogin.agregaciones == true}" /> @@ -214,6 +222,7 @@ oncomplete="PF('deleteProducto').show()" update=":dialogDel" style="margin-left: 1px" + disabled="#{!demoBeanLogin.permisos}" />
diff --git a/ProyectoInventario-war/web/template/listas.xhtml b/ProyectoInventario-war/web/template/listas.xhtml index 1c5274a..8711023 100644 --- a/ProyectoInventario-war/web/template/listas.xhtml +++ b/ProyectoInventario-war/web/template/listas.xhtml @@ -26,8 +26,8 @@