public int compare(Object arg1, Object arg2) {
AcompRelatorioArel arel1 = (AcompRelatorioArel) arg1;
AcompRelatorioArel arel2 = (AcompRelatorioArel) arg2;
Cor cor1 = arel1.getCor();
Cor cor2 = arel2.getCor();
if(cor1 == null && cor2 == null)
return 0;
if(cor1 != null && cor2 == null)
return 1;
if(cor1 == null && cor2 != null)
return -1;
return cor1.getOrdemCor().compareTo(cor2.getOrdemCor());
}
});
ordenarArelsPorIettsConfigurados(lista);
}
//opcaoModelo == RELATORIO_SITUACAO_ESPECIFICO os itens s�o s� de 1 situa��o, s� ordeno por �rg�o.
else if(RELATORIO_SITUACAO_ESPECIFICO.equals(opcaoModelo)){
ordenarArelsPorIettsConfigurados(lista);
Collections.sort(lista, new Comparator(){
public int compare(Object arg1, Object arg2) {
AcompRelatorioArel arel1 = (AcompRelatorioArel) arg1;
AcompRelatorioArel arel2 = (AcompRelatorioArel) arg2;
OrgaoOrg org1 = arel1.getAcompReferenciaItemAri().getItemEstruturaIett().getOrgaoOrgByCodOrgaoResponsavel1Iett();
OrgaoOrg org2 = arel2.getAcompReferenciaItemAri().getItemEstruturaIett().getOrgaoOrgByCodOrgaoResponsavel1Iett();
if(org1 == null && org2 == null)
return 0;
if(org1 != null && org2 == null)
return 1;
if(org1 == null && org2 != null)
return -1;
return org1.getSiglaOrg().compareTo(org2.getSiglaOrg());
}
});
}
// Se opcaoModelo == RELATORIO_SITUACAO, primeiro ordeno por �rg�o e depois por situa��o para ficar ordenado por "Situa��o e Org�o".
else if(RELATORIO_SITUACAO.equals(opcaoModelo)){
//Situa��o e �rg�o
ordenarArelsPorIettsConfigurados(lista);
Collections.sort(lista, new Comparator(){
public int compare(Object arg1, Object arg2) {
AcompRelatorioArel arel1 = (AcompRelatorioArel) arg1;
AcompRelatorioArel arel2 = (AcompRelatorioArel) arg2;
OrgaoOrg org1 = arel1.getAcompReferenciaItemAri().getItemEstruturaIett().getOrgaoOrgByCodOrgaoResponsavel1Iett();
OrgaoOrg org2 = arel2.getAcompReferenciaItemAri().getItemEstruturaIett().getOrgaoOrgByCodOrgaoResponsavel1Iett();
if(org1 == null && org2 == null)
return 0;
if(org1 != null && org2 == null)
return 1;
if(org1 == null && org2 != null)
return -1;
return org1.getSiglaOrg().compareTo(org2.getSiglaOrg());
}
});
Collections.sort(lista, new Comparator(){
public int compare(Object arg1, Object arg2) {
AcompRelatorioArel arel1 = (AcompRelatorioArel) arg1;
AcompRelatorioArel arel2 = (AcompRelatorioArel) arg2;
Cor cor1 = arel1.getCor();
Cor cor2 = arel2.getCor();
if(cor1 == null && cor2 == null)
return 0;
if(cor1 != null && cor2 == null)
return 1;
if(cor1 == null && cor2 != null)
return -1;
return cor1.getOrdemCor().compareTo(cor2.getOrdemCor());
}
});
}
//Se opcaoModelo == RELATORIO_ESTRUTURA, ordeno os itens conforme estiver configurado para ordenar.