package br.com.doctors.dao.administracao; import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.criterion.Restrictions; import br.com.caelum.vraptor.ioc.Component; import br.com.doctors.dao.util.DaoImpl; import br.com.doctors.modelo.administracao.Funcionario; import br.com.doctors.modelo.administracao.PerfilUsuario; /** * * @author Jonathan/Guilherme * */ @Component public class FuncionarioDao extends DaoImpl<Funcionario> { public FuncionarioDao(Session session) { super(session, Funcionario.class); } public Funcionario buscaPorPerfil(PerfilUsuario usuario) { Criteria criteria = getSession().createCriteria(Funcionario.class) .createCriteria("perfil").add(Restrictions.idEq(usuario.getId())) .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); return (Funcionario) criteria.uniqueResult(); } }