fixes bug#21318

qua:
dev:WALLACE

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@105115 d1611594-4594-4d17-8e1d-87c2c4800839
master
aristides 2021-01-21 13:55:45 +00:00
parent 80b3f09e84
commit 127718c037
6 changed files with 301 additions and 0 deletions

View File

@ -0,0 +1,21 @@
package com.rjconsultores.ventaboletos.dao;
import java.util.List;
import com.rjconsultores.ventaboletos.entidad.AgrupamentoParada;
public interface AgruparParadaDAO {
public AgrupamentoParada obtenerID(Integer id);
public AgrupamentoParada suscribir(AgrupamentoParada entidad);
public AgrupamentoParada actualizacion(AgrupamentoParada entidad);
public List<AgrupamentoParada> obtenerTodos();
public List<AgrupamentoParada> buscar(String descAgrupamentoParada);
public List<AgrupamentoParada> buscarCVE(String cveAgrupamentoParada);
}

View File

@ -0,0 +1,48 @@
package com.rjconsultores.ventaboletos.dao.hibernate;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Order;
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.AgruparParadaDAO;
import com.rjconsultores.ventaboletos.entidad.AgrupamentoParada;
@Repository("agruparParadaDAO")
public class AgruparParadaHibernateDAO extends GenericHibernateDAO<AgrupamentoParada, Integer> implements AgruparParadaDAO {
@Autowired
public AgruparParadaHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
setSessionFactory(factory);
}
@Override
public List<AgrupamentoParada> obtenerTodos() {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("activo", Boolean.TRUE));
c.addOrder(Order.asc("descAgrupamentoParada"));
return c.list();
}
@Override
public List<AgrupamentoParada> buscar(String descparada) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("activo", Boolean.TRUE));
c.add(Restrictions.eq("descAgrupamentoParada", descparada));
return c.list();
}
@Override
public List<AgrupamentoParada> buscarCVE(String cveAgrupamentoParada) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("activo", Boolean.TRUE));
c.add(Restrictions.eq("cveAgrupamentoParada", cveAgrupamentoParada));
return c.list();
}
}

View File

@ -0,0 +1,106 @@
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.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@Entity
@SequenceGenerator(name = "AGRUPAMENTOPARADA_SEQ", sequenceName = "AGRUPAMENTOPARADA_SEQ", allocationSize = 1)
@Table(name = "AGRUPAMENTO_PARADA")
public class AgrupamentoParada implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "AGRUPAMENTOPARADA_SEQ")
@Column(name = "AGRUPAMENTOPARADA_ID")
private Integer agrupamentoParadaId;
@Basic(optional = false)
@Column(name = "DESCAGRUPAMENTOPARADA")
private String descAgrupamentoParada;
@Column(name = "CVEAGRUPAMENTOPARADA")
private String cveAgrupamentoParada;
@Column(name = "ACTIVO")
private Boolean activo;
@Column(name = "FECMODIF")
@Temporal(TemporalType.TIMESTAMP)
private Date fecmodif;
@Column(name = "USUARIO_ID")
private Integer usuarioId;
public Integer getAgrupamentoParadaId() {
return agrupamentoParadaId;
}
public void setAgrupamentoParadaId(Integer agrupamentoParadaId) {
this.agrupamentoParadaId = agrupamentoParadaId;
}
public String getDescAgrupamentoParada() {
return descAgrupamentoParada;
}
public void setDescAgrupamentoParada(String descAgrupamentoParada) {
this.descAgrupamentoParada = descAgrupamentoParada;
}
public String getCveAgrupamentoParada() {
return cveAgrupamentoParada;
}
public void setCveAgrupamentoParada(String cveAgrupamentoParada) {
this.cveAgrupamentoParada = cveAgrupamentoParada;
}
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;
}
@Override
public boolean equals(Object object) {
if (!(object instanceof AgrupamentoParada)) {
return false;
}
AgrupamentoParada other = (AgrupamentoParada) object;
if ((this.getAgrupamentoParadaId() == null && other.getAgrupamentoParadaId() != null) || (this.getAgrupamentoParadaId() != null && !this.getAgrupamentoParadaId().equals(other.getAgrupamentoParadaId()))) {
return false;
}
return true;
}
@Override
public String toString() {
return getDescAgrupamentoParada();
}
}

View File

