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.CustomDAO; import com.rjconsultores.ventaboletos.entidad.Custom; /** * * @author Lucas */ @Repository("customDAO") public class CustomHibernateDAO extends GenericHibernateDAO implements CustomDAO { @Autowired public CustomHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { setSessionFactory(factory); } @Override public List obtenerTodos() { Criteria c = getSession().createCriteria(getPersistentClass()); c.add(Restrictions.eq("activo", Boolean.TRUE)); return c.list(); } public Custom buscar(String chave) { Criteria c = getSession().createCriteria(getPersistentClass()); c.add(Restrictions.eq("activo", Boolean.TRUE)); c.add(Restrictions.ilike("chave", chave)); return c.list().isEmpty() ? null : (Custom) c.list().get(0); } public Custom buscar(Integer sistema, String chave) { Criteria c = getSession().createCriteria(getPersistentClass()); c.add(Restrictions.eq("activo", Boolean.TRUE)); c.add(Restrictions.eq("sistema", sistema)); c.add(Restrictions.ilike("chave", chave)); return c.list().isEmpty() ? null : (Custom) c.list().get(0); } }