Exemplo n.º 1
0
        private TrackResult Sendle_Track(CarrierAPI api, string trackingNumber)
        {
            TrackResult result = new TrackResult();

            Sendle_API Sendle = new Sendle_API(api);

            Sendle_API.TrackResponse Sendle_Result = Sendle.Track(trackingNumber);

            if (Sendle_Result.tracking_events.Any())
            {
                if (Sendle_Result.tracking_events.Any(e => e.event_type == "Pickup"))
                {
                    result.PickupDate     = Sendle_Result.tracking_events.First(e => e.event_type == "Pickup").scan_time;
                    result.DeliveryStatus = (int)OrderService.DeliveryStatusType.Intransit;
                }

                if (Sendle_Result.tracking_events.Any(e => e.event_type == "Delivered"))
                {
                    result.DeliveryDate   = Sendle_Result.tracking_events.First(e => e.event_type == "Delivered").scan_time;
                    result.DeliveryStatus = (int)OrderService.DeliveryStatusType.Delivered;
                }

                result.DeliveryNote = Sendle_Result.tracking_events.Select(e => e.scan_time.ToString() + " " + e.description).Last();
            }

            return(result);
        }
Exemplo n.º 2
0
        private void Sendle_Test(int OrderID)
        {
            var packageList = db.Box.Where(b => b.BoxID.Contains("ECOF-")).SelectMany(b => b.Packages.Where(p => p.IsEnable.Value)).ToList();

            foreach (var package in packageList)
            {
                Sendle_API Sendle = new Sendle_API(package.Method.Carriers.CarrierAPI);
                var        order  = Sendle.Order(package.TagNo);
                package.TrackingNumber  = order.sendle_reference;
                db.Entry(package).State = System.Data.Entity.EntityState.Modified;
            }
            db.SaveChanges();
            //Packages package = db.Packages.First(p => p.IsEnable.Value && p.OrderID.Value.Equals(OrderID));
            //Sendle_API Sendle = new Sendle_API(package.Method.Carriers.CarrierAPI);

            //TrackOrder track = new TrackOrder();
            //track.SetOrder(package.Orders, package);
            //var result = track.Track();
            //var result = Sendle.Create(package);
            //var order = Sendle.Order(result.order_id);
            //Sendle.Label(result.order_id, string.Format("{0}-{1}-{2}", package.Items.First().ProductID, package.OrderID.Value, result.sendle_reference), @"C:\Users\qdtuk\Downloads");
            //var track = Sendle.Track(package.TrackingNumber);
            //var cancel = Sendle.Cancel(result.order_id);
        }