156 lines
5.9 KiB
Java
156 lines
5.9 KiB
Java
/*
|
|
* To change this template, choose Tools | Templates
|
|
* and open the template in the editor.
|
|
*/
|
|
package com.rjconsultores.ventaboletos.dao.hibernate;
|
|
|
|
import java.util.Calendar;
|
|
import java.util.List;
|
|
|
|
import org.apache.logging.log4j.LogManager;
|
|
import org.apache.logging.log4j.Logger;
|
|
import org.hibernate.Criteria;
|
|
import org.hibernate.Query;
|
|
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 org.springframework.transaction.annotation.Transactional;
|
|
|
|
import com.rjconsultores.ventaboletos.dao.ConexionRutaLocalidadeRemovidaDAO;
|
|
import com.rjconsultores.ventaboletos.entidad.ConexionRutaLocalidadeRemovida;
|
|
import com.rjconsultores.ventaboletos.entidad.Parada;
|
|
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
|
|
|
|
/**
|
|
*
|
|
* @author valdevirsp
|
|
*/
|
|
@Repository("conexionRutaLocalidadeRemovidaDAO")
|
|
public class ConexionRutaLocalidadeRemovidaHibernateDAO extends GenericHibernateDAO<ConexionRutaLocalidadeRemovida, Integer> implements ConexionRutaLocalidadeRemovidaDAO {
|
|
|
|
private static Logger log = LogManager.getLogger(ConexionRutaLocalidadeRemovidaHibernateDAO.class);
|
|
|
|
@Autowired
|
|
public ConexionRutaLocalidadeRemovidaHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
|
|
setSessionFactory(factory);
|
|
}
|
|
|
|
@Override
|
|
public void removerPorParada(Parada parada) {
|
|
try {
|
|
Criteria c = this.makeCriteria();
|
|
c.add(Restrictions.eq("paradaId", parada.getParadaId().longValue()));
|
|
c.add(Restrictions.eq(ACTIVO, Boolean.TRUE));
|
|
ConexionRutaLocalidadeRemovida conexionRutaLocalidadeRemovida = (ConexionRutaLocalidadeRemovida) c.uniqueResult();
|
|
borrar(conexionRutaLocalidadeRemovida);
|
|
} catch (Exception e) {
|
|
log.error("Erro ao remover por por paradaId", e);
|
|
}
|
|
|
|
}
|
|
|
|
@Override
|
|
public void removerPorConexionrutaconfIdePorParada(Integer conexionrutaconfId,Parada parada) {
|
|
try {
|
|
Criteria c = this.makeCriteria();
|
|
c.add(Restrictions.eq("conexionrutaconfId", conexionrutaconfId));
|
|
c.add(Restrictions.eq("paradaId", parada.getParadaId().longValue()));
|
|
c.add(Restrictions.eq(ACTIVO, Boolean.TRUE));
|
|
List<ConexionRutaLocalidadeRemovida> conexionRutaLocalidadeRemovidaList = c.list();
|
|
ConexionRutaLocalidadeRemovida conexionRutaLocalidadeRemovida =conexionRutaLocalidadeRemovidaList != null && conexionRutaLocalidadeRemovidaList.size() > 0 ? conexionRutaLocalidadeRemovidaList.get(0) : null;
|
|
if(conexionRutaLocalidadeRemovida != null) {
|
|
borrar(conexionRutaLocalidadeRemovida);
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
log.error("Erro ao remover por por paradaId", e);
|
|
}
|
|
|
|
}
|
|
|
|
@Transactional
|
|
public void borrar(ConexionRutaLocalidadeRemovida entidad) {
|
|
try {
|
|
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
|
|
entidad.setFecmodif(Calendar.getInstance().getTime());
|
|
entidad.setActivo(Boolean.FALSE);
|
|
actualizacion(entidad);
|
|
} catch (Exception e) {
|
|
log.error("Erro ao borrar conexionRutaLocalidadeRemovida ", e);
|
|
}
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
public ConexionRutaLocalidadeRemovida obtenerPorParadaId(Integer paradaId) {
|
|
try {
|
|
Criteria c = this.makeCriteria();
|
|
c.add(Restrictions.eq("paradaId", paradaId));
|
|
c.add(Restrictions.eq(ACTIVO, Boolean.TRUE));
|
|
List<ConexionRutaLocalidadeRemovida> conexionRutaLocalidadeRemovidaList = c.list();
|
|
return conexionRutaLocalidadeRemovidaList != null && conexionRutaLocalidadeRemovidaList.size() > 0 ? conexionRutaLocalidadeRemovidaList.get(0) : null;
|
|
} catch (Exception e) {
|
|
log.error("Erro ao obter paradas por por paradaId", e);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
public List<ConexionRutaLocalidadeRemovida> obtenerPorParadaIdList(List<Long> paradaIdList) {
|
|
try {
|
|
Criteria c = this.makeCriteria();
|
|
c.add(Restrictions.in("paradaId", paradaIdList));
|
|
c.add(Restrictions.eq(ACTIVO, Boolean.TRUE));
|
|
List<ConexionRutaLocalidadeRemovida> conexionRutaLocalidadeRemovidaList = c.list();
|
|
return conexionRutaLocalidadeRemovidaList;
|
|
} catch (Exception e) {
|
|
log.error("Erro ao obter paradas por por paradaIdList", e);
|
|
return null;
|
|
}
|
|
|
|
}
|
|
|
|
@Override
|
|
public ConexionRutaLocalidadeRemovida obtenerPorParadaIdEConexionrutaconfId(Integer conexionRutaConfId,
|
|
Integer paradaId) {
|
|
// TODO Auto-generated method stub
|
|
try {
|
|
Criteria c = this.makeCriteria();
|
|
c.add(Restrictions.eq("conexionRutaConfId", conexionRutaConfId));
|
|
c.add(Restrictions.eq("paradaId", paradaId));
|
|
c.add(Restrictions.eq(ACTIVO, Boolean.TRUE));
|
|
List<ConexionRutaLocalidadeRemovida> conexionRutaLocalidadeRemovidaList = c.list();
|
|
return conexionRutaLocalidadeRemovidaList != null && conexionRutaLocalidadeRemovidaList.size() > 0 ? conexionRutaLocalidadeRemovidaList.get(0) : null;
|
|
} catch (Exception e) {
|
|
log.error("Erro ao obter paradas por conexionRutaConfId e por paradaId", e);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public List<ConexionRutaLocalidadeRemovida> obtenerPorConexionrutaconfIdEParadaIdList(Integer conexionRutaConfId,List<Long> paradaIdList) {
|
|
try {
|
|
Criteria c = this.makeCriteria();
|
|
c.add(Restrictions.eq("conexionRutaConfId", conexionRutaConfId));
|
|
c.add(Restrictions.in("paradaId", paradaIdList));
|
|
c.add(Restrictions.eq(ACTIVO, Boolean.TRUE));
|
|
List<ConexionRutaLocalidadeRemovida> conexionRutaLocalidadeRemovidaList = c.list();
|
|
return conexionRutaLocalidadeRemovidaList;
|
|
} catch (Exception e) {
|
|
log.error("Erro ao obter paradas por conexionRutaConfId e paradaIdList", e);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void removerTodosPorConexionrutaconfId(Integer conexionRutaConfId) {
|
|
StringBuilder hql = new StringBuilder();
|
|
hql.append("delete CONEXION_RUTA_LOC_REMOVIDA ");
|
|
hql.append("where CONEXIONRUTACONF_ID=:conexionRutaConfId ");
|
|
Query query = getSession().createSQLQuery(hql.toString());
|
|
query.setInteger("conexionRutaConfId", conexionRutaConfId);
|
|
query.executeUpdate();
|
|
}
|
|
}
|