private static void ProUsuarioRolFuncionAction(object sender, DoWorkEventArgs e) { var numeroUnicoDocumento = e.Argument as string; if (!string.IsNullOrWhiteSpace(numeroUnicoDocumento)) { using (var contexto = new NeuronOscEntitites(NeuronOSCStorage.EntityConnectionString)) { try { var resul = contexto.PRO_UsuarioRolFuncion(numeroUnicoDocumento, "CapturaManual"); if (resul != null) { OscClaims.SetClaims(resul.Where(claim => claim.Aplicacion.ToUpperInvariant() == "OSC").Select(claim => claim.Funcion).ToArray()); e.Result = true; } else { e.Result = false; } } catch (Exception) { e.Cancel = true; } } } else { throw new ArgumentException("No se Enviaron Los parametros de la Consulta"); } }
public static bool PuedeEjecutarAnular() { var currentPrincipal = ConfiguracionGlobal.IPrincipalActual as NeuronCloudPrincipal; if (currentPrincipal != null) { if (currentPrincipal.PermisosOsc(new Func <bool>(() => OscClaims.ValidateClaims("ANULAR")))) { return(true); } } return(false); }