public bool HasPermission(ModuleCategoryType categoryType, ModuleType moduleType, string operationCode) { if (User.IsAdmin) { return true; } return this.UserPermission.HasPermission(categoryType, moduleType, operationCode); }
public bool HasPermission(ModuleCategoryType categoryType, ModuleType moduleType, string operationCode) { bool isOwn = false; if (FunctionPermissions.ContainsKey("admin")) { return true; } if (FunctionPermissions.Count == 0) { return false; } List<FuncPermissionStatus> category; if (FunctionPermissions.TryGetValue("root", out category)) { foreach (FuncPermissionStatus item in category) { if (item.Code == Enum.GetName(typeof(ModuleCategoryType), categoryType)) { isOwn = item.HasPermission; } } } List<FuncPermissionStatus> module; if (FunctionPermissions.TryGetValue(Enum.GetName(typeof(ModuleCategoryType), categoryType), out module)) { foreach (FuncPermissionStatus item in module) { if (item.Code == Enum.GetName(typeof(ModuleType), moduleType)) { isOwn = item.HasPermission; } } } List<FuncPermissionStatus> operation; if (FunctionPermissions.TryGetValue(Enum.GetName(typeof(ModuleType), moduleType), out operation)) { foreach (FuncPermissionStatus item in operation) { if (item.Code == operationCode) { isOwn = item.HasPermission; } } } return isOwn; }