예제 #1
0
        public void GetOrderStatus()
        {
            var request = new GetOrderStatus()
            {
                Meta  = { MerchantId = 7454, Version = "2.0" },
                Order =
                {
                    OrderId = 1200003770
                }
            };

            var text   = request.ToString();
            var caller = new ServiceApiCaller("HTTPS://ps.gcsip.nl/wdl/wdl");

            // Act
            var responseText = caller.Send(text);

            // Assert
            AssertResponseOk(responseText);

            var response = new GetOrderStatus();

            response.FromModifiedXml(new ModifiedXmlDocument(responseText), string.Empty);

            Assert.NotNull(response.Response);
            Assert.AreEqual(1200003770, response.Response.Status.OrderId);
        }
예제 #2
0
        public ActionResult Index()
        {
            /*
             * wsdl /language:c# /out:c:\OrderStatus.cs http://localhost:49303/GetOrderStatus.asmx?WSDL
             */
            GetOrderStatus order = new GetOrderStatus();
            var            obj   = order.GetStatus(4);

            Response.Write(obj.CurrentStatus);
            return(View());
        }
예제 #3
0
        public async Task Consume(ReceiveContext <ReceivableBooked> messageContext)
        {
            var @event             = messageContext.Message;
            var orderStatusRequest = new GetOrderStatus(@event.OrderStatus);
            var orderStatus        = await this.requestBus.Request <GetOrderStatus, OrderStatus>(orderStatusRequest);

            this.uow.Update <OrderReview>()
            .SetValue(o => o.OrderStatusDescription, orderStatus.Description)
            .Where(o => o.Id, @event.OrderId);

            await this.uow.Save();

            var response = new OrderStatusResponse(orderStatus.LongDescription);
            await messageContext.Respond(response);
        }
예제 #4
0
        public void ReadGetOrderStatusResponse_With_Errors()
        {
            // Arrange
            // Act
            var response = new GetOrderStatus();

            response.FromModifiedXml(new ModifiedXmlDocument(OrderStatusTextWithErrors), string.Empty);

            // Assert
            Assert.AreEqual("OK", response.Response.Result);
            Assert.AreEqual(100, response.Response.Status.StatusId);
            Assert.AreEqual(1, response.Response.Status.Errors.Count);
            Assert.AreEqual("B", response.Response.Status.Errors.First().Type);
            Assert.AreEqual(430396, response.Response.Status.Errors.First().Code);
            Assert.AreEqual("430396 Not authorised", response.Response.Status.Errors.First().Message);
        }
        public virtual IOrderStatus GetOrderStatus(PaymentMethod paymentMethod, long orderId)
        {
            var request = new GetOrderStatus()
            {
                Meta =
                {
                    MerchantId = paymentMethod.DynamicProperty <int>().MerchantId,
                    Version    = "2.0"
                },
                Order =
                {
                    OrderId = orderId
                }
            };

            var text         = request.ToString();
            var responseText = SendTextAndCheckResponseForErrors(GetServiceUrl(paymentMethod), text);

            var response = new GetOrderStatus();

            response.FromModifiedXml(new ModifiedXmlDocument(responseText), string.Empty);

            return(response.Response.Status);
        }
예제 #6
0
        protected Task <OrderStatus> GetOrderStatus(OrderStatusEnum orderStatus)
        {
            var orderStatusRequest = new GetOrderStatus(orderStatus);

            return(this.requestBus.Request <GetOrderStatus, OrderStatus>(orderStatusRequest));
        }