public async Task PayBasket()
        {
            if (_transactions.Count > 0)
            {
                var basket = _transactions[0];
                _transactions.RemoveAt(0);

                var payBasketRequest = new BasketPaidRequest
                {
                    Id = Guid.NewGuid().ToString(),
                    POSTransactionNumber = basket.POSTransactionNumber,
                    POSData     = basket.POSData,
                    PaymentInfo = new PaymentInfo
                    {
                        Amount            = 50.00m,
                        AuthorizationCode = "AUTH1234",
                        LastFour          = "9876"
                    }
                };

#pragma warning disable CS8602 // Dereference of a possibly null reference.
                await POSController.SendTo(payBasketRequest).ConfigureAwait(false);

#pragma warning restore CS8602 // Dereference of a possibly null reference.
            }
        }
示例#2
0
        public static Task HandleMessage(BasketPaidRequest request)
        {
            Received(request);

            Console.WriteLine("==========================[ Basket Paid ]==================================");
            Console.WriteLine($"Transaction: {request.POSTransactionNumber}");
            Console.WriteLine($"     Amount: {request.PaymentInfo.Amount:C}");
            Console.WriteLine($"       Card: ************{request.PaymentInfo.LastFour}");

            return(Task.CompletedTask);
        }