예제 #1
0
        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);
        }
예제 #2
0
        public static string JsonFuncModel(int fMDID, string userId)
        {
            string str = string.Empty;

            return(JsonConvert.SerializeObject(FuncModelUtils.FilterUserMenu(FuncModelUtils.GetFuncModelMenu(fMDID), userId).Children));
        }