/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package ec.gob.mcds.seguridades.dao; import ec.gob.mcds.seguridades.generico.Generico; import ec.gob.mcds.seguridades.model.Aplicacion; import ec.gob.mcds.seguridades.model.Rol; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.ejb.LocalBean; import javax.ejb.Stateless; import javax.faces.model.SelectItem; import javax.persistence.Query; /** * * @author christian * @author wladdy */ @LocalBean @Stateless public class RolDao extends Generico<Rol> { public RolDao() { super(Rol.class); } /** * método que devuelve todos los roles activos de seguridades. * * @throws Exception * @return List */ public List<Rol> listarTodoActivo() throws Exception { String jpaQl = "SELECT r FROM Rol r" + " WHERE r.estado = true"; Query query = getEntityManager().createQuery(jpaQl); return query.getResultList(); } /** * método que devuelve todos los roles activos por aplicacion de seguridades. * * @param aplicacion * @throws Exception * @return List */ public List<Rol> listarPorAplicacion(Aplicacion aplicacion) throws Exception { String jpaQl = "SELECT r FROM Rol r" + " WHERE r.aplicacion = :aplicacion AND r.estado = true"; Query query = getEntityManager().createQuery(jpaQl); query.setParameter("aplicacion", aplicacion); return query.getResultList(); } /** * método que devuelve todos los roles de seguridades. * * @throws Exception * @return List */ public List<Rol> listarTodo() throws Exception { String jpaQl = "SELECT p FROM Rol p" + " ORDER BY p.nombre"; Query query = getEntityManager().createQuery(jpaQl); return query.getResultList(); } public List<SelectItem> getComboRol(String idAplicacion) throws Exception { List<SelectItem> listaDatos = new ArrayList<SelectItem>(); Aplicacion aplicacion = new Aplicacion(Long.valueOf(idAplicacion)); List<Rol> listaRol = listarPorAplicacion(aplicacion); for (Rol i : listaRol) { listaDatos.add(new SelectItem(i.getRolId(), i.getNombre())); } return listaDatos; } }