private void OnMergedItemSelected(MergedItem obj)
 {
     if (obj.RemainingQuantity > 0)
     {
         decimal quantity = 1;
         if (GetTenderedValue() > 0) quantity = GetTenderedValue();
         if (quantity > obj.RemainingQuantity) quantity = obj.RemainingQuantity;
         _selectedTotal += obj.Price * quantity;
         if (_selectedTotal > SelectedTicket.GetRemainingAmount())
             _selectedTotal = SelectedTicket.GetRemainingAmount();
         PaymentAmount = _selectedTotal.ToString("#,#0.00");
         TenderedAmount = "";
         _resetAmount = true;
         obj.IncQuantity(quantity);
     }
     ReturningAmountVisibility = Visibility.Collapsed;
 }
 private void CreateMergedItem(decimal sum, Order item, decimal serviceAmount)
 {
     var price = item.GetItemPrice();
     price += (price * serviceAmount) / sum;
     if (!item.TaxIncluded) price += item.TaxAmount;
     var mitem = MergedItems.SingleOrDefault(x => x.MenuItemId == item.MenuItemId && x.Price == price);
     if (mitem == null)
     {
         mitem = new MergedItem();
         try
         {
             mitem.Description = item.MenuItemName + item.GetPortionDesc();
             mitem.Price = price;
             mitem.MenuItemId = item.MenuItemId;
             MergedItems.Add(mitem);
         }
         finally
         {
             mitem.Dispose();
         }
     }
     mitem.Quantity += item.Quantity;
 }