diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java index b4ad0b53..4d8c295b 100755 --- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java +++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java @@ -1,9 +1,12 @@ package siprp.database.cayenne.objects; -import com.evolute.utils.strings.UnicodeChecker; +import java.util.Collections; +import java.util.List; import siprp.database.cayenne.objects.auto._Empresas; +import com.evolute.utils.strings.UnicodeChecker; + public class Empresas extends _Empresas { private static final long serialVersionUID = 1L; @@ -48,6 +51,22 @@ public class Empresas extends _Empresas { { return getDesignacaoSocial(); } + + @Override + public List getEstabelecimentosArray() + { + List result = super.getEstabelecimentosArray(); + for(int i = 0; i < result.size(); ++i) + { + Estabelecimentos current = result.get(i); + if( current == null || "y".equals(current.getInactivo())) + { + result.remove( i ); + } + } + Collections.sort(result); + return result; + } } diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java index aa1caa00..8bd6fc5f 100755 --- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java +++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java @@ -1,29 +1,34 @@ package siprp.database.cayenne.objects; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + import com.evolute.utils.strings.UnicodeChecker; import siprp.database.cayenne.objects.auto._Estabelecimentos; -public class Estabelecimentos extends _Estabelecimentos { +public class Estabelecimentos extends _Estabelecimentos implements Comparable +{ private static final long serialVersionUID = 1L; - + private String name = null; - + private String convertedName = null; - + @Override public String getNome() { String currentName = super.getNome(); - if( name == null || !name.equals( currentName )) + if( name == null || !name.equals( currentName ) ) { name = currentName; convertedName = null; } return convertName(); } - + @Override public void setNome( String nome ) { @@ -49,7 +54,35 @@ public class Estabelecimentos extends _Estabelecimentos { { return getNome(); } -} - + @Override + public List getTrabalhadoresArray() + { + List result = super.getTrabalhadoresArray(); + for(int i = 0; i < result.size(); ++i) + { + Trabalhadores current = result.get(i); + if( current == null || "y".equals(current.getInactivo())) + { + result.remove( i ); + } + } + Collections.sort( result ); + return result; + } + + @Override + public int compareTo( Estabelecimentos estabelecimento ) + { + if( estabelecimento == null) + { + return 1; + } + if( this.getNomePlain() == null ) + { + return (estabelecimento.getNomePlain() != null) ? -1 : 0; + } + return (-1) * estabelecimento.getNomePlain().compareTo( getNomePlain() ); + } +} diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Trabalhadores.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Trabalhadores.java index 8edefffc..a2d38fd9 100755 --- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Trabalhadores.java +++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Trabalhadores.java @@ -6,7 +6,7 @@ import siprp.database.cayenne.objects.auto._Trabalhadores; import com.evolute.utils.strings.UnicodeChecker; -public class Trabalhadores extends _Trabalhadores +public class Trabalhadores extends _Trabalhadores implements Comparable { private static final long serialVersionUID = 1L; @@ -65,4 +65,18 @@ public class Trabalhadores extends _Trabalhadores return getNome(); } + @Override + public int compareTo( Trabalhadores trabalhador ) + { + if( trabalhador == null) + { + return 1; + } + if( this.getNomePlain() == null ) + { + return (trabalhador.getNomePlain() != null) ? -1 : 0; + } + return (-1) * trabalhador.getNomePlain().compareTo( getNomePlain() ); + } + }