示例#1
0
        public void SendTrackInformationIsBeingSent()
        {
            IPlatformProxy proxy = IntegrationProxy.GetInstance(new IntegrationProxyArgs.IntegrationProxyArgsBuilder().BuildDefault()).Proxy;

            var input = new OrderTrackingInformation()
            {
                Order_id = 12,
                Event    = new OrderTrackingEvent()
                {
                    Date      = DateTime.Now,
                    Status_id = 1
                }
            };

            Assert.True(proxy.SendTrackNotification(input).IsSuccess);
        }
示例#2
0
        public async Task <IActionResult> Post([FromBody] OrderTrackingInformation value)
        {
            TrackingValidationManager validator = new TrackingValidationManager(this, value);

            if (!validator.Validate(this.ModelState))
            {
                return(this.BadRequest(this.ModelState));
            }

            var args = new IntegrationProxyArgsBuilder()
                       .SetPlatformType(SuportedPlatforms.SalePlatform)
                       .SetBaseURI("/api")
                       .Build();

            var result = IntegrationProxy.GetInstance(args)
                         .Proxy.SendTrackNotification(value);

            if (!result.IsSuccess)
            {
                return(this.BadRequest(result.Message));
            }

            return(this.Ok("Platform was notified successfully"));
        }