public void Refresh()
        {
            AddedMenuItems.Clear();
            if (CurrentScreenMenu == null)
            {
                CurrentScreenMenu = AppServices.MainDataContext.SelectedDepartment != null
                    ? AppServices.DataAccessService.GetScreenMenu(AppServices.MainDataContext.SelectedDepartment.TerminalScreenMenuId)
                    : null;

                if (CurrentScreenMenu != null)
                {
                    Categories.Clear();
                    Categories.AddRange(CurrentScreenMenu.Categories.OrderBy(x => x.Order)
                                        .Where(x => !x.MostUsedItemsCategory)
                                        .Select(x => new ScreenCategoryButton(x, CategorySelectionCommand)));
                    MostUsedItemsCategory = CurrentScreenMenu.Categories.FirstOrDefault(x => x.MostUsedItemsCategory);

                    if (MostUsedItemsCategory != null)
                    {
                        CreateMenuItemButtons(MostUsedMenuItems, MostUsedItemsCategory, CurrentPageNo, CurrentTag);
                    }

                    if (Categories.Count > 0)
                    {
                        UpdateMenuButtons(Categories[0].Category);
                    }
                }
            }
        }
        private void OnMenuItemSelected(ScreenMenuItem obj)
        {
            if (DataContext.SelectedTicket.IsLocked && !AppServices.IsUserPermittedFor(PermissionNames.AddItemsToLockedTickets))
            {
                return;
            }

            decimal selectedMultiplier = 1;

            if (!string.IsNullOrEmpty(NumeratorValue))
            {
                decimal.TryParse(NumeratorValue, out selectedMultiplier);
            }

            if (IsQuickNumeratorVisible)
            {
                NumeratorValue = QuickNumeratorValues[0];
            }

            if (selectedMultiplier > 0)
            {
                if ((QuickNumeratorValues == null || selectedMultiplier.ToString() == QuickNumeratorValues[0]) && obj.Quantity > 1)
                {
                    selectedMultiplier = obj.Quantity;
                }
            }

            var item = DataContext.SelectedTicket.AddNewItem(obj.MenuItemId, selectedMultiplier, obj.Gift, obj.DefaultProperties, obj.ItemPortion);

            if (item != null)
            {
                AddedMenuItems.Add(item);
            }
            if (obj.AutoSelect)
            {
                InvokeOnTicketItemSelected(item);
            }
        }
 public void CloseView()
 {
     AddedMenuItems.Clear();
 }