コード例 #1
0
ファイル: Security.cs プロジェクト: windygu/ger20160318
        public static bool AllowFunction(string IdVariable, string IdUsuario)
        {
            ///Como primer paso me fijo si tiene permiso definida por la variable (Sy_variables)
            ///En caso contrario: Tomo el usuario (_idUsuario)
            ///Con este dato busco los perfiles
            ///con los perfiles busco la IdVariable
            ///Si no la encuentro AllowFuncion devuelve false

            ///
            bool resultVariable = Variables.GetVariablesValueBool(IdVariable);

            if (resultVariable)
            {
                return(true);
            }
            resultVariable = Variables.GetVariablesUsuariosValueBool(IdVariable, IdUsuario);
            if (resultVariable)
            {
                return(true);
            }
            bool resultPerfil = false;
            sy_PerfilesUsuariosEmpresasDataset perfiles = sy_PerfilesUsuariosEmpresas.GetList(IdUsuario, _idEmpresa);

            foreach (sy_PerfilesUsuariosEmpresasDataset.sy_PerfilesUsuariosEmpresasRow row in perfiles.sy_PerfilesUsuariosEmpresas.Rows)
            {
                long IdPerfil = row.IdPerfil;
                sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowVP = sy_VariablesPerfiles.GetByPk(IdVariable, IdPerfil);
                if (rowVP != null)
                {
                    resultPerfil = Convert.ToBoolean(rowVP.Valor);
                }
                if (resultPerfil)
                {
                    return(true);
                }
            }
            return(resultPerfil);
        }