public static TimMenu FilterUserMenu(TimMenu menu, string userId) { TimMenu timMenu = new TimMenu(); timMenu.Id = menu.Id; timMenu.Name = menu.Name; timMenu.Order = menu.Order; timMenu.FatherId = menu.FatherId; timMenu.Type = menu.Type; timMenu.Url = menu.Url; foreach (TimMenu menu2 in menu.Children) { bool flag = menu2.Type == ModuleType.C; if (flag) { TimMenu timMenu2 = FuncModelUtils.FilterUserMenu(menu2, userId); bool flag2 = timMenu2 != null && timMenu2.Children.Count > 0; if (flag2) { timMenu.Children.Add(timMenu2); } } else { UserModulePermission modulePermission = PermissionUtils.GetUserModulePermission(userId, menu2.Id); bool flag3 = modulePermission != null && modulePermission.View; if (flag3) { timMenu.Children.Add(menu2); } } } return(timMenu); }
public static string JsonFuncModel(int fMDID, string userId) { string str = string.Empty; return(JsonConvert.SerializeObject(FuncModelUtils.FilterUserMenu(FuncModelUtils.GetFuncModelMenu(fMDID), userId).Children)); }