From 0c274d46be9de021007266d98104f29703730c03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Su=C3=A1rez=20Ruiz?= Date: Mon, 25 Sep 2017 08:17:20 +0200 Subject: [PATCH] Fixed bindings errors Fixed Checkout process Changed some UWP icons --- .../Services/Order/IOrderService.cs | 2 +- .../Services/Order/OrderMockService.cs | 10 ++++++++++ .../Services/Order/OrderService.cs | 6 +++++- .../ViewModels/CheckoutViewModel.cs | 15 +++++++++++++++ .../Views/CheckoutView.xaml | 2 +- .../eShopOnContainers.Core.csproj | 18 +++--------------- .../Resources/Resource.Designer.cs | 8 ++++---- .../Assets/LockScreenLogo.scale-200.png | Bin 1430 -> 898 bytes ...x44Logo.targetsize-24_altform-unplated.png | Bin 1255 -> 397 bytes .../Assets/StoreLogo.png | Bin 1451 -> 943 bytes 10 files changed, 39 insertions(+), 22 deletions(-) diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/IOrderService.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/IOrderService.cs index 59b746917..a01938779 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/IOrderService.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/IOrderService.cs @@ -7,7 +7,7 @@ namespace eShopOnContainers.Core.Services.Order { public interface IOrderService { - //Task CreateOrderAsync(Models.Orders.Order newOrder, string token); + Task CreateOrderAsync(Models.Orders.Order newOrder, string token); Task> GetOrdersAsync(string token); Task GetOrderAsync(int orderId, string token); Task> GetCardTypesAsync(string token); diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderMockService.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderMockService.cs index c32093203..e44e289e3 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderMockService.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderMockService.cs @@ -104,6 +104,16 @@ namespace eShopOnContainers.Core.Services.Order return new Models.Orders.Order(); } + public async Task CreateOrderAsync(Models.Orders.Order newOrder, string token) + { + await Task.Delay(500); + + if (!string.IsNullOrEmpty(token)) + { + MockOrders.Add(newOrder); + } + } + public async Task> GetCardTypesAsync(string token) { await Task.Delay(500); diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderService.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderService.cs index 2d85bef5c..f74d6e19b 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderService.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Order/OrderService.cs @@ -17,9 +17,13 @@ namespace eShopOnContainers.Core.Services.Order _requestProvider = requestProvider; } + public Task CreateOrderAsync(Models.Orders.Order newOrder, string token) + { + throw new Exception("Only available in Mock Services!"); + } + public async Task> GetOrdersAsync(string token) { - UriBuilder builder = new UriBuilder(GlobalSetting.Instance.OrdersEndpoint); builder.Path = "api/v1/orders"; diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs index a358f94d3..700fd8b53 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs @@ -122,6 +122,16 @@ namespace eShopOnContainers.Core.ViewModels Total = CalculateTotal(CreateOrderItems(orderItems)) }; + if (Settings.UseMocks) + { + // Get number of orders + var orders = await _orderService.GetOrdersAsync(authToken); + + // Create the OrderNumber + Order.OrderNumber = orders.Count + 1; + RaisePropertyChanged(() => Order); + } + IsBusy = false; } } @@ -138,6 +148,11 @@ namespace eShopOnContainers.Core.ViewModels // Create basket checkout await _basketService.CheckoutAsync(basket, authToken); + if (Settings.UseMocks) + { + await _orderService.CreateOrderAsync(Order, authToken); + } + // Clean Basket await _basketService.ClearBasketAsync(_shippingAddress.Id.ToString(), authToken); diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/CheckoutView.xaml b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/CheckoutView.xaml index ec6ea70d5..12fcaaabe 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/CheckoutView.xaml +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/CheckoutView.xaml @@ -134,7 +134,7 @@ Text="STATUS" Style="{StaticResource OrderTitleStyle}"/>