Exemple #1
0
        public void Run()
        {
            this.messageBrokerService.CreateConnection();

            this.messageBrokerService.receiveMessage("orderProcessing", async(ReadOnlyMemory <byte> body) => {
                //try
                //{
                var message = Encoding.UTF8.GetString(body.ToArray());
                var order   = System.Text.Json.JsonSerializer.Deserialize <FinishOrderRequest>(message);

                var request  = new ProcessOrderRequest(order.UserId, order.ReferenceDiscount, order.Items);
                var response = await mediator.Send(request, CancellationToken.None);

                //if (response.Success == false)
                //{
                //    throw new Exception(response.Message);
                //}
                //}
                //catch (Exception)
                //{
                //    throw;
                //}
            });

            Console.WriteLine("Aguardando para executar a fila");

            Console.ReadKey();

            this.messageBrokerService.CloseConnection();
        }
Exemple #2
0
        public ResultModel ProcessOrder(ProcessOrderRequest req)
        {
            try
            {
                if (req.User != null)
                {
                    var user = req.User;
                    _securityService.RegisterUser(user.Username, user.Password, req.Client.Email);

                    var dbUser = _securityService.GetUser(user.Username);
                    req.Client.UserId = dbUser.UserId;
                }

                Guid cartId = _sessionService.Get <Guid>(ConstantStrings.SessionId);
                var  cart   = _cartService.GetCart(cartId);

                _shopOrderService.ProcessOrder(req.Order, req.Client, cart);
                return(ResultModel.Success);
            }
            catch (UserExistsException e)
            {
                _logService.LogError(e);
                return(new ResultModel(e));
            }
            catch (Exception e)
            {
                _logService.LogError(e);
                return(new ResultModel(false, "При формировании заказа произошла ошибка"));
            }
        }
        public void ProcessOrderRequest()
        {
            byte[] xml;
            ProcessOrderRequest req = new ProcessOrderRequest(ORDER_NUMBER);

            xml = req.GetXml();

            AutoGen.ProcessOrderRequest post
                = EncodeHelper.Deserialize(xml) as AutoGen.ProcessOrderRequest;

            Assert.AreEqual(req.GoogleOrderNumber, post.googleordernumber);

            req = new ProcessOrderRequest(MERCHANT_ID, MERCHANT_KEY, "Sandbox", ORDER_NUMBER);
            xml = req.GetXml();
        }
        public async void ProcessOrderTest()
        {
            // Arrange
            var content = new ProcessOrderRequest()
            {
                Billing = new Billing()
                {
                    CCV = "337",
                    CreditCardNumber = "0046521005706"
                }
            };

            // Act
            var response = await client.PostAsync(service.GetClient(), $"{url}/Order('OR001')/Checkout.Process", content);

            // Assert
            response.IsSuccessStatusCode.Should().BeTrue();
        }
Exemple #5
0
        public static void ProcessOrder(GoogleCheckout instance, string googleOrderNumber)
        {
            string env         = instance.UseTestMode ? "Sandbox" : "Production";
            string merchantId  = instance.MerchantID;
            string merchantKey = instance.MerchantKey;

            ProcessOrderRequest request = new ProcessOrderRequest(merchantId, merchantKey, env, googleOrderNumber);

            Util.GCheckoutResponse response = request.Send();

            if (response.IsGood)
            {
                Utility.Logger.Debug("Process Order Request initiated successfuly. GoogleOrderNumber=" + googleOrderNumber);
            }
            else
            {
                Utility.Logger.Debug("Process Order Request could not be initiated. ErrorMessage=" + response.ErrorMessage);
            }
        }