示例#1
0
        public HttpResponseMessage GetMenu()
        {
            return(this.ExecuteTryCatch(() =>
            {
                MenuVM pvm = new MenuVM();
                pvm.TemData = new MenuTM()
                {
                    Code = "M100",
                    Type = 1,
                    Name = "测试菜单",
                    FatherCode = string.Empty,
                    Sort = 1,
                    State = 0,
                    Description = "detail",
                    Href = "/orderCycleList"
                };

                MenuVM pvm2 = new MenuVM();
                pvm2.TemData = new MenuTM()
                {
                    Code = "M1001",
                    Type = 1,
                    Name = "测试菜单2",
                    FatherCode = "M100",
                    Sort = 1,
                    State = 0,
                    Description = "detail",
                    Href = "/orderCycleList"
                };
                List <MenuVM> pli = new List <MenuVM>();
                pli.Add(pvm);
                pli.Add(pvm2);
                return pli;
            }));
        }
示例#2
0
        // GET: Menus/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            var items = await _context.MenuItem.ToArrayAsync();

            ViewData["MenuList"] = new SelectList(items, "Id", "ItemName");
            var menu = await _context.Menu.SingleOrDefaultAsync(m => m.Id == id);

            if (menu == null)
            {
                return(NotFound());
            }
            var menuVM = new MenuVM
            {
                Id     = menu.Id,
                Name   = menu.MenuName,
                Price  = menu.MenuPrice,
                UserID = menu.UserId
            };

            return(View(menuVM));
        }
示例#3
0
        private void setupViewModels()
        {
            setupRuntime();

            camInfoList   = new List <CameraInfo>();
            IP2CameraInfo = new Dictionary <string, CameraInfo>();
            // initialize camera list view
            CamListVM      = new CameraListVM(camInfoList, cameraNameList);
            cameraExplorer = new CameraExplorer(camInfoList, IP2CameraInfo, IP2CameraName, cameraNameList);

            // initialize preview View
            PreviewVM = new PreviewVM();

            // initialize output view

            OutputVM = new OutputVM(IP2CameraInfo);

            // set up bottom right area: presetting
            PresetVM = new PresetVM(presetList, camInfoList, PresetName2Preset, cameraNameList);

            // set up bottom right area: program
            ProgramVM       = new ProgramVM(programList, camInfoList, cameraNameList, presetList);
            ProgramRunBarVM = new ProgramRunBarVM(programList, PresetName2Preset, CameraName2IP);

            // set up menu bar
            MenuBarVM = new MenuVM(camInfoList, cameraNameList);

            // set up status bar
            StatusBarVM = new StatusBarVM();

            // change to dark mode when program starts up
            changeModeShortCut(modeColors);

            notificationCenter.GetEvent <RelaunchRuntimeEvent>().Subscribe(relaunchRuntime);
        }
