private void LLenaUsuarios() { try { List <int> lstSubRoles = ((Usuario)Session["UserData"]).UsuarioGrupo.Where(w => w.SubGrupoUsuario != null && w.IdGrupoUsuario == IdGrupoAsignado).Select(s => s.SubGrupoUsuario).Select(subRol => subRol.IdSubRol).ToList(); List <SubRolEscalacionPermitida> lstAsignacionesPermitidas = new List <SubRolEscalacionPermitida>(); switch (int.Parse(ddlCambiarAsignar.SelectedValue)) { case (int)BusinessVariables.EnumeradoresKiiniNet.EnumEstatusAsignacion.Asignado: foreach (int subRol in lstSubRoles) { lstAsignacionesPermitidas.AddRange(_servicioSubRol.ObtenerEscalacion(subRol, int.Parse(ddlCambiarAsignar.SelectedValue), null)); } break; case (int)BusinessVariables.EnumeradoresKiiniNet.EnumEstatusAsignacion.ReAsignado: lstAsignacionesPermitidas.AddRange(_servicioSubRol.ObtenerEscalacion(IdSubRolActual, int.Parse(ddlCambiarAsignar.SelectedValue), IdNivelAsignacion)); break; case (int)BusinessVariables.EnumeradoresKiiniNet.EnumEstatusAsignacion.Escalado: foreach (int subRol in lstSubRoles) { lstAsignacionesPermitidas.AddRange(_servicioSubRol.ObtenerEscalacion(subRol, int.Parse(ddlCambiarAsignar.SelectedValue), IdNivelAsignacion)); } break; } int idUsuario = ((Usuario)Session["UserData"]).Id; List <int> sbrls = lstAsignacionesPermitidas.Select(s => s.IdSubRolPermitido).Distinct().ToList(); List <HelperUsuarioAgente> lstUsuario = _servicioUsuario.ObtenerUsuarioAgenteByGrupoUsuario(IdGrupoAsignado, idUsuario, sbrls).ToList(); ddlUsuarioAsignacion.DataFieldID = "IdUsuario"; ddlUsuarioAsignacion.DataFieldParentID = "IdSubRol"; ddlUsuarioAsignacion.DataValueField = "IdUsuario"; ddlUsuarioAsignacion.DataTextField = "NombreUsuario"; ddlUsuarioAsignacion.DataSource = lstUsuario; ddlUsuarioAsignacion.DataBind(); divUsuariosAsignacion.Visible = lstUsuario.Any(); } catch (Exception e) { throw new Exception(e.Message); } }