diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java index 2d1944c7..af34e432 100644 --- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java +++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java @@ -262,6 +262,36 @@ public class GestaoUtilizadores extends AbstractPageBean { this.groupPanel7 = pg; } + private PanelGroup groupPanelLogin = new PanelGroup(); + + public PanelGroup getGroupPanelLogin() { + return groupPanelLogin; + } + + public void setGroupPanelLogin(PanelGroup groupPanelLogin) { + this.groupPanelLogin = groupPanelLogin; + } + + private TextField txtLogin = new TextField(); + + public TextField getTxtLogin() { + return txtLogin; + } + + public void setTxtLogin(TextField txtLogin) { + this.txtLogin = txtLogin; + } + + private StaticText staticTextLogin = new StaticText(); + + public StaticText getStaticTextLogin() { + return staticTextLogin; + } + + public void setStaticTextLogin(StaticText staticTextLogin) { + this.staticTextLogin = staticTextLogin; + } + private StaticText staticText8 = new StaticText(); public StaticText getStaticText8() { @@ -877,7 +907,7 @@ public class GestaoUtilizadores extends AbstractPageBean { try { UtilizadoresDataProvider udp = UtilizadoresDataProvider.getInstance(); - List< Utilizador > listUtilizadores = udp.getUtilizadoresList( null, null, null, "y", isDirRh ); + List< Utilizador > listUtilizadores = udp.getUtilizadoresList( null, null, null, null, "y", isDirRh ); // ArrayList list = udp.getUtilizadoresList(null, null, null, "y", isDirRh); getSessionBean1().getUtilizadoresActivosListDataProvider().setList( listUtilizadores ); } @@ -889,7 +919,7 @@ public class GestaoUtilizadores extends AbstractPageBean { try { UtilizadoresDataProvider udp = UtilizadoresDataProvider.getInstance(); - List< Utilizador > listUtilizadores = udp.getUtilizadoresList( null, null, null, "n", isDirRh ); + List< Utilizador > listUtilizadores = udp.getUtilizadoresList( null, null, null, null, "n", isDirRh ); // ArrayList list = udp.getUtilizadoresList(null, null, null, "n", isDirRh); getSessionBean1().getUtilizadoresInactivosListDataProvider().setList( listUtilizadores ); } @@ -1040,6 +1070,7 @@ public class GestaoUtilizadores extends AbstractPageBean { String por = null; String nome = null; Integer estabelecimento_id = null; + String login = null; if(txtPor.getText() != null) { @@ -1065,7 +1096,20 @@ public class GestaoUtilizadores extends AbstractPageBean { { nome = nome.toLowerCase(); } - } + } + + if ( txtLogin.getText() != null ) + { + login = ( String ) txtLogin.getText(); + if ( login == null || "".equals( login.trim() ) ) + { + login = null; + } + else + { + login = login.toLowerCase(); + } + } estabelecimento_id = (Integer) drpEstabelecimentos.getSelected(); if(estabelecimento_id.intValue() == -1) @@ -1084,7 +1128,7 @@ public class GestaoUtilizadores extends AbstractPageBean { { UtilizadoresDataProvider udp = UtilizadoresDataProvider.getInstance(); getSessionBean1().setIsSearchingUtilizadores( true ); - List< Utilizador > listUtilizadores = udp.getUtilizadoresList( por, nome, estabelecimento_id, "y", isDirRh ); + List< Utilizador > listUtilizadores = udp.getUtilizadoresList( por, nome, login, estabelecimento_id, "y", isDirRh ); getSessionBean1().getUtilizadoresActivosListDataProvider().setList( listUtilizadores ); } catch(Exception ex) @@ -1097,7 +1141,7 @@ public class GestaoUtilizadores extends AbstractPageBean { { UtilizadoresDataProvider udp = UtilizadoresDataProvider.getInstance(); getSessionBean1().setIsSearchingUtilizadores( true ); - List< Utilizador > listUtilizadores = udp.getUtilizadoresList( por, nome, estabelecimento_id, "n", isDirRh ); + List< Utilizador > listUtilizadores = udp.getUtilizadoresList( por, nome, login, estabelecimento_id, "n", isDirRh ); getSessionBean1().getUtilizadoresInactivosListDataProvider().setList( listUtilizadores ); } catch(Exception ex) diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/db/providers/UtilizadoresDataProvider.java b/trunk/AnaliseAcidentesTrabalho/src/java/db/providers/UtilizadoresDataProvider.java index d864ae3c..1c0e24a5 100644 --- a/trunk/AnaliseAcidentesTrabalho/src/java/db/providers/UtilizadoresDataProvider.java +++ b/trunk/AnaliseAcidentesTrabalho/src/java/db/providers/UtilizadoresDataProvider.java @@ -254,13 +254,14 @@ public class UtilizadoresDataProvider extends GenericDataProvider } - public List< Utilizador > getUtilizadoresList( String por, String nome, Integer estabelecimentoID, String activo, String dirRH ) + public List< Utilizador > getUtilizadoresList( String por, String nome, String login, Integer estabelecimentoID, String activo, String dirRH ) throws Exception { List< Utilizador > listUtilizadores = new LinkedList< Utilizador >(); por = por == null ? "" : por; nome = nome == null ? "" : StringPlainer.convertString( nome.replaceAll( " ", "%" ) ); + login = login == null ? "" : StringPlainer.convertString( login.replaceAll( " ", "%" ) ); activo = activo == null ? "y" : activo; dirRH = dirRH == null ? "n" : dirRH; boolean isDirRH = "y".equals( dirRH ); @@ -272,6 +273,9 @@ public class UtilizadoresDataProvider extends GenericDataProvider whereExpression = whereExpression.and( new Field( "plain( " + UtilizadoresData.NOME_FULL + " )" ).isILike( "%" + nome + "%" ) ).or( new Field( "plain_utf8( " + UtilizadoresData.NOME_FULL + " )" ).isILike( "%" + nome + "%" ) ); + whereExpression = whereExpression.and( new Field( "plain( " + UtilizadoresData.LOGIN_FULL + " )" ).isILike( "%" + login + "%" ) ).or( + new Field( "plain_utf8( " + UtilizadoresData.LOGIN_FULL + " )" ).isILike( "%" + login + "%" ) + ); if ( estabelecimentoID != null ) { whereExpression = whereExpression.and( new Field( UtilizadoresData.ESTABELECIMENTO_ID_FULL ).isEqual( estabelecimentoID ) ); @@ -308,7 +312,7 @@ public class UtilizadoresDataProvider extends GenericDataProvider for ( int i = 0; i < array.columnLength(); i++ ) { Integer userID = array.get( i, 0 ); - String login = array.get( i, 1 ); + String loginUtilizador = array.get( i, 1 ); String password = array.get( i, 2 ); String email = array.get( i, 3 ); Integer empresaID = array.get( i, 4 ); @@ -333,7 +337,7 @@ public class UtilizadoresDataProvider extends GenericDataProvider Utilizador u = new Utilizador(); u.setId( userID ); - u.setLogin( login ); + u.setLogin( loginUtilizador ); u.setPassword( password ); u.setData_password( sqlDataPassword ); u.setEmail( email ); diff --git a/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp b/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp index 485c211d..25ec00aa 100644 --- a/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp +++ b/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp @@ -81,7 +81,7 @@ - + @@ -92,6 +92,11 @@ styleClass="labelBold" text="Nome:"/> + + + +