예제 #1
0
        public MenuModel GetMenu(int id, bool getrf = false)
        {
            MenuModel  menu = new MenuModel();
            WcsMenuDtl dtl  = GetMenuDtl(id);

            if (dtl != null && (!dtl.rf || getrf))
            {
                menu.Id       = dtl.id;
                menu.FolderId = dtl.folder_id;
                menu.Name     = dtl.name;
                menu.OpenPage = !dtl.folder;
                menu.ModuleId = dtl.module_id;
                menu.MenuId   = dtl.menu_id;
                menu.Rf       = dtl.rf;
                if (!dtl.folder)
                {
                    WcsModule md = GetModule(dtl.module_id);
                    if (md != null)
                    {
                        menu.IKey = md.key;
                    }
                    else
                    {
                        menu.IKey = "没有配置菜单IKEY";
                    }
                }
                else
                {
                    List <WcsMenuDtl> dtls = GetMenuDtls(dtl.id);
                    if (dtls.Count > 0)
                    {
                        dtls.Sort((x, y) => x.order.CompareTo(y.order));
                    }

                    foreach (var item in dtls)
                    {
                        menu.AddMenu(GetMenu(item.id));
                    }
                }

                return(menu);
            }
            return(null);
        }