conclusão mantis 6895
fixes bug 6895 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@50816 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
e9f5b3d878
commit
5ffbd2aba5
|
@ -1,5 +1,6 @@
|
|||
package com.rjconsultores.ventaboletos.dao.hibernate;
|
||||
|
||||
import java.sql.SQLException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
@ -8,6 +9,11 @@ import java.util.Date;
|
|||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import org.apache.commons.dbutils.QueryRunner;
|
||||
import org.apache.commons.dbutils.ResultSetHandler;
|
||||
import org.apache.commons.dbutils.handlers.BeanListHandler;
|
||||
import org.apache.commons.lang.math.NumberUtils;
|
||||
import org.hibernate.Query;
|
||||
import org.hibernate.SessionFactory;
|
||||
|
@ -25,14 +31,12 @@ import com.rjconsultores.ventaboletos.relatorios.MovimentoSecoes;
|
|||
import com.rjconsultores.ventaboletos.relatorios.PrefixoAntt;
|
||||
|
||||
@Repository("sisdapDAO")
|
||||
public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO {
|
||||
public class SisdapHibernateDAO implements SisdapDAO {
|
||||
|
||||
private static String HYPHEN = "-";
|
||||
|
||||
|
||||
@Autowired
|
||||
public SisdapHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
|
||||
setSessionFactory(factory);
|
||||
}
|
||||
private DataSource dataSourceRead;
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
|
@ -140,30 +144,25 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
sb.append(" left join corrida c on c.ruta_id = r.ruta_id ");
|
||||
sb.append(" left outer join rol_operativo ro on c.roloperativo_id = ro.roloperativo_id ");
|
||||
sb.append(" left outer join diagrama_autobus da on da.diagramaautobus_id = ro.diagramaautobus_id ");
|
||||
sb.append("where m.marca_id = :empresaId and re.activo = 1 and r.activo = 1 ");
|
||||
sb.append("where m.marca_id = ? and re.activo = 1 and r.activo = 1 ");
|
||||
sb.append(" and r.orgaoconcedente_id = 3 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(" and c.feccorrida between to_date(?, 'DD/MM/YYYY') and ");
|
||||
sb.append(" to_date(?, 'DD/MM/YYYY') ");
|
||||
sb.append("group by e.codantt, r.prefixo, r.indsentidoida, ");
|
||||
sb.append(" to_char(c.feccorrida, 'MM'), to_char(c.feccorrida, 'yyyy') ");
|
||||
sb.append("order by mes, ano, e.codantt, r.prefixo, viagensida, viagensvolta ");
|
||||
|
||||
Query query = getSession().createSQLQuery(sb.toString())
|
||||
.addScalar("antt", StringType.INSTANCE)
|
||||
.addScalar("prefixo", StringType.INSTANCE)
|
||||
.addScalar("mes", IntegerType.INSTANCE)
|
||||
.addScalar("ano", IntegerType.INSTANCE)
|
||||
.addScalar("viagensIda", IntegerType.INSTANCE)
|
||||
.addScalar("viagensVolta", IntegerType.INSTANCE)
|
||||
.addScalar("lugaresIda", IntegerType.INSTANCE)
|
||||
.addScalar("lugaresVolta", IntegerType.INSTANCE);
|
||||
query.setResultTransformer(new AliasToBeanResultTransformer(MovimentoLinha.class));
|
||||
|
||||
query.setParameter("fecInicio", sdf.format(fecInicio));
|
||||
query.setParameter("fecFinal", sdf.format(fecFinal));
|
||||
query.setParameter("empresaId", empresaId);
|
||||
|
||||
return query.list();
|
||||
QueryRunner queryRunner = new QueryRunner(dataSourceRead);
|
||||
ResultSetHandler<List<MovimentoLinha>> handler = new BeanListHandler<MovimentoLinha>(MovimentoLinha.class);
|
||||
List<MovimentoLinha> returnedList = null;
|
||||
|
||||
try {
|
||||
returnedList = queryRunner.query(sb.toString(), handler, empresaId, sdf.format(fecInicio), sdf.format(fecFinal));
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return returnedList;
|
||||
}
|
||||
|
||||
private List<PrefixoAntt> buscaPrefixoEmpresa(Integer empresaId) {
|
||||
|
@ -174,19 +173,23 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
sb.append(" left join marca m on m.marca_id = re.empresa_id ");
|
||||
sb.append(" left join empresa e on m.empresa_id = e.empresa_id ");
|
||||
sb.append(" left join ruta r on re.ruta_id = r.ruta_id ");
|
||||
sb.append(" where re.empresa_id = :empresaId and r.orgaoconcedente_id = 3 ");
|
||||
sb.append(" where re.empresa_id = ? and r.orgaoconcedente_id = 3 ");
|
||||
sb.append(" and re.activo = 1 and r.activo = 1 ");
|
||||
sb.append(" group by e.codantt, r.prefixo ");
|
||||
sb.append(" order by e.codantt, r.prefixo ");
|
||||
|
||||
|
||||
QueryRunner queryRunner = new QueryRunner(dataSourceRead);
|
||||
ResultSetHandler<List<PrefixoAntt>> handler = new BeanListHandler<PrefixoAntt>(PrefixoAntt.class);
|
||||
List<PrefixoAntt> returnedList = null;
|
||||
|
||||
try {
|
||||
returnedList = queryRunner.query(sb.toString(), handler, empresaId);
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
Query query = getSession().createSQLQuery(sb.toString())
|
||||
.addScalar("antt", StringType.INSTANCE)
|
||||
.addScalar("prefixo", StringType.INSTANCE);
|
||||
query.setResultTransformer(new AliasToBeanResultTransformer(PrefixoAntt.class));
|
||||
|
||||
query.setParameter("empresaId", empresaId);
|
||||
|
||||
return query.list();
|
||||
return returnedList;
|
||||
}
|
||||
|
||||
private boolean agrupaMovimentoLinhas(List<MovimentoLinha> resul, MovimentoLinha movimentoLinha) {
|
||||
|
@ -217,8 +220,7 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
|
||||
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||
@Override
|
||||
public List<String> getMovimentoSecoes(Date fecInicio, Date fecFinal, Integer empresaId) {
|
||||
|
||||
public List<String> getMovimentoSecoes(Date fecInicio, Date fecFinal, Integer empresaId) {
|
||||
List<MovimentoSecoes> listResultConsulta = consultaMovimentoSecoes(fecInicio, fecFinal, empresaId);
|
||||
List<MovimentoSecoes> listResultIdaVoltaInvertida = new ArrayList<MovimentoSecoes>();
|
||||
List<MovimentoSecoes> listVoltasSemIda = new ArrayList<MovimentoSecoes>();
|
||||
|
@ -261,8 +263,23 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
String origem = volta.getLocalOrigem();
|
||||
String destino = volta.getLocalDestino();
|
||||
|
||||
Integer idosoGratuidade = volta.getGratuidadeIdosoIda();
|
||||
Integer idosoDesconto = volta.getDescontoIdosoIda();
|
||||
Integer passeLivre = volta.getGratuidadePasseLivreIda();
|
||||
Integer passageiros = volta.getPassageirosIda();
|
||||
|
||||
volta.setGratuidadeIdosoVolta(idosoGratuidade);
|
||||
volta.setDescontoIdosoVolta(idosoDesconto);
|
||||
volta.setGratuidadePasseLivreVolta(passeLivre);
|
||||
volta.setPassageirosVolta(passageiros);
|
||||
|
||||
volta.setGratuidadeIdosoIda(0);
|
||||
volta.setDescontoIdosoIda(0);
|
||||
volta.setGratuidadePasseLivreIda(0);
|
||||
volta.setPassageirosIda(0);
|
||||
|
||||
volta.setLocalDestino(origem);
|
||||
volta.setLocalOrige(destino);
|
||||
volta.setLocalOrigem(destino);
|
||||
listResultIdaVoltaInvertida.add(volta);
|
||||
}
|
||||
}
|
||||
|
@ -309,7 +326,7 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
ms.setAntt(prefixoAntt.getAntt());
|
||||
ms.setPrefixo(prefixoAntt.getPrefixo());
|
||||
ms.setLocalDestino(prefixoAntt.getLocalDestino());
|
||||
ms.setLocalOrige(prefixoAntt.getLocalOrigem());
|
||||
ms.setLocalOrigem(prefixoAntt.getLocalOrigem());
|
||||
|
||||
ms.setDescontoIdosoIda(NumberUtils.INTEGER_ZERO);
|
||||
ms.setDescontoIdosoVolta(NumberUtils.INTEGER_ZERO);
|
||||
|
@ -442,14 +459,14 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
sb.append(" left outer join parada po ON po.parada_id = b.origen_id ");
|
||||
sb.append(" left outer join parada pd ON pd.parada_id = b.destino_id ");
|
||||
|
||||
sb.append(" WHERE m.marca_id = :empresaId ");
|
||||
sb.append(" WHERE m.marca_id = ? ");
|
||||
sb.append(" AND re.activo = 1 ");
|
||||
sb.append(" AND r.activo = 1 ");
|
||||
sb.append(" AND r.orgaoconcedente_id = 3 ");
|
||||
sb.append(" AND b.numasiento IS NOT NULL ");
|
||||
sb.append(" AND b.motivocancelacion_id IS NULL ");
|
||||
sb.append(" AND e.codantt IS NOT NULL ");
|
||||
sb.append(" AND c.feccorrida BETWEEN To_date(:fecInicio, 'DD/MM/YYYY') AND To_date (:fecFinal, 'DD/MM/YYYY') ");
|
||||
sb.append(" AND c.feccorrida BETWEEN To_date(?, 'DD/MM/YYYY') AND To_date (?, 'DD/MM/YYYY') ");
|
||||
sb.append(" AND b.categoria_id <> (select valorconstante from constante where NOMBCONSTANTE = 'GRATUIDADE_CRIANCA')");
|
||||
sb.append(" GROUP BY e.codantt, ");
|
||||
sb.append(" r.prefixo, ");
|
||||
|
@ -485,30 +502,19 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
sb.append(" prefixo, ");
|
||||
sb.append(" localOrigem, ");
|
||||
sb.append(" localDestino ");
|
||||
|
||||
Query query = getSession().createSQLQuery(sb.toString())
|
||||
.addScalar("antt", StringType.INSTANCE)
|
||||
.addScalar("prefixo", StringType.INSTANCE)
|
||||
.addScalar("mes", IntegerType.INSTANCE)
|
||||
.addScalar("ano", IntegerType.INSTANCE)
|
||||
.addScalar("localOrigem", StringType.INSTANCE)
|
||||
.addScalar("localDestino", StringType.INSTANCE)
|
||||
.addScalar("passageirosIda", IntegerType.INSTANCE)
|
||||
.addScalar("passageirosVolta", IntegerType.INSTANCE)
|
||||
.addScalar("gratuidadePasseLivreIda", IntegerType.INSTANCE)
|
||||
.addScalar("gratuidadePasseLivreVolta", IntegerType.INSTANCE)
|
||||
.addScalar("gratuidadeIdosoIda", IntegerType.INSTANCE)
|
||||
.addScalar("gratuidadeIdosoVolta", IntegerType.INSTANCE)
|
||||
.addScalar("descontoIdosoIda", IntegerType.INSTANCE)
|
||||
.addScalar("descontoIdosoVolta", IntegerType.INSTANCE);
|
||||
|
||||
query.setResultTransformer(new AliasToBeanResultTransformer(MovimentoSecoes.class));
|
||||
|
||||
query.setParameter("fecInicio", sdf.format(fecInicio));
|
||||
query.setParameter("fecFinal", sdf.format(fecFinal));
|
||||
query.setParameter("empresaId", empresaId);
|
||||
|
||||
return query.list();
|
||||
|
||||
QueryRunner queryRunner = new QueryRunner(dataSourceRead);
|
||||
ResultSetHandler<List<MovimentoSecoes>> handler = new BeanListHandler<MovimentoSecoes>(MovimentoSecoes.class);
|
||||
List<MovimentoSecoes> returnedList = null;
|
||||
|
||||
try {
|
||||
returnedList = queryRunner.query(sb.toString(), handler, empresaId, sdf.format(fecInicio), sdf.format(fecFinal));
|
||||
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return returnedList;
|
||||
}
|
||||
|
||||
private List<PrefixoAntt> buscaPrefixoEmpresaOrigenDestino(Integer empresaId) {
|
||||
|
@ -544,7 +550,7 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
sb.append(" ON re.ruta_id = ru.ruta_id, ");
|
||||
sb.append(" parada po, ");
|
||||
sb.append(" parada pd ");
|
||||
sb.append(" WHERE re.empresa_id = :empresaId ");
|
||||
sb.append(" WHERE re.empresa_id = ? ");
|
||||
sb.append(" AND ru.orgaoconcedente_id = 3 ");
|
||||
sb.append(" AND re.activo = 1 ");
|
||||
sb.append(" AND ru.activo = 1 ");
|
||||
|
@ -635,47 +641,16 @@ public class SisdapHibernateDAO extends HibernateDaoSupport implements SisdapDAO
|
|||
sb.append(" po.codantt, ");
|
||||
sb.append(" pd.codantt ");
|
||||
|
||||
Query query = getSession().createSQLQuery(sb.toString())
|
||||
.addScalar("antt", StringType.INSTANCE)
|
||||
.addScalar("prefixo", StringType.INSTANCE)
|
||||
.addScalar("localOrigem", StringType.INSTANCE)
|
||||
.addScalar("localDestino", StringType.INSTANCE);
|
||||
query.setResultTransformer(new AliasToBeanResultTransformer(PrefixoAntt.class));
|
||||
|
||||
query.setParameter("empresaId", empresaId);
|
||||
|
||||
return query.list();
|
||||
QueryRunner queryRunner = new QueryRunner(dataSourceRead);
|
||||
ResultSetHandler<List<PrefixoAntt>> handler = new BeanListHandler<PrefixoAntt>(PrefixoAntt.class);
|
||||
|
||||
List<PrefixoAntt> returnedList = null;
|
||||
|
||||
try {
|
||||
returnedList = queryRunner.query(sb.toString(), handler, empresaId);
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return returnedList;
|
||||
}
|
||||
|
||||
// private boolean agrupaMovimentoSecoes(List<MovimentoSecoes> resul, MovimentoSecoes movimentoSecao) {
|
||||
//
|
||||
// if (resul.isEmpty()) {
|
||||
// return true;
|
||||
// } else {
|
||||
// for (MovimentoSecoes ms : resul) {
|
||||
// if (ms.getPrefixo().equals(movimentoSecao.getPrefixo()) && ms.getMes().equals(movimentoSecao.getMes())
|
||||
// && ms.getAno().equals(movimentoSecao.getAno()) && ms.getLocalOrigem().equals(movimentoSecao.getLocalOrigem())
|
||||
// && ms.getLocalDestino().equals(movimentoSecao.getLocalDestino())) {
|
||||
//
|
||||
// ms.setDescontoIdosoIda(ms.getDescontoIdosoIda() + movimentoSecao.getDescontoIdosoIda());
|
||||
// ms.setDescontoIdosoVolta(ms.getDescontoIdosoVolta() + movimentoSecao.getDescontoIdosoVolta());
|
||||
//
|
||||
// ms.setGratuidadeIdosoIda(ms.getGratuidadeIdosoIda() + movimentoSecao.getGratuidadeIdosoIda());
|
||||
// ms.setGratuidadeIdosoVolta(ms.getGratuidadeIdosoVolta() + movimentoSecao.getGratuidadeIdosoVolta());
|
||||
//
|
||||
// ms.setGratuidadePasseLivreIda(ms.getGratuidadePasseLivreIda() + movimentoSecao.getGratuidadePasseLivreIda());
|
||||
// ms.setGratuidadePasseLivreVolta(ms.getGratuidadePasseLivreVolta() + movimentoSecao.getGratuidadePasseLivreVolta());
|
||||
//
|
||||
// ms.setPassageirosIda(ms.getPassageirosIda() + movimentoSecao.getPassageirosIda());
|
||||
// ms.setPassageirosVolta(ms.getPassageirosVolta() + movimentoSecao.getPassageirosVolta());
|
||||
//
|
||||
// return false;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return true;
|
||||
// }
|
||||
|
||||
}
|
||||
}
|
|
@ -53,8 +53,8 @@ public class MovimentoSecoes {
|
|||
return localOrigem;
|
||||
}
|
||||
|
||||
public void setLocalOrige(String localOrige) {
|
||||
this.localOrigem = localOrige;
|
||||
public void setLocalOrigem(String localOrigem) {
|
||||
this.localOrigem = localOrigem;
|
||||
}
|
||||
|
||||
public String getLocalDestino() {
|
||||
|
|
Loading…
Reference in New Issue