From ca4bc531d401779efa8984f6aa56e4b00e0d9617 Mon Sep 17 00:00:00 2001 From: julio Date: Wed, 4 Jun 2014 19:16:30 +0000 Subject: [PATCH] =?UTF-8?q?B6=20-=20SISDAP=20Relat=C3=B3rio=20ANTT=20(bug?= =?UTF-8?q?=20#5247)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit correção somente do relatorio: movimento linhas Tempo: 2 horas git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@35802 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/hibernate/SisdapHibernateDAO.java | 96 ++++++++----------- 1 file changed, 39 insertions(+), 57 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/SisdapHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/SisdapHibernateDAO.java index 8bb645efa..60c6a637c 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/SisdapHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/SisdapHibernateDAO.java @@ -34,64 +34,46 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); StringBuilder sb = new StringBuilder(); - sb.append("SELECT DISTINCT e.codantt antt, "); + sb.append("select distinct e.codantt antt, "); sb.append(" r.prefixo prefixo, "); - sb.append(" TO_CHAR(c.feccorrida, 'MM') mes, "); - sb.append(" TO_CHAR(c.feccorrida, 'yyyy') ano, "); - sb.append(" NVL(CASE subviagens.sentido "); - sb.append(" WHEN 1 THEN Count(subviagens.ruta) "); - sb.append(" END, 0) viagensIda, "); - sb.append(" NVL(CASE subviagens.sentido "); - sb.append(" WHEN 0 THEN Count(subviagens.ruta) "); - sb.append(" END, 0) viagensVolta, "); - sb.append(" NVL(CASE subviagens.sentido "); - sb.append(" WHEN 1 THEN ( da.cantasientos * Count(subviagens.ruta) ) "); - sb.append(" END, 0) lugaresIda, "); - sb.append(" NVL(CASE subviagens.sentido "); - sb.append(" WHEN 0 THEN ( da.cantasientos * Count(subviagens.ruta) ) "); - sb.append(" END, 0) lugaresVolta "); - sb.append("FROM corrida c "); - sb.append(" inner join ruta r "); - sb.append(" ON r.ruta_id = c.ruta_id "); - sb.append(" inner join empresa e "); - sb.append(" ON e.empresa_id = c.empresacorrida_id "); - sb.append(" left join rol_operativo ro "); - sb.append(" ON c.roloperativo_id = ro.roloperativo_id "); - sb.append(" left join diagrama_autobus da "); - sb.append(" ON da.diagramaautobus_id = ro.diagramaautobus_id "); - sb.append(" left join (SELECT DISTINCT ru.prefixo ruta, "); - sb.append(" bo.corrida_id corrida, "); - sb.append(" bo.feccorrida feccorrida, "); - sb.append(" bo.empresacorrida_id empresacorrida, "); - sb.append(" ru.indsentidoida sentido "); - sb.append(" FROM boleto bo "); - sb.append(" left join ruta ru "); - sb.append(" ON ru.ruta_id = bo.ruta_id "); - sb.append(" WHERE bo.numasiento IS NOT NULL "); - sb.append(" AND bo.motivocancelacion_id IS NULL "); - sb.append(" AND bo.feccorrida BETWEEN To_date(:fecInicio, 'DD/MM/YYYY') AND "); - sb.append(" To_date(:fecFinal, 'DD/MM/YYYY') "); - sb.append(" GROUP BY ru.prefixo, "); - sb.append(" bo.corrida_id, "); - sb.append(" bo.feccorrida, "); - sb.append(" bo.empresacorrida_id, "); - sb.append(" ru.indsentidoida) subviagens "); - sb.append(" ON ( subviagens.ruta = r.prefixo "); - sb.append(" AND subviagens.corrida = c.corrida_id "); - sb.append(" AND subviagens.feccorrida = c.feccorrida "); - sb.append(" AND subviagens.empresacorrida = e.empresa_id ) "); - sb.append("WHERE e.empresa_id = :empresaId "); - sb.append(" AND r.orgaoconcedente_id = 3 "); - sb.append(" AND e.codantt IS NOT NULL "); - sb.append(" AND c.feccorrida BETWEEN To_date(:fecInicio, 'DD/MM/YYYY') AND "); - sb.append(" To_date(:fecFinal, 'DD/MM/YYYY') "); - sb.append("GROUP BY e.codantt, "); + sb.append(" to_char(c.feccorrida, 'MM') mes, "); + sb.append(" to_char(c.feccorrida, 'yyyy') ano, "); + sb.append(" nvl(case r.indsentidoida "); + sb.append(" when 1 then count(r.prefixo) "); + sb.append(" end, 0) viagensida, "); + sb.append(" nvl(case r.indsentidoida "); + sb.append(" when 0 then count(r.prefixo) "); + sb.append(" end, 0) viagensvolta, "); + sb.append(" nvl(case r.indsentidoida "); + sb.append(" when 1 then sum(da.cantasientos) "); + sb.append(" end, 0) lugaresida, "); + sb.append(" nvl(case r.indsentidoida "); + sb.append(" when 0 then sum(da.cantasientos) "); + sb.append(" end, 0) lugaresvolta "); + sb.append("from ruta_empresa re "); + sb.append(" left join marca m "); + sb.append(" on m.marca_id = re.empresa_id "); + sb.append(" left join empresa e "); + sb.append(" on m.empresa_id = e.empresa_id "); + sb.append(" left join ruta r "); + sb.append(" on re.ruta_id = r.ruta_id "); + sb.append(" left join corrida c "); + sb.append(" on c.ruta_id = r.ruta_id "); + sb.append(" left outer join rol_operativo ro "); + sb.append(" on c.roloperativo_id = ro.roloperativo_id "); + sb.append(" left outer join diagrama_autobus da "); + sb.append(" on da.diagramaautobus_id = ro.diagramaautobus_id "); + sb.append("where m.marca_id = :empresaId "); + sb.append(" and r.orgaoconcedente_id = 3 "); + sb.append(" and e.codantt is not null "); + sb.append(" and c.feccorrida between to_date(:fecInicio, 'DD/MM/YYYY') and "); + sb.append(" to_date(:fecFinal, 'DD/MM/YYYY') "); + sb.append("group by e.codantt, "); sb.append(" r.prefixo, "); - sb.append(" da.cantasientos, "); - sb.append(" subviagens.sentido, "); - sb.append(" To_char(c.feccorrida, 'MM'), "); - sb.append(" To_char(c.feccorrida, 'yyyy') "); - sb.append("ORDER BY mes, "); + sb.append(" r.indsentidoida, "); + sb.append(" to_char(c.feccorrida, 'MM'), "); + sb.append(" to_char(c.feccorrida, 'yyyy') "); + sb.append("order by mes, "); sb.append(" ano, "); sb.append(" e.codantt, "); sb.append(" r.prefixo, "); @@ -288,7 +270,7 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO if (insert) result.add(ms); } - + for (MovimentoSecoes ms : result) { movimentosSecoes.add(ms.toString()); }