private async void AddToWish_Click(object sender, EventArgs e) { var attributes = await HasAttributes(SelectedProduct.Id); if (!attributes) { StackPanel s = new StackPanel(); PhoneTextBox Quantity = new PhoneTextBox(); InputScope scope = new InputScope(); InputScopeName number = new InputScopeName(); number.NameValue = InputScopeNameValue.Number; scope.Names.Add(number); Quantity.Hint = "Quantity"; Quantity.InputScope = scope; s.Children.Add(Quantity); CustomMessageBox messageBox = new CustomMessageBox() { Caption = "Select Quantity", Message = "Select how many " + SelectedProduct.Name + " do you want?", LeftButtonContent = "Add To Wishlist", Content = s, RightButtonContent = "Cancel" }; messageBox.Show(); messageBox.Dismissed += async(s1, e1) => { switch (e1.Result) { case CustomMessageBoxResult.LeftButton: var Customer = await api.GetCustomersByEmail(Helper.CurrentCustomer()); if (Quantity.Text == "") { Quantity.Text = "1"; } var AddResult = await api.AddToCart(Customer.First().Email, SelectedProduct.Id, Int32.Parse(Quantity.Text), new String[] { "" }, ShoppingCartType.Wishlist); if (AddResult) { CustomMessageBox SuccessToast = new CustomMessageBox() { Caption = "Added Successfully", Message = "The product was added to your wishlist sucessfuly", LeftButtonContent = "Dismiss" }; SuccessToast.Show(); await Task.Delay(2000); SuccessToast.Dismiss(); } break; } }; } else { NavigationService.Navigate(new Uri("/Pages/ProductDetails.xaml?ProdId=" + SelectedProduct.Id, UriKind.Relative)); } }
private async void InitializeWishlist() { var Currency = await api.GetCurrency(); var tmp = await api.GetCustomersByEmail(Helper.CurrentCustomer()); Customer = tmp.First(); var CartList = new List <MainPage.CartData>(); var ItemCount = 0; foreach (CartItemDTO c in Customer.Wishlist) { ItemCount += c.Quantity; CartList.Add(new MainPage.CartData { ProdId = c.Product.Id, Id = c.Id, ProductName = c.Product.Name, Quantity = c.Quantity, Image = Helper.ConvertToBitmapImage(c.Product.Image.First()), UnitPrice = c.Product.Price.ToString("0.0#") + " " + Currency, Total = (c.Product.Price * c.Quantity).ToString("0.0#") + " " + Currency }); } if (CartList.Count == 0) { ProductCount.Text = "no"; } else { ProductCount.Text = ItemCount.ToString(); } ProductsList.ItemsSource = CartList; }
private async void InitializeAddresses() { var CustomerTmp = await api.GetCustomersByEmail(Helper.CurrentCustomer()); Customer = CustomerTmp.First(); var ResultList = new List <AddressData>(); foreach (AddressDTO a in Customer.Addresses) { ResultList.Add(new AddressData { Address = a.Street, City = a.City + ", ", Country = a.Country, Email = Customer.Email, Name = a.Firstname + " " + a.Lastname, Phone = a.Phone, PostalCode = a.PostalCode }); } AddressesList.ItemsSource = ResultList; Countries = await api.GetAllCountries(); var CountryString = new List <string>(); foreach (CountryDTO c in Countries) { CountryString.Add(c.Name); } Country.ItemsSource = CountryString.Distinct(); HideLoading(); }
private async void Cart_Click(object sender, EventArgs e) { ListBox Cart = new ListBox(); Cart.Margin = new Thickness(0, 12, 0, 0); Cart.ItemContainerStyle = Application.Current.Resources["NoSelectColor"] as Style; Cart.ItemTemplate = Application.Current.Resources["CartItemTemplate"] as DataTemplate; var Customer = await api.GetCustomersByEmail(Helper.CurrentCustomer()); var Products = Customer.First().ShoppingCart; foreach (CartItemDTO c in Products) { Cart.Items.Add(new MainPage.CartData { ProdId = c.Product.Id, Id = c.Id, ProductName = c.Product.Name, Quantity = c.Quantity, Image = Helper.ConvertToBitmapImage(c.Product.Image.First()), UnitPrice = c.Product.Price.ToString("0.0#") + " " + Currency, Total = (c.Product.Price * c.Quantity).ToString("0.0#") + " " + Currency }); } CustomMessageBox messageBox = new CustomMessageBox() { Caption = "Shopping Cart", LeftButtonContent = "Dismiss", Content = Cart }; messageBox.Show(); }
private async Task SelectedFilter(string Filter, string Search) { var SearchResultsList = FindViewById <ListView>(Resource.Id.searchlistcustomer); var SearchResultsCount = FindViewById <TextView>(Resource.Id.searchresultscustomer); switch (Filter) { case "Email": CustomersList = await api.GetCustomersByEmail(Search); break; case "Username": CustomersList = await api.GetCustomersByUsername(Search); break; case "Firstname": CustomersList = await api.GetCustomersByFirstname(Search); break; case "Lastname": CustomersList = await api.GetCustomersByLastname(Search); break; case "Fullname": CustomersList = await api.GetCustomersByFullname(Search); break; case "Company": CustomersList = await api.GetCustomersByCompany(Search); break; case "Phone": CustomersList = await api.GetCustomersByPhone(Search); break; case "Postal Code": CustomersList = await api.GetCustomersByPostalCode(Search); break; } SearchResultsList.Adapter = new CustomersSearchAdapter(this, CustomersList); SearchResultsCount.Text = CustomersList.Length.ToString() + " Results Found"; SearchResultsCount.Visibility = ViewStates.Visible; dialog.Dismiss(); }
private async void InitializeOrder() { Order = await api.GetOrderById(Id); Currency = await api.GetCurrency(); var CustomerTmp = await api.GetCustomersByEmail(Helpers.Helper.CurrentCustomer()); Customer = CustomerTmp.First(); OrderTotalConfirmation.Text = Order.Total.ToString("0.0#") + " " + Currency; BillingName.Text = Order.BillingAddress.Firstname + " " + Order.BillingAddress.Lastname; BillingEmail.Text = Customer.Email; BillingPhone.Text = Order.BillingAddress.Phone; BillingStreet.Text = Order.BillingAddress.Street; BillingCity.Text = Order.BillingAddress.City + ", "; BillingPostal.Text = Order.BillingAddress.PostalCode; BillingCountry.Text = Order.BillingAddress.Country; ShippingName.Text = Order.ShippingAddress.Firstname + " " + Order.ShippingAddress.Lastname; ShippingEmail.Text = Customer.Email; ShippingPhone.Text = Order.ShippingAddress.Phone; ShippingStreet.Text = Order.ShippingAddress.Street; ShippingCity.Text = Order.ShippingAddress.City + ", "; ShippingPostal.Text = Order.ShippingAddress.PostalCode; ShippingCountry.Text = Order.ShippingAddress.Country; var Result = new List <MainPage.CartData>(); foreach (OrderItemDTO c in Order.ProductsList) { Result.Add(new MainPage.CartData { Id = c.OrderId, ProdId = c.Product.Id, Image = Helper.ConvertToBitmapImage(c.Product.Image.First()), ProductName = c.Product.Name, Quantity = c.Quantity, Total = (c.Quantity * c.Product.Price).ToString("0.#"), UnitPrice = c.Product.Price.ToString("0.#") + " " + Currency }); } ProductsList.ItemsSource = Result; HideLoading(); }
private async void InitializeCheckout() { Currency = await api.GetCurrency(); var CustomerTmp = await api.GetCustomersByEmail(Helpers.Helper.CurrentCustomer()); Customer = CustomerTmp.First(); var AddressesA = new List <AddressData>(); foreach (AddressDTO a in Customer.Addresses) { AddressesA.Add(new AddressData { Address = a.Firstname + " " + a.Lastname + "," + a.Phone + "," + a.Street + "," + a.City + "," + a.PostalCode + "," + a.Country, Id = a.Id }); } var ShippingM = new List <string>(await api.GetShippingMethods()).Distinct(); ShippingMethodPicker.ItemsSource = ShippingM; BillingPicker.ItemsSource = AddressesA; ShippingPicker.ItemsSource = AddressesA; PaymentPicker.ItemsSource = await api.GetPaymentMethods(); decimal SubTotalValue = 0; foreach (CartItemDTO c in Customer.ShoppingCart) { SubTotalValue += c.Product.Price * c.Quantity; } var ShipTmp = await api.GetShippingFees(Customer.Id); var TaxTmp = await api.GetTaxFees(Customer.Id); ShippingFees.Text = ShipTmp.ToString("0.0"); OtherFees.Text = TaxTmp.ToString("0.0"); SubTotal.Text = SubTotalValue.ToString("0.0#") + " " + Currency; ShippingFees.Text = ShippingFeesValue.ToString("0.0#") + " " + Currency;; OtherFees.Text = OtherFeesValue.ToString("0.0#") + " " + Currency; Total = SubTotalValue + ShippingFeesValue + OtherFeesValue; OrderTotalPay.Text = Total.ToString("0.0#") + " " + Currency; HideLoading(); }
private async Task GetCart() { var CustomerEmail = Intent.GetStringExtra("customeremail"); var CartTmp = await api.GetCustomersByEmail(CustomerEmail); Cart = CartTmp.First(); var ProductsList = FindViewById <ListView>(Resource.Id.cartproductslist); if (Wishlist) { ProductsList.Adapter = new CartProductsAdapter(this, Cart.Wishlist.ToArray(), await api.GetCurrency()); } else { ProductsList.Adapter = new CartProductsAdapter(this, Cart.ShoppingCart.ToArray(), await api.GetCurrency()); } dialog.Dismiss(); }
private async Task InitializeCart() { var CustomerA = await api.GetCustomersByEmail(CustomerEmail); Customer = CustomerA.First(); Name.Text = Customer.FullName; var CartRes = new List <OrderDetails.OrderDetailsProduct>(); foreach (CartItemDTO p in Customer.ShoppingCart) { CartRes.Add(new OrderDetails.OrderDetailsProduct { Image = ConvertToBitmapImage(p.Product.Image.First()), Product = p.Product.Name, Quantity = p.Quantity, Total = ((decimal)p.Quantity * p.Product.Price).ToString() }); } CartProducts.ItemsSource = CartRes; }
private async void InitializeOrders() { var CustomerTmp = await api.GetCustomersByEmail(Helpers.Helper.CurrentCustomer()); var Currency = await api.GetCurrency(); Customer = CustomerTmp.First(); Orders = await api.CustomerIdOrders(Customer.Id); var Result = new List <OrderItemData>(); foreach (OrderDTO o in Orders) { SolidColorBrush Status = null; switch (o.OrderStatus) { case OrderStatus.Complete: Status = new SolidColorBrush(Colors.Green); break; case OrderStatus.Cancelled: Status = new SolidColorBrush(Colors.Red); break; case OrderStatus.Pending: Status = new SolidColorBrush(Colors.Yellow); break; case OrderStatus.Processing: Status = new SolidColorBrush(Colors.Orange); break; } Result.Add(new OrderItemData { Id = o.OrderID, Date = o.CreateDate.ToString(), Status = o.OrderStatus.ToString(), Image = Helpers.Helper.ConvertToBitmapImage(o.ProductsList.First().Product.Image.First()), StatusColor = Status, Total = o.Total.ToString("0.0#") + " " + Currency }); } OrdersList.ItemsSource = Result; HideLoading(); }
private async void InitializeMainPages() { string Current = ""; UserSettings.TryGetValue("current_user", out Current); var tmp = await api.GetCustomersByEmail(Current); Currency = await api.GetCurrency(); Customer = tmp.First(); CustomerName.Text = Customer.FullName; var Featured = await api.FeaturedProducts(); FeaturedCount = Featured.Count(); var FeaturedList = new List <ProductData>(); int FeatCount = Helper.GetSetting <int>("featured_count"); int tmpCount = 0; foreach (ProductDTO p in Featured) { if (tmpCount == FeatCount) { break; } FeaturedList.Add(new ProductData { Id = p.Id, ProductName = p.Name, Description = p.Description, Image = Helper.ConvertToBitmapImage(p.Image.First()), Value = p.Price.ToString("0") + " " + Currency }); tmpCount++; } FeaturedProducts.ItemsSource = FeaturedList; var BestsellersA = await api.GetBestsellerByAmount(); var BestsellersQ = await api.GetBestsellerByQuantity(); var Bests = new List <ProductData>(); var BestCount = Helper.GetSetting <int>("bestsellers_count") / 2; for (int i = 0; i < BestCount; i++) { if (i < BestsellersA.Count()) { Bests.Add(new ProductData { Id = BestsellersA[i].Product.Id, ProductName = BestsellersA[i].Product.Name, Value = BestsellersA[i].Product.Price.ToString("0.#") + " " + Currency, Image = Helper.ConvertToBitmapImage(BestsellersA[i].Product.Image.First()) }); } if (i < BestsellersQ.Count()) { Bests.Add(new ProductData { Id = BestsellersQ[i].Product.Id, ProductName = BestsellersQ[i].Product.Name, Value = BestsellersQ[i].Product.Price.ToString("0.#") + " " + Currency, Image = Helper.ConvertToBitmapImage(BestsellersQ[i].Product.Image.First()) }); } } BestsellersList.ItemsSource = Bests; var Categories = await api.GetMainCategories(); var CategoriesList = new List <CategoryData>(); foreach (CategoryDTO c in Categories) { CategoriesList.Add(new CategoryData { Id = c.Id, Name = c.Name, Image = Helper.ConvertToBitmapImage(c.Image) }); } CategoriesListbox.ItemsSource = CategoriesList; HideLoading(); }
private async Task InitializeOrder() { Order = await api.GetOrderById(Id); this.Date.Text = Order.CreateDate.ToString(); decimal result = 0; var Currency = await api.GetCurrency(); OrderStatus.Text = Order.OrderStatus.ToString(); ProductTile.Message = Order.ProductsList.First().Product.Price.ToString("0.0#") + " " + Currency; ProductTile.Title = Order.ProductsList.First().Product.Name; ProductTile.Source = (ImageSource)ConvertToBitmapImage(Order.ProductsList.First().Product.Image.First()); var Products = new List <OrderDetailsProduct>(); foreach (OrderItemDTO item in Order.ProductsList) { var toDecimal = (decimal)item.Quantity; result += item.Product.Price * toDecimal; Products.Add(new OrderDetailsProduct { Product = item.Product.Name, Quantity = item.Quantity, Total = (item.Product.Price * toDecimal).ToString("0.0#"), Image = (ImageSource)ConvertToBitmapImage(item.Product.Image.First()) }); } ProductsList.ItemsSource = Products; Total.Text = result.ToString("0.0#") + " " + Currency; switch (Order.ShippingStatus) { case ShippingStatus.NotYetShipped: ShippingStatusDetails.Text = "Not Yet Shipped"; break; case ShippingStatus.PartiallyShipped: ShippingStatusDetails.Text = "Partially Shipped"; break; case ShippingStatus.ShippingNotRequired: ShippingStatusDetails.Text = "Shipping Not Required"; break; default: ShippingStatusDetails.Text = Order.ShippingStatus.ToString(); break; } switch (Order.PayStatus) { case PaymentStatus.PartiallyRefunded: PaymentStatusDetails.Text = "Partially Refunded"; break; default: PaymentStatusDetails.Text = Order.PayStatus.ToString(); break; } var CustomerTask = await api.GetCustomersByEmail(Order.OrderEmail); Customer = CustomerTask.First(); Email.Text = Customer.Email; Name.Text = Customer.FullName; Address.Text = Order.Address; if (Customer.Phone == null) { Phone.Text = "Not Available"; } else { Phone.Text = Customer.Phone; } }
private async Task InitializeCustomer() { var CustomerA = await api.GetCustomersByEmail(CustomerEmail); Customer = CustomerA.First(); if (Customer.Active) { Status.Text = "Active"; Status.Foreground = new SolidColorBrush(Colors.Green); } else { Status.Text = "Inactive"; Status.Foreground = new SolidColorBrush(Colors.Red); } Name.Text = Customer.FullName ?? "Not Available"; Email.Text = Customer.Email; Gender.Text = Customer.Gender ?? "Not Available"; Birthday.Text = Customer.Birthday ?? "Not Available"; Company.Text = Customer.Company ?? "Not Available"; if (Customer.IsAdmin) { Roles.Text = "Admin"; } else { Roles.Text = "Customer"; } LastActivity.Text = Customer.Activity.ToString(); TextBlock Comment = new TextBlock(); if (Customer.AdminComment == null) { Comment.Text = "No Comments"; AddComment.Content = "Add Comment"; } else { Comment.Text = Customer.AdminComment; AddComment.Content = "Edit Comment"; } Comments.Children.Add(Comment); foreach (AddressDTO ad in Customer.Addresses) { TextBlock Address = new TextBlock(); Address.TextWrapping = TextWrapping.Wrap; Address.Text = ad.Firstname + " " + ad.Lastname + ", " + ad.Street + ", " + ad.City + ", " + ad.PostalCode + ", " + ad.Country;; Addresses.Children.Add(Address); } var CartRes = new List <OrderDetails.OrderDetailsProduct>(); foreach (CartItemDTO p in Customer.ShoppingCart) { CartRes.Add(new OrderDetails.OrderDetailsProduct { Image = ConvertToBitmapImage(p.Product.Image.First()), Product = p.Product.Name, Quantity = p.Quantity, Total = ((decimal)p.Quantity * p.Product.Price).ToString() }); } Cart.ItemsSource = CartRes; var WishRes = new List <OrderDetails.OrderDetailsProduct>(); foreach (CartItemDTO p in Customer.Wishlist) { WishRes.Add(new OrderDetails.OrderDetailsProduct { Image = ConvertToBitmapImage(p.Product.Image.First()), Product = p.Product.Name, Quantity = p.Quantity, Total = ((decimal)p.Quantity * p.Product.Price).ToString() }); } Wishlist.ItemsSource = WishRes; }
private async Task RefreshCustomer() { var GetCustomer = await api.GetCustomersByEmail(Intent.GetStringExtra("customeremail")); Customer = GetCustomer.First(); }