diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Basket/BasketItem.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Basket/BasketItem.cs
index e02f66668..b9d8758ef 100644
--- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Basket/BasketItem.cs
+++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Basket/BasketItem.cs
@@ -15,6 +15,16 @@ namespace eShopOnContainers.Core.Models.Basket
public decimal UnitPrice { get; set; }
+ public decimal OldUnitPrice { get; set; }
+
+ public bool HasNewPrice
+ {
+ get
+ {
+ return OldUnitPrice != 0.0m;
+ }
+ }
+
public int Quantity
{
get { return _quantity; }
diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Orders/Order.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Orders/Order.cs
index 15967156e..3c3c41265 100644
--- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Orders/Order.cs
+++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Models/Orders/Order.cs
@@ -34,6 +34,9 @@ namespace eShopOnContainers.Core.Models.Orders
[JsonProperty("country")]
public string ShippingCountry { get; set; }
+ [JsonProperty("zipCode")]
+ public string ShippingZipCode { get; set; }
+
public int CardTypeId { get; set; }
public string CardNumber { get; set; }
diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/BasketViewModel.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/BasketViewModel.cs
index a19e8dcdd..bf0365c89 100644
--- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/BasketViewModel.cs
+++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/BasketViewModel.cs
@@ -78,7 +78,9 @@ namespace eShopOnContainers.Core.ViewModels
if (basket != null && basket.Items != null && basket.Items.Any())
{
+ BadgeCount = 0;
BasketItems.Clear();
+
foreach (var basketItem in basket.Items)
{
BadgeCount += basketItem.Quantity;
diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs
index 41b8220e6..56734d423 100644
--- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs
+++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/CheckoutViewModel.cs
@@ -90,7 +90,7 @@ namespace eShopOnContainers.Core.ViewModels
ZipCode = userInfo?.ZipCode,
State = userInfo?.State,
Country = userInfo?.Country,
- City = string.Empty
+ City = userInfo?.Address
};
// Create Payment Info
@@ -117,7 +117,8 @@ namespace eShopOnContainers.Core.ViewModels
ShippingState = _shippingAddress.State,
ShippingCountry = _shippingAddress.Country,
ShippingStreet = _shippingAddress.Street,
- ShippingCity = _shippingAddress.City,
+ ShippingCity = _shippingAddress.City,
+ ShippingZipCode = _shippingAddress.ZipCode,
Total = CalculateTotal(CreateOrderItems(orderItems))
};
diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/MainView.xaml.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/MainView.xaml.cs
index aee1df50d..68af0f936 100644
--- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/MainView.xaml.cs
+++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/MainView.xaml.cs
@@ -44,5 +44,16 @@ namespace eShopOnContainers.Core.Views
await profileViewModel.InitializeAsync(null);
ProfileView.BindingContext = profileViewModel;
}
+
+ protected override async void OnCurrentPageChanged()
+ {
+ base.OnCurrentPageChanged();
+
+ if (CurrentPage is BasketView)
+ {
+ // Force basket view refresh every time we access it
+ await (BasketView.BindingContext as ViewModelBase).InitializeAsync(null);
+ }
+ }
}
}
diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/Templates/BasketItemTemplate.xaml b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/Templates/BasketItemTemplate.xaml
index 2e516072f..6fb568783 100644
--- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/Templates/BasketItemTemplate.xaml
+++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/Templates/BasketItemTemplate.xaml
@@ -83,6 +83,7 @@
+
@@ -131,10 +132,24 @@
Text="{Binding Total, StringFormat='${0:N}'}"
Style="{StaticResource OrderTotalStyle}"/>
-
+
+
+