0013237: Horarios Unesul 11/01 à 13/01
fixes bug#0013237 dev:leo qua:Renato git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@88898 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
1f3eb3d692
commit
6e712f963a
|
@ -13,6 +13,7 @@ import java.util.GregorianCalendar;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.commons.lang.math.NumberUtils;
|
import org.apache.commons.lang.math.NumberUtils;
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
import org.hibernate.Criteria;
|
import org.hibernate.Criteria;
|
||||||
import org.hibernate.Query;
|
import org.hibernate.Query;
|
||||||
import org.hibernate.SQLQuery;
|
import org.hibernate.SQLQuery;
|
||||||
|
@ -57,6 +58,9 @@ public class CorridaHibernateDAO extends GenericHibernateDAO<Corrida, Corrida.Id
|
||||||
@Autowired
|
@Autowired
|
||||||
private CorridaTramoDAO corridaTramoDao;
|
private CorridaTramoDAO corridaTramoDao;
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
private static Logger log = Logger.getLogger(CorridaHibernateDAO.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public CorridaHibernateDAO(@Qualifier("sessionFactory") final SessionFactory factory) {
|
public CorridaHibernateDAO(@Qualifier("sessionFactory") final SessionFactory factory) {
|
||||||
setSessionFactory(factory);
|
setSessionFactory(factory);
|
||||||
|
@ -720,41 +724,59 @@ public class CorridaHibernateDAO extends GenericHibernateDAO<Corrida, Corrida.Id
|
||||||
for (Corrida corrida : corridas) {
|
for (Corrida corrida : corridas) {
|
||||||
List<CorridaTramo> tramos = corridaTramoDao.buscarCorridaTramoPorCorrida(corrida);
|
List<CorridaTramo> tramos = corridaTramoDao.buscarCorridaTramoPorCorrida(corrida);
|
||||||
|
|
||||||
for (CorridaTramo tramo : tramos) {
|
try{
|
||||||
for (CorridaTramo tramoPadrao : tramosPadrao) {
|
for (CorridaTramo tramo : tramos) {
|
||||||
if (tramoPadrao.getNumsecuencia().equals(tramo.getNumsecuencia())) {
|
|
||||||
tramo.setFechorsalida(mudarData(tramoPadrao.getFechorsalida(), tramo.getFechorsalida()));
|
for (CorridaTramo tramoPadrao : tramosPadrao) {
|
||||||
tramo.setFechorsalidaH(mudarData(tramoPadrao.getFechorsalidaH(), tramo.getFechorsalidaH()));
|
if (tramoPadrao.getNumsecuencia().equals(tramo.getNumsecuencia())) {
|
||||||
tramo.setFechorSalidaOriginal(mudarData(tramoPadrao.getFechorSalidaOriginal(), tramo.getFechorSalidaOriginal()));
|
tramo.setFechorsalida(mudarData(tramoPadrao.getFechorsalida(), tramo.getFechorsalida()));
|
||||||
tramo.setFechorllegada(mudarData(tramoPadrao.getFechorllegada(), tramo.getFechorllegada()));
|
tramo.setFechorsalidaH(mudarData(tramoPadrao.getFechorsalidaH(), tramo.getFechorsalidaH()));
|
||||||
tramo.setFechorllegadaH(mudarData(tramoPadrao.getFechorllegadaH(), tramo.getFechorllegadaH()));
|
tramo.setFechorSalidaOriginal(mudarData(tramoPadrao.getFechorSalidaOriginal(), tramo.getFechorSalidaOriginal()));
|
||||||
corridaTramoDao.actualizacion(tramo);
|
tramo.setFechorllegada(mudarData(tramoPadrao.getFechorllegada(), tramo.getFechorllegada()));
|
||||||
break;
|
tramo.setFechorllegadaH(mudarData(tramoPadrao.getFechorllegadaH(), tramo.getFechorllegadaH()));
|
||||||
|
corridaTramoDao.actualizacion(tramo);
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}catch(Exception e){
|
||||||
|
log.error(e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Date mudarData(Date dataPadrao, Date dataMudanca) {
|
private Date mudarData(Date dataPadrao, Date dataMudanca) {
|
||||||
Calendar calPadrao = Calendar.getInstance();
|
try{
|
||||||
calPadrao.setTime(dataPadrao);
|
Calendar calPadrao = Calendar.getInstance();
|
||||||
Calendar calMudanca = Calendar.getInstance();
|
calPadrao.setTime(dataPadrao);
|
||||||
calMudanca.setTime(dataMudanca);
|
Calendar calMudanca = Calendar.getInstance();
|
||||||
|
calMudanca.setTime(dataMudanca);
|
||||||
|
|
||||||
calMudanca.set(calMudanca.get(Calendar.YEAR), calMudanca.get(Calendar.MONTH), calMudanca.get(Calendar.DAY_OF_MONTH),
|
calMudanca.set(calMudanca.get(Calendar.YEAR), calMudanca.get(Calendar.MONTH), calMudanca.get(Calendar.DAY_OF_MONTH),
|
||||||
calPadrao.get(Calendar.HOUR_OF_DAY), calPadrao.get(Calendar.MINUTE), calPadrao.get(Calendar.SECOND));
|
calPadrao.get(Calendar.HOUR_OF_DAY), calPadrao.get(Calendar.MINUTE), calPadrao.get(Calendar.SECOND));
|
||||||
return calMudanca.getTime();
|
return calMudanca.getTime();
|
||||||
|
}catch(Exception e){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Corrida buscarPorId(Id id) {
|
public Corrida buscarPorId(Id id) {
|
||||||
Criteria c = makeCriteria();
|
|
||||||
c.add(Restrictions.eq("id", id));
|
StringBuilder hql = new StringBuilder();
|
||||||
return (Corrida) c.uniqueResult();
|
|
||||||
|
hql.append(" from Corrida corrida ");
|
||||||
|
hql.append(" where corrida.id.feccorrida = :feccorrida ");
|
||||||
|
hql.append(" and corrida.id.corridaId = :corridaId )");
|
||||||
|
|
||||||
|
Query query = getSession().createQuery(hql.toString());
|
||||||
|
query.setDate("feccorrida", id.getFeccorrida());
|
||||||
|
query.setInteger("corridaId", id.getCorridaId());
|
||||||
|
|
||||||
|
query.setMaxResults(1);
|
||||||
|
return (Corrida)query.uniqueResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,10 +3,15 @@ package com.rjconsultores.ventaboletos.dao.hibernate;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
import org.hibernate.Criteria;
|
import org.hibernate.Criteria;
|
||||||
|
import org.hibernate.HibernateException;
|
||||||
import org.hibernate.Query;
|
import org.hibernate.Query;
|
||||||
import org.hibernate.SessionFactory;
|
import org.hibernate.SessionFactory;
|
||||||
import org.hibernate.criterion.Restrictions;
|
import org.hibernate.criterion.Restrictions;
|
||||||
|
import org.hibernate.transform.AliasToBeanResultTransformer;
|
||||||
|
import org.hibernate.type.ShortType;
|
||||||
|
import org.hibernate.type.TimestampType;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
@ -24,6 +29,9 @@ public class CorridaTramoHibernateDAO extends GenericHibernateDAO<CorridaTramo,
|
||||||
setSessionFactory(factory);
|
setSessionFactory(factory);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
private static Logger log = Logger.getLogger(CorridaTramoHibernateDAO.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<CorridaTramo> obtenerTramoTarjetaEmitida() {
|
public List<CorridaTramo> obtenerTramoTarjetaEmitida() {
|
||||||
Criteria c = getSession().createCriteria(getPersistentClass());
|
Criteria c = getSession().createCriteria(getPersistentClass());
|
||||||
|
@ -45,11 +53,28 @@ public class CorridaTramoHibernateDAO extends GenericHibernateDAO<CorridaTramo,
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<CorridaTramo> buscarCorridaTramoPorCorrida(Corrida corrida) {
|
public List<CorridaTramo> buscarCorridaTramoPorCorrida(Corrida corrida) {
|
||||||
Criteria c = getSession().createCriteria(getPersistentClass());
|
try{
|
||||||
c.add(Restrictions.eq("activo", ActivoUtil.ATIVO));
|
String queryStr = "select ct.Numsecuencia as Numsecuencia, ct.Fechorsalida as Fechorsalida, ct.FechorsalidaH as FechorsalidaH, ct.FechorSalidaOriginal as FechorSalidaOriginal, ct.Fechorllegada as Fechorllegada, ct.FechorllegadaH as FechorllegadaH from Corrida_Tramo ct where ct.activo = :activo and ct.corrida_id = :corridaId and ct.feccorrida = :feccorrida ";
|
||||||
c.add(Restrictions.eq("corrida", corrida));
|
Query query = getSession().createSQLQuery(queryStr).addScalar("numsecuencia", ShortType.INSTANCE)
|
||||||
|
.addScalar("fechorsalida", TimestampType.INSTANCE)
|
||||||
|
.addScalar("fechorsalidaH", TimestampType.INSTANCE)
|
||||||
|
.addScalar("fechorSalidaOriginal", TimestampType.INSTANCE)
|
||||||
|
.addScalar("fechorllegada", TimestampType.INSTANCE)
|
||||||
|
.addScalar("fechorllegadaH", TimestampType.INSTANCE);
|
||||||
|
|
||||||
return c.list();
|
query.setInteger("activo", ActivoUtil.ATIVO);
|
||||||
|
query.setInteger("corridaId", corrida.getId().getCorridaId());
|
||||||
|
query.setDate("feccorrida", corrida.getId().getFeccorrida());
|
||||||
|
|
||||||
|
query.setResultTransformer(new AliasToBeanResultTransformer(CorridaTramo.class));
|
||||||
|
|
||||||
|
|
||||||
|
return (List<CorridaTramo>)query.list();
|
||||||
|
|
||||||
|
}catch(HibernateException e){
|
||||||
|
log.error(e.getMessage());
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal buscarSumTarjetaMesmaCorrida(CorridaTramo ct) {
|
public BigDecimal buscarSumTarjetaMesmaCorrida(CorridaTramo ct) {
|
||||||
|
|
Loading…
Reference in New Issue