示例#4
0
        public List <MenuVM> GetMenu(int UserId, int SysTypeId)
        {
            var MenuList    = new List <MenuVM>();
            var ProgramList = DapperHelper.SqlQuery <EM_System_Program>(@"select b.SystemType ,b.ControllerName,b.ControllerDescription,b.ActionName,b.ActionDescription,b.Id from EM_User_Right a 
join EM_System_Program b on a.ProgramId=b.Id and b.RightType=1   and ( b.SystemType=@SysTypeId or b.SystemType=3)
and a.RoleId =(select top(1) a.RoleId from EM_User_Account a
join EM_User_Role b on a.RoleId=b.id
where a.UserId=@UserId ) and a.Permit=1", new { UserId = UserId, SysTypeId = SysTypeId });

            var Controls = ProgramList.Select(o => new Tuple <string, string>(o.ControllerName, o.ControllerDescription)).Distinct();

            foreach (var Control in Controls)
            {
                var menu = new MenuVM();
                menu.ProgramId = Control.Item1;
                menu.Name      = Control.Item2;
                menu.Items     = ProgramList.Where(o => o.ControllerName == Control.Item1).Select(o => new MenuVM()
                {
                    ProgramId = o.ControllerName + "_" + o.ActionName,
                    Url       = o.ControllerName + "/" + o.ActionName,
                    Name      = o.ActionDescription,
                }).ToList();
                MenuList.Add(menu);
            }
            return(MenuList);
        }
示例#5
0
        public ActionResult Edit(MenuVM menu)
        {
            Menu a = new Menu();

            if (ModelState.IsValid)
            {
                a.MenuID = menu.MenuID;
                a.Title  = menu.Title;
                a.Link   = menu.Link;
                if (menu.ParentID != null)
                {
                    a.ParentID = menu.ParentID;
                }
                a.MenuOrder          = menu.MenuOrder;
                a.IsAccountMenu      = menu.IsAccountMenu;
                a.PermissionRequired = menu.PermissionRequired;
                if (menu.Active == true)
                {
                    a.IsActive = 1;
                }
                else
                {
                    a.IsActive = 0;
                }

                db.Entry(a).State = EntityState.Modified;
                db.SaveChanges();
                TempData["SuccessMsg"] = "You have successfully Updated Menu.";
                return(View("Index", db.Menus.ToList()));
            }
            return(View(menu));
        }
示例#6
0
        private static TagBuilder ObterTagLi(MenuVM menu)
        {
            TagBuilder tagLi = null;

            if (menu.SubMenus.Count > 0)
            {
                tagLi = ObterTagLi("dropdown");
                // montarTagUl e recursividade
                var tagSpanIcone = ObterTagSpan("iconfa-laptop");
                var tagALink     = ObterTagA(tagSpanIcone.ToString() + menu.Descricao);
                var tagUl        = ObterTagUl();

                var conteudoUl = new StringBuilder();

                foreach (var subMenu in menu.SubMenus)
                {
                    conteudoUl.Append(ObterTagLi(subMenu));
                }

                tagUl.InnerHtml = conteudoUl.ToString();

                tagLi.InnerHtml = tagALink.ToString() + tagUl.ToString();
            }
            else
            {
                tagLi = ObterTagLi();
                var tagSpanIcone = ObterTagSpan("iconfa-laptop");
                var tagALink     = ObterTagA(tagSpanIcone.ToString() + menu.Descricao, menu.Link);
                tagLi.InnerHtml = tagALink.ToString();
            }

            return(tagLi);
        }
示例#7
0
        public void Detalii(object obj)
        {
            MenuVM menuVM = obj as MenuVM;

            List <Alergen> alergeni = restaurant.Alergens.ToList();

            if (menuVM == null)
            {
                MessageBox.Show("Va rugam selectati un preparat!", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else
            {
                nume_alergeni.Clear();
                foreach (var i in restaurant.ShowAlergeni(menuVM.IdPreparat).ToList())
                {
                    foreach (Alergen alg in alergeni)
                    {
                        if (i == alg.id_alergen)

                        {
                            nume_alergeni.Add(alg.denumire_alergen);
                        }
                    }
                }
                menuVM.Alergeni = nume_alergeni;
            }
        }
示例#8
0
        public ActionResult Edit(int id = 0)
        {
            Menu   menu = db.Menus.Find(id);
            MenuVM v    = new MenuVM();

            if (menu == null)
            {
                return(HttpNotFound());
            }
            else
            {
                v.MenuID             = menu.MenuID;
                v.Title              = menu.Title;
                v.ParentID           = menu.ParentID;
                v.Link               = menu.Link;
                v.MenuOrder          = menu.MenuOrder;
                v.IsAccountMenu      = menu.IsAccountMenu;
                v.PermissionRequired = menu.PermissionRequired;

                if (menu.IsActive == 0)
                {
                    v.Active = false;
                }
                else
                {
                    v.Active = true;
                }
            }
            ViewBag.Menu = db.Menus.ToList();

            return(View(v));
        }
示例#9
0
        public IList <MenuVM> BuildMenu()
        {
            _IMenu = new MenuImpl();
            var menulist = _IMenu.ListofMenus();

            IList <MenuVM> mmList = new List <MenuVM>();

            if (menulist != null)
            {
                if (menulist.Count() > 0)
                {
                    for (int i = 0; i < menulist.Count(); i++)
                    {
                        var mmitem = new MenuVM();
                        mmitem.Id         = menulist[i].Id;
                        mmitem.Name       = menulist[i].Name;
                        mmitem.ParentId   = menulist[i].ParentId;
                        mmitem.SortOrder_ = menulist[i].SortOrder_;
                        mmitem.UrlLink    = menulist[i].UrlLink == "" || menulist[i].UrlLink == null ? "#" : menulist[i].UrlLink;
                        mmitem.Icon       = menulist[i].Icon == null ? "" : menulist[i].Icon;
                        mmitem.ChildCount = menulist[i].ChildCount;
                        mmitem.MenuLevel  = getMenuLevel(menulist[i].ParentId);
                        mmList.Add(mmitem);
                    }
                }
            }
            return(mmList);
        }
示例#10
0
        public ActionResult Create(MenuVM menu)
        {
            int max = (from c in db.Menus orderby c.MenuID descending select c.MenuID).FirstOrDefault();

            menu.MenuID = max + 1;
            Menu a = new Menu();

            a.Title = menu.Title;
            a.Link  = menu.Link;
            if (menu.ParentID != null)
            {
                a.ParentID = menu.ParentID;
            }
            a.MenuOrder          = menu.MenuOrder;
            a.IsAccountMenu      = menu.IsAccountMenu;
            a.PermissionRequired = menu.PermissionRequired;
            if (menu.Active == true)
            {
                a.IsActive = 1;
            }
            else
            {
                a.IsActive = 0;
            }

            db.Menus.Add(a);
            db.SaveChanges();
            TempData["SuccessMsg"] = "You have successfully added Menu.";
            return(View("Index", db.Menus.ToList()));
        }
示例#11
0
        public JsonResult UpdateMenu(MenuVM mainMenu, string navId)
        {
            if (ModelState.IsValid)
            {
                Guid?parentNo = mainMenu.MenuUpdateLeve12 ?? mainMenu.MenuUpdateLevel1 ?? mainMenu.ParentNo;
                mainMenu.MenuLinkUrl      = mainMenu.MenuUpdateLeve12.HasValue ? mainMenu.MenuLinkUrl : string.Empty;
                mainMenu.ModuleController = mainMenu.MenuUpdateLeve12.HasValue ? mainMenu.ModuleController : string.Empty;

                UpdateInfo updateInfo = new UpdateInfo()
                {
                    dynamicData = new
                    {
                        mainMenu.SysNo,
                        mainMenu.MenuName,
                        mainMenu.Sort,
                        mainMenu.IsSelected,
                        IsLeaf   = mainMenu.MenuUpdateLeve12.HasValue,
                        ParentNo = parentNo,
                        StatusDB = (int)mainMenu.Status,
                        mainMenu.MenuLinkUrl,
                        mainMenu.ModuleController,
                        ModifyDate      = DateTime.Now,
                        ModifyUserSysNo = AccountManager.Current.CurrentUser.SysNo
                    }
                };

                bool   status  = _moduleBizProcess.UpdateMenu(updateInfo);
                string message = status ? "修改主菜单成功" : "修改主菜单失败";
                return(this.ReturnDWZOperate(navId, message, status, ReturnDWZType.ReturnRefrash));
            }

            return(this.ReturnDWZError("验证主菜单信息失败"));
        }
示例#12
0
 private void AdicionarMenuDeAcesso(MenuVM model)
 {
     if (!model.Ferramenta && !model.Raiz)
     {
         menuServices.AdicionarMenuDeAcesso(model.MenuPaiId.Value, model.Titulo, model.Ordem);
         SaveChanges();
     }
 }
        public async Task <IViewComponentResult> InvokeAsync()
        {
            MenuVM indexVM = new MenuVM();

            indexVM.machineList = _context.Machines.ToList();

            return(View(indexVM));
        }
示例#14
0
 private void AdicionarMenuRaiz(MenuVM model)
 {
     if (model.Raiz)
     {
         menuServices.AdicionarMenuRaiz(model.Titulo, model.Ordem);
         SaveChanges();
     }
 }
示例#15
0
 private void AdicionarMenuFerramenta(MenuVM model)
 {
     if (model.Ferramenta)
     {
         menuServices.AdicionarMenuFerramenta(model.MenuPaiId.Value, model.Titulo, model.Url, model.Ordem);
         SaveChanges();
     }
 }
示例#16
0
        public ActionResult Create()
        {
            var menu = new MenuVM();

            menu.DefinirTipo(MenuTipo.Raiz);

            return(View("Create", menu));
        }
示例#17
0
        public ActionResult Header(string appName = "root")
        {
            var menu = new MenuVM()
            {
                IsAuthenticated = false, DisplayName = "", MenuItems = new List <Item>()
            };

            return(PartialView(menu));
        }
示例#18
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public async Task <List <MenuVM> > GetMenu(int userId)
        {
            List <MenuVM> parentMenuList = new List <MenuVM>();
            //获得用户直接角色
            var roleIds = await Task.Run(() => _roleUsers_dal.Query(r => r.User_Id == userId).Result.Select(r => r.Role_Id).ToList());

            //获得用户组
            var userGroupIds = await Task.Run(() => _userGroupUsers_dal.Query(m => m.User_Id == userId).Result.Select(g => g.UserGroup_Id).ToList());

            //获得用户组角色
            var userGroupRoleIds = await Task.Run(() => _userGroupRoles_dal.Query(r => userGroupIds.Contains(r.UserGroup_Id)).Result.Select(r => r.Role_Id).ToList());

            //获得用户总角色
            roleIds.AddRange(userGroupRoleIds);
            var roleIdsByUser = roleIds.Distinct().ToList();
            //获得用户总角色权限
            var permissionIds = await Task.Run(() => _permissionRoles_dal.Query(p => roleIdsByUser.Contains(p.Role_Id)).Result.Select(p => p.Permission_Id).Distinct().ToList());

            var permissions = await Task.Run(() => _permissions_dal.Query(p => p.Enabled && permissionIds.Contains(p.Id)));

            //获得用户权限菜单
            var ModuleIds    = permissions.Select(p => p.ModuleId).Distinct().ToList();
            var childModules = await Task.Run(() => _modules_dal.Query(m => ModuleIds.Contains(m.Id)));

            if (childModules.Count > 0)
            {
                var ParentIds  = childModules.Select(m => m.ParentId).Distinct().ToList();
                var parentMenu = await Task.Run(() => _modules_dal.Query(m => ParentIds.Contains(m.Id)).Result);

                foreach (var item in parentMenu)
                {
                    MenuVM menu = new MenuVM();
                    menu.id       = item.Id;
                    menu.isOpen   = false;
                    menu.text     = item.Name;
                    menu.icon     = item.Icon;
                    menu.children = new List <MenuVM>();
                    foreach (var child in childModules)
                    {
                        MenuVM childMenu = new MenuVM();
                        if (child.ParentId == item.Id)
                        {
                            childMenu.id         = child.Id;
                            childMenu.isOpen     = false;
                            childMenu.url        = child.LinkUrl;
                            childMenu.text       = child.Name;
                            childMenu.targetType = "iframe-tab";
                            childMenu.icon       = child.Icon;
                            menu.children.Add(childMenu);
                        }
                    }
                    parentMenuList.Add(menu);
                }
            }

            return(parentMenuList);
        }
示例#19
0
        public MenuPage()
        {
            Title = "Menu";

            InitializeComponent();

            menuVM         = new MenuVM();
            BindingContext = menuVM;
        }
示例#20
0
        public Menu GetSearchedMenu(MenuVM vm)
        {
            var criteria = new MenuCriteria {
                FMenuName = vm.MenuName, FController = vm.Controller, FAction = vm.Action
            };
            var specification = new MenuSpecification(criteria);
            var menu          = _menuRepository.Find(specification).FirstOrDefault();

            return(menu);
        }
示例#21
0
        public MenuUserControl(Save save, User user)
        {
            InitializeComponent();
            InitializationButtons();
            this._menu = new MenuVM(save, user);
            SideMenuGrid.Visibility = Visibility.Hidden;

            DataContext             = this._menu;
            MemberButton.Background = SolidColorBrushHelper.DarkGreen();
        }
示例#22
0
        public async Task <IActionResult> Menu(long id)
        {
            MenuVM vm = new MenuVM();

            vm.userID = id;
            User u = await db.Users.FindAsync(id);

            vm.name = u.Username;
            return(View(vm));
        }
示例#23
0
 public MenuController(ApplicationDbContext db, IHostingEnvironment he)
 {
     _db = db;
     _he = he;
     vM  = new MenuVM()
     {
         lstCategory = _db.Category,
         Menu        = new Models.Menu()
     };
 }
示例#24
0
        public ActionResult Edit(MenuVM model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            _appServices.AtualizarMenu(model);
            return(RedirectToAction("Index"));
        }
示例#25
0
        public static IEnumerable <MenuVM> GetPagesForSelectedRole(long userRoleId)
        {
            using (var db = new DBEntities())
            {
                var    lstMenu = new List <MenuVM>();
                MenuVM objMenu;

                var lstResult = (from link in db.Links
                                 join module in db.Modules on link.ModuleId equals module.ModuleId
                                 where link.IsVisible == true
                                 select new
                {
                    link.LinkId,
                    link.LinkName,
                    link.Action,
                    link.Controller,
                    link.ModuleId,
                    link.Module,
                    link.IsDefault,
                    link.IsSingle,
                    module.CssClass,
                    module.ViewIndex
                }).OrderBy(s => s.ViewIndex).ToList();

                foreach (var item in lstResult.ToList())
                {
                    objMenu = new MenuVM
                    {
                        LinkID     = item.LinkId,
                        LinkName   = item.LinkName,
                        Action     = item.Action,
                        Controller = item.Controller,
                        ModuleID   = item.ModuleId,
                        ModuleName = item.Module.ModuleName,
                        IsDefault  = item.IsDefault,
                        IsSingle   = item.IsSingle,
                        CssClass   = item.CssClass
                    };

                    var firstOrDefault =
                        db.UserRights.FirstOrDefault(x => x.LinkId == objMenu.LinkID && x.RoleMasterId == userRoleId);
                    if (firstOrDefault != null)
                    {
                        objMenu.IsAccess   = firstOrDefault.IsAccess;
                        objMenu.UserRoleID = firstOrDefault.RoleMasterId;
                    }


                    lstMenu.Add(objMenu);
                }

                return(lstMenu);
            }
        }
示例#26
0
        public MenuPage()
        {
            MenuVM viewModel;

            InitializeComponent();

            NavigationPage.SetHasNavigationBar(this, false);

            viewModel = new MenuVM();

            BindingContext = viewModel;
        }
示例#27
0
        private void AddSubMenu(ref MenuVM menu, List <MenuVM> menuList)
        {
            var currentMenu = menu;
            var parent      = menuList.Where(p => p.IsActive && p.ParentId == currentMenu.Id).OrderBy(p => p.Order).ToList();

            foreach (var childItem in parent)
            {
                var currentChildItem = childItem.MapProperties <MenuVM>();
                currentMenu.SubMenu.Add(currentChildItem);
                AddSubMenu(ref currentChildItem, menuList);
            }
        }
示例#28
0
        public void AtualizarMenu(MenuVM model)
        {
            var menu = SistemaCQRS.ObterPorId <Menu>(model.Id);

            menu.Titulo = model.Titulo;
            menu.Url    = model.Url;
            menu.Ordem  = model.Ordem;

            AtualizarMenuRaiz(menu);
            AtualizarMenuFerramenta(menu);
            AtualizarMenuDeAcesso(menu);
        }
        protected MenuVM CreateProjectMenu()
        {
            MenuVM menu = new MenuVM();

            menu.ViewModels.AddRange(new List <MenuNodeVM> {
                new MenuNodeVM(DeleteCommand, null, Catalog.GetString("Delete"))
                {
                    Color = App.Current.Style.ColorAccentError
                },
            });

            return(menu);
        }
示例#30
0
        public IActionResult Get()
        {
            // Map to VM
            var menu = new MenuVM {
                Id       = Data.All.Menu.Id,
                Products = Data.All.Menu.Products.Select(x => Data.All.Products[x]).ToList()
            };

            //Serialize into JSON:API format
            var json = JsonConvert.SerializeObject(menu, new JsonApiSerializerSettings());

            return(Ok(json));
        }