diff --git a/pom.xml b/pom.xml
index 57fe82c99..48437e20b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
br.com.rjconsultores
ModelWeb
- 1.8.1
+ 1.9.0
rj-releases
diff --git a/src/com/rjconsultores/ventaboletos/dao/CorridaInfoDAO.java b/src/com/rjconsultores/ventaboletos/dao/CorridaInfoDAO.java
new file mode 100644
index 000000000..4f429f748
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/dao/CorridaInfoDAO.java
@@ -0,0 +1,11 @@
+package com.rjconsultores.ventaboletos.dao;
+
+import java.util.List;
+
+import com.rjconsultores.ventaboletos.entidad.CorridaInfo;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorridaInfo;
+
+public interface CorridaInfoDAO extends GenericDAO {
+
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/dao/EsquemaCorridaInfoDAO.java b/src/com/rjconsultores/ventaboletos/dao/EsquemaCorridaInfoDAO.java
new file mode 100644
index 000000000..805cf7aac
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/dao/EsquemaCorridaInfoDAO.java
@@ -0,0 +1,12 @@
+package com.rjconsultores.ventaboletos.dao;
+
+import java.util.List;
+
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorridaInfo;
+
+public interface EsquemaCorridaInfoDAO extends GenericDAO {
+
+ List obtenerPorEsquemaCorrida(EsquemaCorrida esquemaCorrida);
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaInfoHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaInfoHibernateDAO.java
new file mode 100644
index 000000000..afe2ab235
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/CorridaInfoHibernateDAO.java
@@ -0,0 +1,19 @@
+package com.rjconsultores.ventaboletos.dao.hibernate;
+
+import org.hibernate.SessionFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Repository;
+
+import com.rjconsultores.ventaboletos.dao.CorridaInfoDAO;
+import com.rjconsultores.ventaboletos.entidad.CorridaInfo;
+
+@Repository("corridaInfoDAO")
+public class CorridaInfoHibernateDAO extends GenericHibernateDAO implements CorridaInfoDAO {
+
+ @Autowired
+ public CorridaInfoHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
+ setSessionFactory(factory);
+ }
+}
+
diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/EsquemaCorridaInfoHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/EsquemaCorridaInfoHibernateDAO.java
new file mode 100644
index 000000000..465d4eeb7
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/EsquemaCorridaInfoHibernateDAO.java
@@ -0,0 +1,32 @@
+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.EsquemaCorridaInfoDAO;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorridaInfo;
+
+@Repository("esquemaCorridaInfoDAO")
+public class EsquemaCorridaInfoHibernateDAO extends GenericHibernateDAO implements EsquemaCorridaInfoDAO {
+
+ @Autowired
+ public EsquemaCorridaInfoHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
+ setSessionFactory(factory);
+ }
+
+ @Override
+ public List obtenerPorEsquemaCorrida(EsquemaCorrida esquemaCorrida) {
+
+ Criteria c = getSession().createCriteria(getPersistentClass());
+ c.add(Restrictions.eq("activo", Boolean.TRUE));
+ c.add(Restrictions.eq("esquemaCorrida", esquemaCorrida));
+ return c.list();
+ }
+}
diff --git a/src/com/rjconsultores/ventaboletos/entidad/CorridaInfo.java b/src/com/rjconsultores/ventaboletos/entidad/CorridaInfo.java
new file mode 100644
index 000000000..8cd5799bf
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/entidad/CorridaInfo.java
@@ -0,0 +1,203 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package com.rjconsultores.ventaboletos.entidad;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import javax.persistence.Basic;
+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.JoinColumns;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToOne;
+import javax.persistence.SequenceGenerator;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+import javax.persistence.Transient;
+
+import org.hibernate.Hibernate;
+import org.hibernate.annotations.NotFound;
+import org.hibernate.annotations.NotFoundAction;
+
+import br.com.rjconsultores.auditador.annotations.AuditarClasse;
+import br.com.rjconsultores.auditador.annotations.NaoAuditar;
+import br.com.rjconsultores.auditador.interfaces.Auditavel;
+
+/**
+ *
+ * @author Wallace
+ */
+@Entity
+@SequenceGenerator(name = "CORRIDA_INFO_SEQ", sequenceName = "CORRIDA_INFO_SEQ", allocationSize = 1)
+@AuditarClasse(nome = "CorridaInfo", tela = "auditarClasse.CorridaInfo")
+@Table(name = "CORRIDA_INFO")
+public class CorridaInfo implements Serializable, Auditavel {
+
+ private static final long serialVersionUID = 1L;
+ @Id
+ @Basic(optional = false)
+ @Column(name = "CORRIDAINFO_ID")
+ @GeneratedValue(strategy = GenerationType.AUTO, generator = "CORRIDA_INFO_SEQ")
+ private Integer corridaInfoId;
+
+ @Column(name = "ACTIVO")
+ private Boolean activo;
+
+ @Column(name = "FECMODIF")
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date fecmodif;
+ @Column(name = "USUARIO_ID")
+ private Integer usuarioId;
+
+ @JoinColumn(name = "ORIGEN_ID", referencedColumnName = "PARADA_ID")
+ @ManyToOne
+ private Parada origem;
+ @JoinColumn(name = "DESTINO_ID", referencedColumnName = "PARADA_ID")
+ @ManyToOne
+ private Parada destino;
+
+ @Column(name = "INFOCORRIDA")
+ private String infoCorrida;
+
+ @OneToOne
+ @NotFound(action = NotFoundAction.IGNORE)
+ @JoinColumns({
+ @JoinColumn(name = "CORRIDA_ID", referencedColumnName = "CORRIDA_ID"),
+ @JoinColumn(name = "FECCORRIDA", referencedColumnName = "FECCORRIDA") })
+ private Corrida corrida;
+
+ @Transient
+ @NaoAuditar
+ private CorridaInfo corridaInfoClone;
+
+ public CorridaInfo() {
+ }
+
+ public Integer getCorridaInfoId() {
+ return corridaInfoId;
+ }
+
+
+ public void setCorridaInfoId(Integer corridaInfoId) {
+ this.corridaInfoId = corridaInfoId;
+ }
+
+
+ public CorridaInfo getCorridaInfoClone() {
+ return corridaInfoClone;
+ }
+
+
+ public void setCorridaInfoClone(CorridaInfo corridaInfoClone) {
+ this.corridaInfoClone = corridaInfoClone;
+ }
+
+
+ public Boolean getActivo() {
+ return activo;
+ }
+
+ public void setActivo(Boolean activo) {
+ this.activo = activo;
+ }
+
+ public Date getFecmodif() {
+ return fecmodif;
+ }
+
+ public void setFecmodif(Date fecmodif) {
+ this.fecmodif = fecmodif;
+ }
+
+ public Integer getUsuarioId() {
+ return usuarioId;
+ }
+
+ public void setUsuarioId(Integer usuarioId) {
+ this.usuarioId = usuarioId;
+ }
+
+ public Parada getOrigem() {
+ return origem;
+ }
+
+ public void setOrigem(Parada origem) {
+ this.origem = origem;
+ }
+
+ public Parada getDestino() {
+ return destino;
+ }
+
+ public void setDestino(Parada destino) {
+ this.destino = destino;
+ }
+
+ public String getInfoCorrida() {
+ return infoCorrida;
+ }
+
+ public void setInfoCorrida(String infoCorrida) {
+ this.infoCorrida = infoCorrida;
+ }
+
+ public Corrida getCorrida() {
+ return corrida;
+ }
+
+ public void setCorrida(Corrida corrida) {
+ this.corrida = corrida;
+ }
+
+ @Override
+ public int hashCode() {
+ int hash = 0;
+ hash += (getCorridaInfoId() != null ? getCorridaInfoId().hashCode() : 0);
+ return hash;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (!(object instanceof CorridaInfo)) {
+ return false;
+ }
+ CorridaInfo other = (CorridaInfo) object;
+ if ((this.getCorridaInfoId() == null && other.getCorridaInfoId() != null) || (this.getCorridaInfoId() != null && !this.getCorridaInfoId().equals(other.getCorridaInfoId()))) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public String toString() {
+ return "com.rjconsultores.ventaboletos.entidad.test.CorridaInfo[corridaInfoId=" + corridaInfoId + "]";
+ }
+
+
+ @Override
+ public void clonar() throws CloneNotSupportedException {
+ corridaInfoClone = new CorridaInfo();
+ corridaInfoClone = (CorridaInfo) this.clone();
+ Hibernate.initialize(corridaInfoClone.getCorrida());
+ }
+
+ @Override
+ public CorridaInfo getCloneObject() throws CloneNotSupportedException {
+ return corridaInfoClone;
+ }
+
+ @Override
+ public String getTextoInclusaoExclusao() {
+ return String.format("CorridaInfo - Origem [%s] - Destino [%s] - Informaaca [%s]", getOrigem() != null ? getOrigem().getDescparada() : "",
+ getDestino() != null ? getDestino().getDescparada() : "", getInfoCorrida() != null ? getInfoCorrida() : "");
+ }
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/entidad/CorridaTramo.java b/src/com/rjconsultores/ventaboletos/entidad/CorridaTramo.java
index 1a5c2f076..e6e9c420b 100644
--- a/src/com/rjconsultores/ventaboletos/entidad/CorridaTramo.java
+++ b/src/com/rjconsultores/ventaboletos/entidad/CorridaTramo.java
@@ -117,7 +117,7 @@ public class CorridaTramo implements Serializable {
@Column(name = "fechorsalidaoriginalh")
@Temporal(javax.persistence.TemporalType.TIMESTAMP)
private Date fechorSalidaOriginalH;
-
+
public Boolean getIndmanttarjeta() {
return indmanttarjeta;
}
diff --git a/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorrida.java b/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorrida.java
index c60cc4c1a..115f1ba22 100644
--- a/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorrida.java
+++ b/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorrida.java
@@ -197,6 +197,10 @@ public class EsquemaCorrida implements Serializable, Auditavel {
@AuditarLista(auditarEntidades = true, nome = "Embarque/Desembarque")
private List lsEsquemaCorridaEmbarqueDesembarque;
+ @OneToMany(mappedBy = "esquemaCorrida", cascade = CascadeType.ALL)
+ @AuditarLista(auditarEntidades = true, nome = "Info Tramo>")
+ private List lsEsquemaCorridaInfo;
+
@Transient
@NaoAuditar
private EsquemaCorrida esquemaCorridaClone;
@@ -735,6 +739,17 @@ public class EsquemaCorrida implements Serializable, Auditavel {
}
esquemaCorridaClone.setLsEsquemaCorridaEmbarqueDesembarque(lsClones);
}
+
+ if(this.getLsEsquemaCorridaInfo() != null) {
+ List lsClones = new ArrayList();
+ for (EsquemaCorridaInfo esquemaCorridaInfo : this.getLsEsquemaCorridaInfo()) {
+ if(BooleanUtils.isTrue(esquemaCorridaInfo.getActivo())) {
+ esquemaCorridaInfo.clonar();
+ lsClones.add(esquemaCorridaInfo.getCloneObject());
+ }
+ }
+ esquemaCorridaClone.setLsEsquemaCorridaInfo(lsClones);
+ }
}
@@ -907,5 +922,14 @@ public class EsquemaCorrida implements Serializable, Auditavel {
public void setIndNaoImprimeBpe(String indNaoImprimeBpe) {
this.indNaoImprimeBpe = indNaoImprimeBpe;
}
-
+
+ public List getLsEsquemaCorridaInfo() {
+ return lsEsquemaCorridaInfo;
+ }
+
+ public void setLsEsquemaCorridaInfo(List lsEsquemaCorridaInfo) {
+ this.lsEsquemaCorridaInfo = lsEsquemaCorridaInfo;
+ }
+
+
}
\ No newline at end of file
diff --git a/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorridaInfo.java b/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorridaInfo.java
new file mode 100644
index 000000000..555c960a9
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/entidad/EsquemaCorridaInfo.java
@@ -0,0 +1,188 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package com.rjconsultores.ventaboletos.entidad;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import javax.persistence.Basic;
+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;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+import javax.persistence.Transient;
+
+import org.hibernate.Hibernate;
+
+import br.com.rjconsultores.auditador.annotations.AuditarClasse;
+import br.com.rjconsultores.auditador.annotations.NaoAuditar;
+import br.com.rjconsultores.auditador.interfaces.Auditavel;
+
+/**
+ *
+ * @author Wallace
+ */
+@Entity
+@SequenceGenerator(name = "ESQUEMA_CORRIDA_INFO_SEQ", sequenceName = "ESQUEMA_CORRIDA_INFO_SEQ", allocationSize = 1)
+@AuditarClasse(nome = "EsquemaCorridaInfo", tela = "auditarClasse.EsquemaCorridaInfo")
+@Table(name = "ESQUEMA_CORRIDA_INFO")
+public class EsquemaCorridaInfo implements Serializable, Auditavel {
+
+ private static final long serialVersionUID = 1L;
+ @Id
+ @Basic(optional = false)
+ @Column(name = "ESQUEMACORRIDAINFO_ID")
+ @GeneratedValue(strategy = GenerationType.AUTO, generator = "ESQUEMA_CORRIDA_INFO_SEQ")
+ private Integer esquemaCorridaInfoId;
+
+ @Column(name = "ACTIVO")
+ private Boolean activo;
+
+ @Column(name = "FECMODIF")
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date fecmodif;
+ @Column(name = "USUARIO_ID")
+ private Integer usuarioId;
+
+ @JoinColumn(name = "ORIGEN_ID", referencedColumnName = "PARADA_ID")
+ @ManyToOne
+ private Parada origem;
+ @JoinColumn(name = "DESTINO_ID", referencedColumnName = "PARADA_ID")
+ @ManyToOne
+ private Parada destino;
+
+ @Column(name = "INFOCORRIDA")
+ private String infoCorrida;
+
+ @JoinColumn(name = "ESQUEMACORRIDA_ID", referencedColumnName = "ESQUEMACORRIDA_ID")
+ @ManyToOne
+ private EsquemaCorrida esquemaCorrida;
+
+ @Transient
+ @NaoAuditar
+ private EsquemaCorridaInfo esquemaCorridaInfoClone;
+
+ public EsquemaCorridaInfo() {
+ }
+
+ public EsquemaCorridaInfo(Integer esquemaCorridaInfoId) {
+ this.esquemaCorridaInfoId = esquemaCorridaInfoId;
+ }
+
+ public Integer getEsquemaCorridaInfoId() {
+ return esquemaCorridaInfoId;
+ }
+
+ public void setEsquemaCorridaInfoId(Integer esquemaCorridaInfoId) {
+ this.esquemaCorridaInfoId = esquemaCorridaInfoId;
+ }
+
+ public Boolean getActivo() {
+ return activo;
+ }
+
+ public void setActivo(Boolean activo) {
+ this.activo = activo;
+ }
+
+ public Date getFecmodif() {
+ return fecmodif;
+ }
+
+ public void setFecmodif(Date fecmodif) {
+ this.fecmodif = fecmodif;
+ }
+
+ public Integer getUsuarioId() {
+ return usuarioId;
+ }
+
+ public void setUsuarioId(Integer usuarioId) {
+ this.usuarioId = usuarioId;
+ }
+
+ public EsquemaCorrida getEsquemaCorrida() {
+ return esquemaCorrida;
+ }
+
+ public void setEsquemaCorrida(EsquemaCorrida esquemaCorrida) {
+ this.esquemaCorrida = esquemaCorrida;
+ }
+
+ public Parada getOrigem() {
+ return origem;
+ }
+
+ public void setOrigem(Parada origem) {
+ this.origem = origem;
+ }
+
+ public Parada getDestino() {
+ return destino;
+ }
+
+ public void setDestino(Parada destino) {
+ this.destino = destino;
+ }
+
+ public String getInfoCorrida() {
+ return infoCorrida;
+ }
+
+ public void setInfoCorrida(String infoCorrida) {
+ this.infoCorrida = infoCorrida;
+ }
+
+ @Override
+ public int hashCode() {
+ int hash = 0;
+ hash += (getEsquemaCorridaInfoId() != null ? getEsquemaCorridaInfoId().hashCode() : 0);
+ return hash;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (!(object instanceof EsquemaCorridaInfo)) {
+ return false;
+ }
+ EsquemaCorridaInfo other = (EsquemaCorridaInfo) object;
+ if ((this.getEsquemaCorridaInfoId() == null && other.getEsquemaCorridaInfoId() != null) || (this.getEsquemaCorridaInfoId() != null && !this.getEsquemaCorridaInfoId().equals(other.getEsquemaCorridaInfoId()))) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public String toString() {
+ return "com.rjconsultores.ventaboletos.entidad.test.EsquemaCorridaInfo[esquemaCorridaInfoId=" + esquemaCorridaInfoId + "]";
+ }
+
+
+ @Override
+ public void clonar() throws CloneNotSupportedException {
+ esquemaCorridaInfoClone = new EsquemaCorridaInfo();
+ esquemaCorridaInfoClone = (EsquemaCorridaInfo) this.clone();
+ Hibernate.initialize(esquemaCorridaInfoClone.getEsquemaCorrida());
+ }
+
+ @Override
+ public EsquemaCorridaInfo getCloneObject() throws CloneNotSupportedException {
+ return esquemaCorridaInfoClone;
+ }
+
+ @Override
+ public String getTextoInclusaoExclusao() {
+ return String.format("EsquemaCorridaInfo - Origem [%s] - Destino [%s] - Informaaca [%s]", getOrigem() != null ? getOrigem().getDescparada() : "",
+ getDestino() != null ? getDestino().getDescparada() : "", getInfoCorrida() != null ? getInfoCorrida() : "");
+ }
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/service/CorridaInfoService.java b/src/com/rjconsultores/ventaboletos/service/CorridaInfoService.java
new file mode 100644
index 000000000..2a794ded2
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/service/CorridaInfoService.java
@@ -0,0 +1,8 @@
+package com.rjconsultores.ventaboletos.service;
+
+import com.rjconsultores.ventaboletos.entidad.CorridaInfo;
+
+public interface CorridaInfoService extends GenericService {
+
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/service/EsquemaCorridaInfoService.java b/src/com/rjconsultores/ventaboletos/service/EsquemaCorridaInfoService.java
new file mode 100644
index 000000000..c9944e710
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/service/EsquemaCorridaInfoService.java
@@ -0,0 +1,12 @@
+package com.rjconsultores.ventaboletos.service;
+
+import java.util.List;
+
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorridaInfo;
+
+public interface EsquemaCorridaInfoService extends GenericService {
+
+ List obtenerPorEsquemaCorrida(EsquemaCorrida esquemaCorrida);
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CorridaInfoServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CorridaInfoServiceImpl.java
new file mode 100644
index 000000000..07cab1cf6
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/service/impl/CorridaInfoServiceImpl.java
@@ -0,0 +1,62 @@
+package com.rjconsultores.ventaboletos.service.impl;
+
+import java.util.Calendar;
+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.CorridaInfoDAO;
+import com.rjconsultores.ventaboletos.entidad.CorridaInfo;
+import com.rjconsultores.ventaboletos.service.CorridaInfoService;
+import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
+
+@Service("corridaInfoService")
+public class CorridaInfoServiceImpl implements CorridaInfoService {
+
+ @Autowired
+ private CorridaInfoDAO corridaInfoDAO;
+
+ @Override
+ public List obtenerTodos() {
+ return corridaInfoDAO.obtenerTodos();
+ }
+
+ @Override
+ public CorridaInfo obtenerID(Integer id) {
+ return corridaInfoDAO.obtenerID(id);
+ }
+
+ @Transactional
+ @Override
+ public CorridaInfo suscribir( CorridaInfo entidad) {
+
+ entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ entidad.setFecmodif(Calendar.getInstance().getTime());
+ entidad.setActivo(Boolean.TRUE);
+
+ return corridaInfoDAO.suscribir(entidad);
+ }
+
+ @Transactional
+ @Override
+ public CorridaInfo actualizacion(CorridaInfo entidad) {
+
+ entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ entidad.setFecmodif(Calendar.getInstance().getTime());
+ entidad.setActivo(Boolean.TRUE);
+ return corridaInfoDAO.actualizacion(entidad);
+ }
+
+ @Transactional
+ @Override
+ public void borrar(CorridaInfo entidad) {
+
+ entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ entidad.setFecmodif(Calendar.getInstance().getTime());
+ entidad.setActivo(Boolean.FALSE);
+ corridaInfoDAO.actualizacion(entidad);
+ }
+
+}
diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java
index 79ec4b37c..f701e1c33 100644
--- a/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java
+++ b/src/com/rjconsultores/ventaboletos/service/impl/CorridaServiceImpl.java
@@ -38,12 +38,14 @@ import com.rjconsultores.ventaboletos.entidad.Constante;
import com.rjconsultores.ventaboletos.entidad.Corrida;
import com.rjconsultores.ventaboletos.entidad.Corrida.Id;
import com.rjconsultores.ventaboletos.entidad.CorridaCtrl;
+import com.rjconsultores.ventaboletos.entidad.CorridaInfo;
import com.rjconsultores.ventaboletos.entidad.CorridaTramo;
import com.rjconsultores.ventaboletos.entidad.DetDiagramaAutobus;
import com.rjconsultores.ventaboletos.entidad.DiagramaAutobus;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.EsquemaAsiento;
import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorridaInfo;
import com.rjconsultores.ventaboletos.entidad.EsquemaTramo;
import com.rjconsultores.ventaboletos.entidad.Estado;
import com.rjconsultores.ventaboletos.entidad.Marca;
@@ -65,9 +67,11 @@ import com.rjconsultores.ventaboletos.service.BoletoService;
import com.rjconsultores.ventaboletos.service.ClienteService;
import com.rjconsultores.ventaboletos.service.ConstanteService;
import com.rjconsultores.ventaboletos.service.CorridaCtrlService;
+import com.rjconsultores.ventaboletos.service.CorridaInfoService;
import com.rjconsultores.ventaboletos.service.CorridaService;
import com.rjconsultores.ventaboletos.service.DetDiagramaAutobusService;
import com.rjconsultores.ventaboletos.service.EsquemaAsientoService;
+import com.rjconsultores.ventaboletos.service.EsquemaCorridaInfoService;
import com.rjconsultores.ventaboletos.service.EsquemaCorridaService;
import com.rjconsultores.ventaboletos.service.EsquemaTramoService;
import com.rjconsultores.ventaboletos.service.ReservaEspecialClienteService;
@@ -142,6 +146,10 @@ public class CorridaServiceImpl implements CorridaService {
VigenciaTarifaService vigenciaTarifaService;
@Autowired
ClienteService clienteService;
+ @Autowired
+ private CorridaInfoService corridaInfoService;
+ @Autowired
+ private EsquemaCorridaInfoService esquemaCorridaInfoService;
@Autowired
@@ -951,6 +959,7 @@ public class CorridaServiceImpl implements CorridaService {
}
corrida = generarCorrida(esquemaCorrida, dataGeracao, false, isFeriado);
+ generarCorridaInfo(corrida, esquemaCorrida);
corridaPisoExtra = null;
corridaPisoExtra2 = null;
@@ -1727,6 +1736,21 @@ public class CorridaServiceImpl implements CorridaService {
return corridaDAO.buscarCorridaAtivaPorId(id);
}
+ private void generarCorridaInfo(Corrida corrida, EsquemaCorrida esquemaCorrida) {
+
+ List lsEsquemaCorridaInfo = esquemaCorridaInfoService.obtenerPorEsquemaCorrida(esquemaCorrida);
+
+ for (EsquemaCorridaInfo esquemaCorridaInfo : lsEsquemaCorridaInfo) {
+
+ CorridaInfo corridaInfo = new CorridaInfo();
+ corridaInfo.setOrigem(esquemaCorridaInfo.getOrigem());
+ corridaInfo.setDestino(esquemaCorridaInfo.getDestino());
+ corridaInfo.setCorrida(corrida);
+ corridaInfo.setInfoCorrida(esquemaCorridaInfo.getInfoCorrida());
+ corridaInfoService.suscribir(corridaInfo);
+ }
+
+ }
}
diff --git a/src/com/rjconsultores/ventaboletos/service/impl/EsquemaCorridaInfoServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/EsquemaCorridaInfoServiceImpl.java
new file mode 100644
index 000000000..62800b492
--- /dev/null
+++ b/src/com/rjconsultores/ventaboletos/service/impl/EsquemaCorridaInfoServiceImpl.java
@@ -0,0 +1,68 @@
+package com.rjconsultores.ventaboletos.service.impl;
+
+import java.util.Calendar;
+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.EsquemaCorridaInfoDAO;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida;
+import com.rjconsultores.ventaboletos.entidad.EsquemaCorridaInfo;
+import com.rjconsultores.ventaboletos.service.EsquemaCorridaInfoService;
+import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
+
+@Service("esquemaCorridaInfoService")
+public class EsquemaCorridaInfoServiceImpl implements EsquemaCorridaInfoService {
+
+ @Autowired
+ private EsquemaCorridaInfoDAO esquemaCorridaInfoDAO;
+
+ @Override
+ public List obtenerTodos() {
+ return esquemaCorridaInfoDAO.obtenerTodos();
+ }
+
+ @Override
+ public EsquemaCorridaInfo obtenerID(Integer id) {
+ return esquemaCorridaInfoDAO.obtenerID(id);
+ }
+
+ @Transactional
+ @Override
+ public EsquemaCorridaInfo suscribir( EsquemaCorridaInfo entidad) {
+
+ entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ entidad.setFecmodif(Calendar.getInstance().getTime());
+ entidad.setActivo(Boolean.TRUE);
+
+ return esquemaCorridaInfoDAO.suscribir(entidad);
+ }
+
+ @Transactional
+ @Override
+ public EsquemaCorridaInfo actualizacion(EsquemaCorridaInfo entidad) {
+
+ entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ entidad.setFecmodif(Calendar.getInstance().getTime());
+ entidad.setActivo(Boolean.TRUE);
+ return esquemaCorridaInfoDAO.actualizacion(entidad);
+ }
+
+ @Transactional
+ @Override
+ public void borrar(EsquemaCorridaInfo entidad) {
+
+ entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
+ entidad.setFecmodif(Calendar.getInstance().getTime());
+ entidad.setActivo(Boolean.FALSE);
+ esquemaCorridaInfoDAO.actualizacion(entidad);
+ }
+
+ @Override
+ public List obtenerPorEsquemaCorrida(EsquemaCorrida esquemaCorrida) {
+ return esquemaCorridaInfoDAO.obtenerPorEsquemaCorrida(esquemaCorrida);
+ }
+
+}