Exemplo n.º 1
0
        private void UpdateAfterEndOrder(int orderId)
        {
            _acceptedOrdersCache.Remove(orderId);

            SelectedAcceptedOrderMenuItems.Clear();
            AcceptedOrders.Remove(SelectedAcceptedOrder);

            RecalculateTotalPrice();
        }
Exemplo n.º 2
0
 private void RecalculateTotalPrice()
 {
     if (SelectedAcceptedOrderMenuItems == null || !SelectedAcceptedOrderMenuItems.Any())
     {
         SelectedAcceptedOrderTotalPrice = 0;
     }
     else
     {
         SelectedAcceptedOrderTotalPrice = SelectedAcceptedOrderMenuItems.Select(mi => mi.MenuItem.Price * mi.Quantity).Sum();
     }
 }
Exemplo n.º 3
0
        private void WaiterApp_AcceptedOrderInfoUpdatedHandler(object sender, AcceptedOrderCurrentStateModel orderCurrentState)
        {
            _acceptedOrdersCache[orderCurrentState.OrderId] = orderCurrentState.MenuItems;

            if (orderCurrentState.OrderId == SelectedAcceptedOrder.OrderId)
            {
                SelectedAcceptedOrderMenuItems.Clear();
                SelectedAcceptedOrderMenuItems.AddRange(_acceptedOrdersCache[orderCurrentState.OrderId]);
                RecalculateTotalPrice();
            }

            NotifyOfPropertyChange(() => CanEndOrder);
        }
Exemplo n.º 4
0
        private void UpdateSelectedAcceptedOrderMenuItems()
        {
            SelectedAcceptedOrderMenuItems.Clear();

            if (SelectedAcceptedOrder == null)
            {
                return;
            }

            IEnumerable <AcceptedOrderMenuItemQuantity> menuItems = null;

            if (_acceptedOrdersCache.TryGetValue(SelectedAcceptedOrder.OrderId, out menuItems))
            {
                SelectedAcceptedOrderMenuItems.AddRange(menuItems);
            }

            RecalculateTotalPrice();
        }