@ -95,6 +95,9 @@ public class Parada implements Serializable, Auditavel<Parada> {
private Boolean indVendeTotem; private Boolean indVendeTotem;
@Column(name="INDVISIBLEINTERNET") @Column(name="INDVISIBLEINTERNET")
private Boolean indVisibleInternet; private Boolean indVisibleInternet;
@OneToOne
@JoinColumn(name = "AGRUPAMENTOPARADA_ID")
private AgrupamentoParada agrupamentoParada;
@ManyToOne @ManyToOne
@JoinColumn(name = "REGIONMETROPOLITANA_ID", referencedColumnName = "REGIONMETROPOLITANA_ID") @JoinColumn(name = "REGIONMETROPOLITANA_ID", referencedColumnName = "REGIONMETROPOLITANA_ID")
@ -346,6 +349,16 @@ public class Parada implements Serializable, Auditavel<Parada> {
this.indVisibleInternet = indVisibleInternet; this.indVisibleInternet = indVisibleInternet;
} }
public AgrupamentoParada getAgrupamentoParada() {
return agrupamentoParada;
}
public void setAgrupamentoParada(AgrupamentoParada agrupamentoParada) {
this.agrupamentoParada = agrupamentoParada;
}
@Override @Override
public void clonar() throws CloneNotSupportedException { public void clonar() throws CloneNotSupportedException {
paradaClone = new Parada(); paradaClone = new Parada();

View File

@ -0,0 +1,18 @@
package com.rjconsultores.ventaboletos.service;
import java.util.List;
import com.rjconsultores.ventaboletos.entidad.AgrupamentoParada;
import com.rjconsultores.ventaboletos.exception.BusinessException;
public interface AgruparParadaService {
public AgrupamentoParada obtenerID(Integer id);
public List<AgrupamentoParada> obtenerTodos();
public AgrupamentoParada suscribirActualizar(AgrupamentoParada entidad) throws BusinessException;
public void borrar(AgrupamentoParada entidad);
}

View File

@ -0,0 +1,95 @@
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.AgruparParadaDAO;
import com.rjconsultores.ventaboletos.entidad.AgrupamentoParada;
import com.rjconsultores.ventaboletos.exception.BusinessException;
import com.rjconsultores.ventaboletos.service.AgruparParadaService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
@Service("agruparParadaService")
public class AgruparParadaServiceImpl implements AgruparParadaService {
@Autowired
private AgruparParadaDAO agruparParadaDAO;
@Override
public AgrupamentoParada obtenerID(Integer id) {
// TODO Auto-generated method stub
return null;
}
@Transactional
public AgrupamentoParada suscribir(AgrupamentoParada entidad) {
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecmodif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.TRUE);
return agruparParadaDAO.suscribir(entidad);
}
@Transactional
public AgrupamentoParada actualizacion(AgrupamentoParada entidad) {
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecmodif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.TRUE);
return agruparParadaDAO.actualizacion(entidad);
}
@Override
public List<AgrupamentoParada> obtenerTodos() {
return agruparParadaDAO.obtenerTodos();
}
@Override
@Transactional(readOnly = false)
public AgrupamentoParada suscribirActualizar(AgrupamentoParada entidad) throws BusinessException {
List<AgrupamentoParada> lsAgrumaentoParadas = agruparParadaDAO.buscar(entidad.getDescAgrupamentoParada());
if (!lsAgrumaentoParadas.isEmpty()) {
if (entidad.getAgrupamentoParadaId() == null) {
throw new BusinessException("editarCatalogoDeParadaController.registroDESCAGRUPAMENTOPARADAexiste");
} else {
if (!lsAgrumaentoParadas.contains(entidad)) {
throw new BusinessException("editarCatalogoDeParadaController.registroDESCAGRUPAMENTOPARADAexiste");
}
}
}
lsAgrumaentoParadas = agruparParadaDAO.buscarCVE(entidad.getCveAgrupamentoParada());
if (!lsAgrumaentoParadas.isEmpty()) {
if (entidad.getAgrupamentoParadaId() == null) {
throw new BusinessException("editarCatalogoDeParadaController.registroCVEAGRUPAMENTOPARADAexiste");
} else {
if (!lsAgrumaentoParadas.contains(entidad)) {
throw new BusinessException("editarCatalogoDeParadaController.registroCVEAGRUPAMENTOPARADAexiste");
}
}
}
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecmodif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.TRUE);
if (entidad.getAgrupamentoParadaId() == null) {
return agruparParadaDAO.suscribir(entidad);
}
return agruparParadaDAO.actualizacion(entidad);
}
@Transactional
public void borrar(AgrupamentoParada entidad) {
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecmodif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.FALSE);
agruparParadaDAO.actualizacion(entidad);
}
}