public static bool IsHavePermission(RolePermissionInfo model) { string text = HiCache.Get(string.Format("DataCache-RolePermissions-{0}", model.RoleId)) as string; List <RolePermissionInfo> list = new List <RolePermissionInfo>(); if (!string.IsNullOrEmpty(text)) { string value = HiCryptographer.Decrypt(text); list = JsonConvert.DeserializeObject <List <RolePermissionInfo> >(value); } if (list == null || list.Count == 0) { list = new RolePermissionDao().GetPermissionsByRoleId(model.RoleId); string obj = HiCryptographer.Encrypt(JsonConvert.SerializeObject(list)); HiCache.Insert(string.Format("DataCache-RolePermissions-{0}", model.RoleId), obj, 360, CacheItemPriority.Normal); } bool result; if (list == null || list.Count == 0) { result = false; } else { RolePermissionInfo rolePermissionInfo = list.FirstOrDefault((RolePermissionInfo p) => p.PermissionId == model.PermissionId); result = (rolePermissionInfo != null); } return(result); }
public static bool IsHavePermission(RolePermissionInfo model) { string str = HiCache.Get(string.Format("DataCache-RolePermissions-{0}", model.RoleId)) as string; List <RolePermissionInfo> permissionsByRoleId = new List <RolePermissionInfo>(); if (!string.IsNullOrEmpty(str)) { permissionsByRoleId = JsonConvert.DeserializeObject <List <RolePermissionInfo> >(HiCryptographer.Decrypt(str)); } if ((permissionsByRoleId == null) || (permissionsByRoleId.Count == 0)) { permissionsByRoleId = new RolePermissionDao().GetPermissionsByRoleId(model.RoleId); string str3 = HiCryptographer.Encrypt(JsonConvert.SerializeObject(permissionsByRoleId)); HiCache.Insert(string.Format("DataCache-RolePermissions-{0}", model.RoleId), str3, 360, CacheItemPriority.Normal); } return(((permissionsByRoleId != null) && (permissionsByRoleId.Count != 0)) && (permissionsByRoleId.FirstOrDefault <RolePermissionInfo>(p => (p.PermissionId == model.PermissionId)) != null)); }