diff --git a/src/com/rjconsultores/ventaboletos/dao/ConexionDescuentoDAO.java b/src/com/rjconsultores/ventaboletos/dao/ConexionDescuentoDAO.java new file mode 100644 index 000000000..2a0a204bc --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/ConexionDescuentoDAO.java @@ -0,0 +1,9 @@ +package com.rjconsultores.ventaboletos.dao; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.ConexionDescuento; + +public interface ConexionDescuentoDAO extends GenericDAO { + public List bucarPorConexion(Long conexionId); +} diff --git a/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java b/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java index 34f1c0f30..53c271655 100644 --- a/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/CorridaDAO.java @@ -95,4 +95,6 @@ public interface CorridaDAO extends GenericDAO { List buscarCorridaRelAproveitamento(Parada origem, Parada destino, Date feccorrida, Integer corridaId); + public Boolean existeCorrida(Long id); + } \ No newline at end of file diff --git a/src/com/rjconsultores/ventaboletos/dao/GenericDAO.java b/src/com/rjconsultores/ventaboletos/dao/GenericDAO.java index 5058938dc..701153b0a 100644 --- a/src/com/rjconsultores/ventaboletos/dao/GenericDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/GenericDAO.java @@ -4,6 +4,7 @@ */ package com.rjconsultores.ventaboletos.dao; +import java.util.Collection; import java.util.List; /** @@ -12,16 +13,18 @@ import java.util.List; */ public interface GenericDAO { - public List obtenerTodos(); + public List obtenerTodos(); - public T obtenerID(ID id); + public T obtenerID(ID id); - public T suscribir(T entidad); + public T suscribir(T entidad); - public T actualizacion(T entidad); + public T actualizacion(T entidad); - public void borrar(T entidad); - - public Long count(String campo,Object o); + public void borrar(T entidad); + + public Long count(String campo, Object o); + + public void suscribirTodos(Collection entidades); } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/ConexionDescuentoHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/ConexionDescuentoHibernateDAO.java new file mode 100644 index 000000000..b872abfcd --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/ConexionDescuentoHibernateDAO.java @@ -0,0 +1,33 @@ +package com.rjconsultores.ventaboletos.dao.hibernate; + +import java.util.List; + +import org.hibernate.Criteria; +import org.hibernate.SessionFactory; +import org.hibernate.criterion.Restrictions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Repository; + +import com.rjconsultores.ventaboletos.dao.ConexionDescuentoDAO; +import com.rjconsultores.ventaboletos.entidad.ConexionDescuento; + +@Repository("conexionDescuentoDAO") +public class ConexionDescuentoHibernateDAO extends GenericHibernateDAO +implements ConexionDescuentoDAO { + + @Autowired + public ConexionDescuentoHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { + setSessionFactory(factory); + } + + @Override + @SuppressWarnings("unchecked") + public List bucarPorConexion(Long conexionId) { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("conexion.conexionId", conexionId)); + c.add(Restrictions.eq("activo", true)); + return c.list(); + } + +} diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java index a771b51d5..389c1b244 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaHibernateDAO.java @@ -711,36 +711,35 @@ public class CorridaHibernateDAO extends GenericHibernateDAO corridas, Corrida corridaPadrao) { List tramosPadrao = corridaTramoDao.buscarCorridaTramoPorCorrida(corridaPadrao); - + for (Corrida corrida : corridas) { List tramos = corridaTramoDao.buscarCorridaTramoPorCorrida(corrida); - + for (CorridaTramo tramo : tramos) { for (CorridaTramo tramoPadrao : tramosPadrao) { - if(tramoPadrao.getNumsecuencia().equals(tramo.getNumsecuencia())){ - tramo.setFechorsalida(mudarData(tramoPadrao.getFechorsalida(), tramo.getFechorsalida())); - tramo.setFechorsalidaH(mudarData(tramoPadrao.getFechorsalidaH(), tramo.getFechorsalidaH())); - tramo.setFechorSalidaOriginal(mudarData(tramoPadrao.getFechorSalidaOriginal(), tramo.getFechorSalidaOriginal())); - tramo.setFechorllegada(mudarData(tramoPadrao.getFechorllegada(), tramo.getFechorllegada())); - tramo.setFechorllegadaH(mudarData(tramoPadrao.getFechorllegadaH(), tramo.getFechorllegadaH())); + if (tramoPadrao.getNumsecuencia().equals(tramo.getNumsecuencia())) { + tramo.setFechorsalida(mudarData(tramoPadrao.getFechorsalida(), tramo.getFechorsalida())); + tramo.setFechorsalidaH(mudarData(tramoPadrao.getFechorsalidaH(), tramo.getFechorsalidaH())); + tramo.setFechorSalidaOriginal(mudarData(tramoPadrao.getFechorSalidaOriginal(), tramo.getFechorSalidaOriginal())); + tramo.setFechorllegada(mudarData(tramoPadrao.getFechorllegada(), tramo.getFechorllegada())); + tramo.setFechorllegadaH(mudarData(tramoPadrao.getFechorllegadaH(), tramo.getFechorllegadaH())); corridaTramoDao.actualizacion(tramo); break; } - + } - - + } } return true; } - - private Date mudarData(Date dataPadrao,Date dataMudanca){ + + private Date mudarData(Date dataPadrao, Date dataMudanca) { Calendar calPadrao = Calendar.getInstance(); calPadrao.setTime(dataPadrao); Calendar calMudanca = Calendar.getInstance(); calMudanca.setTime(dataMudanca); - + 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)); return calMudanca.getTime(); @@ -752,94 +751,105 @@ public class CorridaHibernateDAO extends GenericHibernateDAO buscarCorridaRelAproveitamento( Parada origem, Parada destino, + public List buscarCorridaRelAproveitamento(Parada origem, Parada destino, Date feccorrida, Integer corridaId) { - StringBuilder sql = new StringBuilder(); - sql.append(" select "); - sql.append(" c.corrida_id as corrida_id, "); - sql.append(" c.feccorrida as feccorrida, "); - sql.append(" c.fechorsalida as fechorsalida, "); - sql.append(" origen.parada_id as origen_id, "); - sql.append(" origen.descparada as origen, "); - sql.append(" destino.parada_id as destino_id, "); - sql.append(" destino.descparada as destino, "); - sql.append(" r.ruta_id as ruta_id, "); - sql.append(" r.descruta as descruta, "); - sql.append(" cs.claseservicio_id as claseservicio_id, "); - sql.append(" cs.descclase as descclase "); - sql.append(" from corrida c "); - sql.append(" inner join parada origen on c.origen_id = origen.parada_id "); - sql.append(" inner join parada destino on c.destino_id = destino.parada_id "); - sql.append(" inner join ruta r on c.ruta_id = r.ruta_id "); - sql.append(" inner join clase_servicio cs on c.claseservicio_id = cs.claseservicio_id "); - sql.append(" where c.activo <> 0 "); - if(corridaId!=null){ - sql.append(" and c.corrida_id = :corridaId "); - } - sql.append(feccorrida == null ? "" : " and c.feccorrida = :feccorrida "); - if(origem!=null){ - sql.append(origem == null ? "" : " and c.origen_id = :origen_id "); - } - if(destino!=null){ - sql.append(destino == null ? "" : " and c.destino_id = :destino_id "); - } + StringBuilder sql = new StringBuilder(); + sql.append(" select "); + sql.append(" c.corrida_id as corrida_id, "); + sql.append(" c.feccorrida as feccorrida, "); + sql.append(" c.fechorsalida as fechorsalida, "); + sql.append(" origen.parada_id as origen_id, "); + sql.append(" origen.descparada as origen, "); + sql.append(" destino.parada_id as destino_id, "); + sql.append(" destino.descparada as destino, "); + sql.append(" r.ruta_id as ruta_id, "); + sql.append(" r.descruta as descruta, "); + sql.append(" cs.claseservicio_id as claseservicio_id, "); + sql.append(" cs.descclase as descclase "); + sql.append(" from corrida c "); + sql.append(" inner join parada origen on c.origen_id = origen.parada_id "); + sql.append(" inner join parada destino on c.destino_id = destino.parada_id "); + sql.append(" inner join ruta r on c.ruta_id = r.ruta_id "); + sql.append(" inner join clase_servicio cs on c.claseservicio_id = cs.claseservicio_id "); + sql.append(" where c.activo <> 0 "); + if (corridaId != null) { + sql.append(" and c.corrida_id = :corridaId "); + } + sql.append(feccorrida == null ? "" : " and c.feccorrida = :feccorrida "); + if (origem != null) { + sql.append(origem == null ? "" : " and c.origen_id = :origen_id "); + } + if (destino != null) { + sql.append(destino == null ? "" : " and c.destino_id = :destino_id "); + } - Query query = getSession().createSQLQuery(sql.toString()); - if (corridaId != null) { - query.setParameter("corridaId", corridaId); - } - query.setParameter("feccorrida", feccorrida); - if(origem!=null){ - query.setParameter("origen_id", origem.getParadaId()); - } - if(destino!=null){ - query.setParameter("destino_id", destino.getParadaId()); - } + Query query = getSession().createSQLQuery(sql.toString()); + if (corridaId != null) { + query.setParameter("corridaId", corridaId); + } + query.setParameter("feccorrida", feccorrida); + if (origem != null) { + query.setParameter("origen_id", origem.getParadaId()); + } + if (destino != null) { + query.setParameter("destino_id", destino.getParadaId()); + } - List lsObject = query.list(); + List lsObject = query.list(); - List lsCorridas = new ArrayList(); + List lsCorridas = new ArrayList(); - if (lsObject != null && !lsObject.isEmpty()) { + if (lsObject != null && !lsObject.isEmpty()) { - for (Object object : lsObject) { - if(object!=null){ - Object objectArray[] = (Object[]) object; - Id id = new Id(); - id.setCorridaId(((BigDecimal)objectArray[0]).intValue()); - id.setFeccorrida((Timestamp)objectArray[1]); - - Parada o = new Parada(); - o.setParadaId(((BigDecimal)objectArray[3]).intValue()); - o.setDescparada((String)objectArray[4]); - - Parada d = new Parada(); - d.setParadaId(((BigDecimal)objectArray[5]).intValue()); - d.setDescparada((String)objectArray[6]); - - Ruta ruta = new Ruta(); - ruta.setRutaId(((BigDecimal)objectArray[7]).intValue()); - ruta.setDescruta((String)objectArray[8]); - - ClaseServicio claseServicio = new ClaseServicio(); - claseServicio.setClaseservicioId(((BigDecimal)objectArray[9]).intValue()); - claseServicio.setDescclase((String)objectArray[10]); - - Corrida corrida = new Corrida(); - corrida.setId(id); - corrida.setFechorsalida((Timestamp)objectArray[2]); - corrida.setOrigem(o); - corrida.setDestino(d); - corrida.setRuta(ruta); - corrida.setClaseServicio(claseServicio); - - lsCorridas.add(corrida); - } + for (Object object : lsObject) { + if (object != null) { + Object objectArray[] = (Object[]) object; + Id id = new Id(); + id.setCorridaId(((BigDecimal) objectArray[0]).intValue()); + id.setFeccorrida((Timestamp) objectArray[1]); + + Parada o = new Parada(); + o.setParadaId(((BigDecimal) objectArray[3]).intValue()); + o.setDescparada((String) objectArray[4]); + + Parada d = new Parada(); + d.setParadaId(((BigDecimal) objectArray[5]).intValue()); + d.setDescparada((String) objectArray[6]); + + Ruta ruta = new Ruta(); + ruta.setRutaId(((BigDecimal) objectArray[7]).intValue()); + ruta.setDescruta((String) objectArray[8]); + + ClaseServicio claseServicio = new ClaseServicio(); + claseServicio.setClaseservicioId(((BigDecimal) objectArray[9]).intValue()); + claseServicio.setDescclase((String) objectArray[10]); + + Corrida corrida = new Corrida(); + corrida.setId(id); + corrida.setFechorsalida((Timestamp) objectArray[2]); + corrida.setOrigem(o); + corrida.setDestino(d); + corrida.setRuta(ruta); + corrida.setClaseServicio(claseServicio); + + lsCorridas.add(corrida); } } - return lsCorridas; + } + return lsCorridas; + } + + @Override + public Boolean existeCorrida(Long id) { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("id.corridaId", id.intValue())); + c.setMaxResults(1); + if (c.uniqueResult() != null) { + return true; + } + return false; } } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/GenericHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/GenericHibernateDAO.java index e5f32d082..edd49c964 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/GenericHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/GenericHibernateDAO.java @@ -7,6 +7,7 @@ package com.rjconsultores.ventaboletos.dao.hibernate; import com.rjconsultores.ventaboletos.dao.GenericDAO; import java.io.Serializable; import java.lang.reflect.ParameterizedType; +import java.util.Collection; import java.util.List; import org.hibernate.Criteria; import org.hibernate.HibernateException; @@ -104,4 +105,8 @@ public class GenericHibernateDAO extends HibernateDa return HibernateFix.count(c.list()); } + + public void suscribirTodos(Collection entidades) { + getHibernateTemplate().saveOrUpdateAll(entidades); + } } diff --git a/src/com/rjconsultores/ventaboletos/entidad/Conexion.java b/src/com/rjconsultores/ventaboletos/entidad/Conexion.java index 1505a62f2..e5cf0eef7 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/Conexion.java +++ b/src/com/rjconsultores/ventaboletos/entidad/Conexion.java @@ -5,7 +5,9 @@ package com.rjconsultores.ventaboletos.entidad; import java.io.Serializable; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import javax.persistence.Basic; import javax.persistence.Column; @@ -13,10 +15,13 @@ import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.OneToMany; import javax.persistence.SequenceGenerator; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; +import javax.persistence.Transient; +import javax.persistence.Version; /** * @@ -51,6 +56,8 @@ public class Conexion implements Serializable { private Long conexionctrlId; @Column(name = "CORRIDA_ID") private Long corridaId; + @Transient + private List conexionesDescuentos; public Long getCorridaId() { return corridaId; @@ -61,10 +68,12 @@ public class Conexion implements Serializable { } public Conexion() { + this(null); } public Conexion(Long conexionId) { this.conexionId = conexionId; + conexionesDescuentos = new ArrayList(); } public Long getConexionId() { @@ -166,4 +175,13 @@ public class Conexion implements Serializable { public void setDestinoId(Integer destinoId) { this.destinoId = destinoId; } + + public List getConexionesDescuentos() { + return conexionesDescuentos; + } + + public void setConexionesDescuentos(List conexionesDescuentos) { + this.conexionesDescuentos = conexionesDescuentos; + } + } diff --git a/src/com/rjconsultores/ventaboletos/entidad/ConexionCtrl.java b/src/com/rjconsultores/ventaboletos/entidad/ConexionCtrl.java index f44095e95..0c2fc0132 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/ConexionCtrl.java +++ b/src/com/rjconsultores/ventaboletos/entidad/ConexionCtrl.java @@ -41,16 +41,6 @@ public class ConexionCtrl implements Serializable { private Integer origenId; @Column(name = "DESTINO_ID") private Integer destinoId; - @Column(name = "INDFIXA") - private Integer indfixa; - - public Integer getIndfixa() { - return indfixa; - } - - public void setIndfixa(Integer indfixa) { - this.indfixa = indfixa; - } public ConexionCtrl() { } diff --git a/src/com/rjconsultores/ventaboletos/entidad/ConexionDescuento.java b/src/com/rjconsultores/ventaboletos/entidad/ConexionDescuento.java new file mode 100644 index 000000000..1677e5256 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/entidad/ConexionDescuento.java @@ -0,0 +1,124 @@ +package com.rjconsultores.ventaboletos.entidad; + +import java.math.BigDecimal; +import java.util.Date; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.SequenceGenerator; +import javax.persistence.Table; + +@Entity +@SequenceGenerator(name = "CONEXION_DESCUENTO_SEQ", sequenceName = "CONEXION_DESCUENTO_SEQ", allocationSize = 1) +@Table(name = "CONEXION_DESCUENTO") +public class ConexionDescuento { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO, generator = "CONEXION_DESCUENTO_SEQ") + @Column(name = "CONEXIONDESCUENTO_ID") + private Long idConexionDescuento; + + @Column + private Boolean activo; + + @ManyToOne + @JoinColumn(name = "CONEXION_ID") + private Conexion conexion; + + @ManyToOne(targetEntity = ClaseServicio.class) + @JoinColumn(name = "CLASSESERVICIO_ID") + private ClaseServicio claseServicio; + + @Column + private Short secuencia; + + @Column + private Integer grupo; + + @Column + private BigDecimal descuento; + + @Column + private Date fecModif; + + public Long getIdConexionDescuento() { + return idConexionDescuento; + } + + public void setIdConexionDescuento(Long idConexionDescuento) { + this.idConexionDescuento = idConexionDescuento; + } + + public Boolean getActivo() { + return activo; + } + + public void setActivo(Boolean activo) { + this.activo = activo; + } + + public Conexion getConexion() { + return conexion; + } + + public void setConexion(Conexion conexion) { + this.conexion = conexion; + } + + public ClaseServicio getClaseServicio() { + return claseServicio; + } + + public void setClaseServicio(ClaseServicio claseServicio) { + this.claseServicio = claseServicio; + } + + public Short getSecuencia() { + return secuencia; + } + + public void setSecuencia(Short secuencia) { + this.secuencia = secuencia; + } + + public Integer getGrupo() { + return grupo; + } + + public void setGrupo(Integer grupo) { + this.grupo = grupo; + } + + public BigDecimal getDescuento() { + return descuento; + } + + public void setDescuento(BigDecimal descuento) { + this.descuento = descuento; + } + + public Date getFecModif() { + return fecModif; + } + + public void setFecModif(Date fecModif) { + this.fecModif = fecModif; + } + + @Override + public boolean equals(Object obj) { + if (!(obj instanceof ConexionDescuento)) { + return false; + } + ConexionDescuento other = (ConexionDescuento) obj; + if(this.getClaseServicio()==null &&other.getClaseServicio()==null){ + return true; + } + return this.getClaseServicio().equals(other.getClaseServicio()); + } +} diff --git a/src/com/rjconsultores/ventaboletos/service/ConexionConfService.java b/src/com/rjconsultores/ventaboletos/service/ConexionConfService.java index 5d48b7f87..e6944ebea 100644 --- a/src/com/rjconsultores/ventaboletos/service/ConexionConfService.java +++ b/src/com/rjconsultores/ventaboletos/service/ConexionConfService.java @@ -1,5 +1,6 @@ package com.rjconsultores.ventaboletos.service; +import java.util.Collection; import java.util.List; import com.rjconsultores.ventaboletos.entidad.ConexionConf; @@ -10,4 +11,6 @@ public interface ConexionConfService extends GenericService public ConexionConf buscar(Long conexionCtrlId, Integer numgrupo); public List buscarPorConexionCtrl(ConexionCtrl entidad); + + public void suscribirTodos(Collection conexionesConf); } diff --git a/src/com/rjconsultores/ventaboletos/service/ConexionDescuentoService.java b/src/com/rjconsultores/ventaboletos/service/ConexionDescuentoService.java new file mode 100644 index 000000000..09300978a --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/ConexionDescuentoService.java @@ -0,0 +1,16 @@ +package com.rjconsultores.ventaboletos.service; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.Conexion; +import com.rjconsultores.ventaboletos.entidad.ConexionDescuento; + +public interface ConexionDescuentoService { + public List buscarPorConexion(Conexion conexion); + + public ConexionDescuento suscribir(ConexionDescuento conexionDescuento); + + public void borrar(ConexionDescuento conexionDescuento); + + public void suscribirTodos(List conexionesDescuentos); +} diff --git a/src/com/rjconsultores/ventaboletos/service/ConexionService.java b/src/com/rjconsultores/ventaboletos/service/ConexionService.java index 7753e9ec8..e8e841133 100644 --- a/src/com/rjconsultores/ventaboletos/service/ConexionService.java +++ b/src/com/rjconsultores/ventaboletos/service/ConexionService.java @@ -27,4 +27,6 @@ public interface ConexionService { public void borrar(List lsConexion); + public void suscribirTodos(List conexiones); + } diff --git a/src/com/rjconsultores/ventaboletos/service/CorridaService.java b/src/com/rjconsultores/ventaboletos/service/CorridaService.java index b2f29c834..447b0b0f0 100644 --- a/src/com/rjconsultores/ventaboletos/service/CorridaService.java +++ b/src/com/rjconsultores/ventaboletos/service/CorridaService.java @@ -70,11 +70,13 @@ public interface CorridaService extends GenericService { public Boolean atualizarCorridaFecHusoFecVerano(Estado estado, Date dataInicial); Boolean atualizarCorridaFecHusoFecVerano(Estado estado, Date dataInicial, Integer corridaId); - + Boolean editarCorridaPorOutraCorrida(Estado estado, Date dataInicial, Integer corridaId, Date dataPadrao); public List buscarCorridaRelAproveitamento(Parada origem, Parada destino, Date feccorrida, Integer corridaId); - + public Corrida buscaCorrridaFutura(Ruta ruta, Date fecInicio); - + + public Boolean existeCorrida(Long id); + } diff --git a/src/com/rjconsultores/ventaboletos/service/TramoService.java b/src/com/rjconsultores/ventaboletos/service/TramoService.java index 42d9fd4a4..670c023c4 100644 --- a/src/com/rjconsultores/ventaboletos/service/TramoService.java +++ b/src/com/rjconsultores/ventaboletos/service/TramoService.java @@ -72,4 +72,6 @@ public interface TramoService { * @return */ public String gerarDescripcionTramo(Parada origen, Parada destino, Via via); + + public Boolean existe(Parada origem, Parada destino); } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConexionConfServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConexionConfServiceImpl.java index 6aa26bba3..ff4ca30d1 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ConexionConfServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConexionConfServiceImpl.java @@ -1,6 +1,8 @@ + package com.rjconsultores.ventaboletos.service.impl; import java.util.Calendar; +import java.util.Collection; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; @@ -62,4 +64,10 @@ public class ConexionConfServiceImpl implements ConexionConfService { public List buscarPorConexionCtrl(ConexionCtrl entidad) { return conexionConfDAO.buscarPorConexionCtrl(entidad); } + + @Override + @Transactional + public void suscribirTodos(Collection conexionesConf) { + conexionConfDAO.suscribirTodos(conexionesConf); + } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConexionDescuentoServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConexionDescuentoServiceImpl.java new file mode 100644 index 000000000..3d360ccb5 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConexionDescuentoServiceImpl.java @@ -0,0 +1,52 @@ +package com.rjconsultores.ventaboletos.service.impl; + +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.rjconsultores.ventaboletos.dao.hibernate.ConexionDescuentoHibernateDAO; +import com.rjconsultores.ventaboletos.entidad.Conexion; +import com.rjconsultores.ventaboletos.entidad.ConexionDescuento; +import com.rjconsultores.ventaboletos.service.ConexionDescuentoService; + +@Service("conexionDescuentoService") +public class ConexionDescuentoServiceImpl implements ConexionDescuentoService { + @Autowired + ConexionDescuentoHibernateDAO conexionDescuentoHDAO; + + @Override + public List buscarPorConexion(Conexion conexion) { + return conexionDescuentoHDAO.bucarPorConexion(conexion.getConexionId()); + } + + @Override + @Transactional + public ConexionDescuento suscribir(ConexionDescuento conexionDescuento) { + conexionDescuento.setActivo(true); + conexionDescuento.setFecModif(Calendar.getInstance().getTime()); + if (conexionDescuento.getIdConexionDescuento() == null) { + return conexionDescuentoHDAO.suscribir(conexionDescuento); + } + return conexionDescuentoHDAO.actualizacion(conexionDescuento); + } + + @Override + @Transactional + public void borrar(ConexionDescuento conexionDescuento) { + conexionDescuento.setActivo(false); + this.suscribir(conexionDescuento); + } + + @Override + @Transactional + public void suscribirTodos(List conexionesDescuentos) { + conexionDescuentoHDAO.suscribirTodos(conexionesDescuentos); + } + + + +} diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConexionServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConexionServiceImpl.java index b18c33157..b013e8ca5 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ConexionServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConexionServiceImpl.java @@ -78,4 +78,10 @@ public class ConexionServiceImpl implements ConexionService { } } + + @Override + @Transactional + public void suscribirTodos(List conexiones) { + conexionDAO.suscribirTodos(conexiones); + } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java index 82d9ceedf..d643ba433 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java @@ -191,6 +191,10 @@ public class CorridaServiceImpl implements CorridaService { return corridaDAO.buscarFiltro(ori, des, hora, cs); } + public Boolean existeCorrida(Long id){ + return corridaDAO.existeCorrida(id); + } + private Boolean geraDiaSemana(Integer diaSemana, EsquemaCorrida esquemaCorrida) { Boolean retorno = Boolean.FALSE; switch (diaSemana) { diff --git a/src/com/rjconsultores/ventaboletos/service/impl/TramoServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/TramoServiceImpl.java index d2ddd3cf0..cf48bfee0 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/TramoServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/TramoServiceImpl.java @@ -271,4 +271,12 @@ public class TramoServiceImpl implements TramoService { return tramoDAO.actualizacion(tramo); } } + + @Override + public Boolean existe(Parada origem, Parada destino) { + if(tramoDAO.obtenerPorOrigemDestino(origem, destino).getTramoId()!=null){ + return true; + } + return false; + } }