83 lines
2.5 KiB
Java
83 lines
2.5 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.ArrayList;
|
|
import java.util.List;
|
|
|
|
import org.hibernate.Criteria;
|
|
import org.hibernate.Query;
|
|
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.ClasseServicoDAO;
|
|
import com.rjconsultores.ventaboletos.entidad.ClaseServicio;
|
|
|
|
/**
|
|
*
|
|
* @author Administrador
|
|
*/
|
|
@Repository("claseServicioDAO")
|
|
public class ClasseServicoHibernateDAO extends GenericHibernateDAO<ClaseServicio, Integer> implements ClasseServicoDAO {
|
|
|
|
@Autowired
|
|
public ClasseServicoHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
|
|
setSessionFactory(factory);
|
|
}
|
|
|
|
@Override
|
|
public List<ClaseServicio> obtenerTodos() {
|
|
Criteria c = getSession().createCriteria(getPersistentClass());
|
|
c.add(Restrictions.eq("activo", Boolean.TRUE));
|
|
c.addOrder(Order.asc("descclase"));
|
|
|
|
return c.list();
|
|
}
|
|
|
|
public List<ClaseServicio> buscarPorEmpresasDoUsuario(String empresasUsuario) {
|
|
|
|
String consulta = "SELECT DISTINCT mcs.marcaClaseservicioPK.claseservicio "
|
|
+ "FROM MarcaClaseServicio mcs "
|
|
+ "WHERE mcs.marcaClaseservicioPK.marca.empresa.empresaId IN (:empresas) ";
|
|
|
|
List<Integer> ids = new ArrayList<Integer>();
|
|
for (String empresa : empresasUsuario.split(",")) {
|
|
ids.add(new Integer(empresa));
|
|
}
|
|
Query query = getSession().createQuery(consulta);
|
|
query.setParameterList("empresas", ids);
|
|
|
|
List<ClaseServicio> result = (List<ClaseServicio>) query.list();
|
|
return result;
|
|
}
|
|
|
|
public List<ClaseServicio> buscarPorNome(Integer idClaseServicio, String nomeClaseServicio) {
|
|
Criteria c = getSession().createCriteria(getPersistentClass());
|
|
c.add(Restrictions.eq("activo", Boolean.TRUE));
|
|
c.add(Restrictions.eq("descclase", nomeClaseServicio));
|
|
|
|
if (idClaseServicio != null) {
|
|
c.add(Restrictions.ne("claseservicioId", idClaseServicio));
|
|
}
|
|
|
|
return c.list();
|
|
}
|
|
|
|
public List<ClaseServicio> buscarTodosExceto(Integer... idClase) {
|
|
Criteria c = this.makeCriteria();
|
|
for (Integer id : idClase) {
|
|
c.add(Restrictions.ne("claseservicioId", id));
|
|
}
|
|
c.add(Restrictions.eq("activo", Boolean.TRUE));
|
|
c.addOrder(Order.asc("descclase"));
|
|
|
|
return c.list();
|
|
}
|
|
}
|