fixes bug#24234
dev: Wallace qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@112175 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
501cb53899
commit
dc4a46d871
|
@ -102,95 +102,12 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
this.ordenarTrechosSentidoIda(this.dados,linhasIds);
|
|
||||||
this.resultSet = rset;
|
this.resultSet = rset;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ordenarTrechosSentidoIda(List<Map<String, Object>> dados, String linhasIds) {
|
|
||||||
|
|
||||||
List<String> listOrigemDestino = this.buscarSequenciaOrigemDestinoIda(linhasIds);
|
|
||||||
|
|
||||||
if (listOrigemDestino.isEmpty()){
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
List<Map<String, Object>> dadosOrdenados = new ArrayList<Map<String,Object>>();
|
|
||||||
|
|
||||||
|
|
||||||
for(Map<String, Object> dado : dados){
|
|
||||||
|
|
||||||
Map<String, Object> dataResult = new HashMap<String, Object>();
|
|
||||||
|
|
||||||
String origemAtual = dado.get("origem").toString();
|
|
||||||
String destinoAtual = dado.get("destino").toString();
|
|
||||||
|
|
||||||
String trecho = origemAtual.concat("|").concat(destinoAtual);
|
|
||||||
|
|
||||||
if (!listOrigemDestino.contains(trecho) ){
|
|
||||||
origemAtual = dado.get("destino").toString();
|
|
||||||
destinoAtual = dado.get("origem").toString();
|
|
||||||
}
|
|
||||||
|
|
||||||
dataResult.put("origem", origemAtual);
|
|
||||||
dataResult.put("destino", destinoAtual);
|
|
||||||
dataResult.put("km", dado.get("km"));
|
|
||||||
dataResult.put("totalida", dado.get("totalida"));
|
|
||||||
dataResult.put("totalvolta", dado.get("totalvolta"));
|
|
||||||
|
|
||||||
dadosOrdenados.add(dataResult);
|
|
||||||
}
|
|
||||||
|
|
||||||
dados.clear();
|
|
||||||
dados.addAll(dadosOrdenados);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private List<String> buscarSequenciaOrigemDestinoIda(String linhasIds) {
|
|
||||||
StringBuilder query = new StringBuilder();
|
|
||||||
query.append("SELECT ");
|
|
||||||
query.append("ori.DESCPARADA || '|' || des.DESCPARADA AS trecho ");
|
|
||||||
query.append("FROM ");
|
|
||||||
query.append("ruta r ");
|
|
||||||
query.append("JOIN RUTA_COMBINACION rc ON rc.ruta_id = r.ruta_id ");
|
|
||||||
query.append("INNER JOIN tramo tr ON tr.TRAMO_ID =rc.TRAMO_ID AND tr.ACTIVO = 1 ");
|
|
||||||
query.append("JOIN parada ori ON\tori.parada_id = tr.origen_id ");
|
|
||||||
query.append("JOIN parada des ON\tdes.parada_id = tr.destino_id ");
|
|
||||||
query.append(" ");
|
|
||||||
query.append("WHERE ");
|
|
||||||
query.append(" r.NUMRUTA = '").append(linhasIds).append("' ");
|
|
||||||
query.append("AND r.INDSENTIDOIDA =1 ");
|
|
||||||
query.append("AND rc.ACTIVO =1 ");
|
|
||||||
query.append("AND r.ACTIVO =1 ");
|
|
||||||
query.append("ORDER BY 1 ");
|
|
||||||
|
|
||||||
List<String> listOrigemDestino = new ArrayList<String>();
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
Connection conexao = this.relatorio.getConexao();
|
|
||||||
PreparedStatement ps= conexao.prepareStatement(query.toString());
|
|
||||||
|
|
||||||
ResultSet rset = ps.executeQuery();
|
|
||||||
|
|
||||||
while (rset.next()) {
|
|
||||||
listOrigemDestino.add(rset.getString("trecho"));
|
|
||||||
}
|
|
||||||
|
|
||||||
rset.close();
|
|
||||||
ps.close();
|
|
||||||
|
|
||||||
} catch (SQLException e) {
|
|
||||||
throw new RuntimeException("Erro ao buscar sequencia da linha",e);
|
|
||||||
}
|
|
||||||
return listOrigemDestino;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void processaParametros() throws Exception {
|
protected void processaParametros() throws Exception {
|
||||||
}
|
}
|
||||||
|
@ -219,7 +136,8 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends
|
||||||
sql.append(" ELSE NULL ");
|
sql.append(" ELSE NULL ");
|
||||||
sql.append(" END ");
|
sql.append(" END ");
|
||||||
sql.append(" ) AS totalvolta, ");
|
sql.append(" ) AS totalvolta, ");
|
||||||
sql.append(" rc.rutacombinacion_id AS rutaCombinacionId ");
|
sql.append(" rc.rutacombinacion_id AS rutaCombinacionId, ");
|
||||||
|
sql.append(" rs.numsecuencia ");
|
||||||
|
|
||||||
sql.append(" FROM ");
|
sql.append(" FROM ");
|
||||||
sql.append(" boleto b ");
|
sql.append(" boleto b ");
|
||||||
|
@ -246,6 +164,9 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends
|
||||||
sql.append(" AND tar.destino_id = b.destino_id ");
|
sql.append(" AND tar.destino_id = b.destino_id ");
|
||||||
sql.append(" AND tar.TRAMO_ID = tr.TRAMO_ID ");
|
sql.append(" AND tar.TRAMO_ID = tr.TRAMO_ID ");
|
||||||
sql.append(" AND tar.activo = 1 ) ");
|
sql.append(" AND tar.activo = 1 ) ");
|
||||||
|
sql.append(" LEFT JOIN ruta_secuencia rs ON (tr.tramo_id = rs.tramo_id ");
|
||||||
|
sql.append(" AND r.ruta_id = rs.ruta_id ");
|
||||||
|
sql.append(" AND rs.activo =1 ) ");
|
||||||
|
|
||||||
sql.append(" WHERE b.empresacorrida_id IN :empresa_id ");
|
sql.append(" WHERE b.empresacorrida_id IN :empresa_id ");
|
||||||
|
|
||||||
|
@ -264,8 +185,10 @@ public class RelatorioQuadroDemonstrativoMovimentoPassageirosNovoLayout extends
|
||||||
sql.append(" r.numruta, ");
|
sql.append(" r.numruta, ");
|
||||||
sql.append(" ori.descparada, ");
|
sql.append(" ori.descparada, ");
|
||||||
sql.append(" des.descparada, ");
|
sql.append(" des.descparada, ");
|
||||||
sql.append(" rc.rutacombinacion_id ");
|
sql.append(" rc.rutacombinacion_id, ");
|
||||||
|
sql.append(" rs.numsecuencia ");
|
||||||
sql.append(" ORDER BY ");
|
sql.append(" ORDER BY ");
|
||||||
|
sql.append(" rs.numsecuencia, ");
|
||||||
sql.append(" r.descruta, ");
|
sql.append(" r.descruta, ");
|
||||||
sql.append(" rc.rutacombinacion_id ");
|
sql.append(" rc.rutacombinacion_id ");
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue