Ejemplo n.º 1
0
        public async Task <Order> GetAsync(string confirmationId)
        {
            var persistedOrderUpdates = await _tableStorageAccessor.GetAsync <OrderTableEntity>(TableName, confirmationId);

            Order order = null;

            if (persistedOrderUpdates.Any())
            {
                var mostRecentOrderUpdate = persistedOrderUpdates.OrderByDescending(orderUpdate => orderUpdate.RowKey).First();

                order = new Order
                {
                    Basket   = JsonConvert.DeserializeObject <List <OrderLine> >(mostRecentOrderUpdate.Basket),
                    Customer = new Customer
                    {
                        FirstName = mostRecentOrderUpdate.CustomerFirstName,
                        LastName  = mostRecentOrderUpdate.CustomerLastName
                    }
                };

                if (mostRecentOrderUpdate.CustomerAddress != null)
                {
                    order.Customer.Address = JsonConvert.DeserializeObject <Address>(mostRecentOrderUpdate.CustomerAddress);
                }
            }

            return(order);
        }
        private async Task <ShipmentTableEntity> GetShipmentTableEntryAsync(string trackingNumber)
        {
            var shipmentUpdates = await _tableStorageAccessor.GetAsync <ShipmentTableEntity>(TableName, trackingNumber);

            return(shipmentUpdates.OrderByDescending(shipmentUpdate => shipmentUpdate.RowKey).FirstOrDefault());
        }
Ejemplo n.º 3
0
        public async Task <List <Product> > GetAsync()
        {
            var products = await _tableStorageAccessor.GetAsync <ProductTableEntity>(TableName, "products");

            return(products.Select(MapToContract).ToList());
        }