Exemple #1
0
        public async Task <string> AddAddress(mOrderAddress item)
        {
            try
            {
                var Itemcreds = Newtonsoft.Json.JsonConvert.SerializeObject(item);

                HttpContent ItemContent = new StringContent(Itemcreds, Encoding.UTF8, "application/json");

                using (var client = new HttpClient())
                {
                    HttpResponseMessage response = await client.PostAsync(Keys.Url_Main + "address/add", ItemContent);

                    using (HttpContent spawn = response.Content)
                    {
                        string content = await spawn.ReadAsStringAsync();

                        mServerCallback callback = Newtonsoft.Json.JsonConvert.DeserializeObject <mServerCallback>(content);

                        if (callback.Status == "true")
                        {
                            return("true");
                        }

                        return(callback.Mess);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(Keys.TAG + ex);
                return(Strings.HttpFailed);
            }
        }
 public Order_ConfirmOrder_ViewModel(IPageService pageService, mOrderAddress address, mCard Card, ObservableCollection <mCart> CartList, bool usingCard)
 {
     //Display Card Info use CurrentCard
     if (address != null)
     {
         _address = address;
     }
     _pageSerivce      = pageService;
     PlaceOrderCommand = new Command(() => PlaceOrder(CartList));
     PriceSum(CartList);
     #region Address
     if (address == null)
     {
         asAddress       = false;
         noAddress       = true;
         Address_Mod_Txt = "Add Address";
         return;
     }
     asAddress = true;
     noAddress = false;
     Name      = AccountService.Instance.Current_Account.FirstName + " " + AccountService.Instance.Current_Account.LastName;
     Address1  = address.Address1;
     Address2  = address.Address2;
     #endregion
     UseCard = usingCard;
     if (usingCard)
     {
         PaymentMethod = Strings.Credit_Debit_Card;
     }
     else
     {
         PaymentMethod = Strings.Cash_On_Delivery;
     };
 }
Exemple #3
0
        private async Task RemoveAction(object itemName)
        {
            DialogService.ShowLoading("Removing Address");

            mOrderAddress listitem = (from itm in Addresses
                                      where itm.Address2 == itemName.ToString()
                                      select itm)
                                     .FirstOrDefault <mOrderAddress>();

            try {
                var result = await AddressService.Instance.DeleteAddress(listitem._id, AccountService.Instance.Current_Account.Email);

                DialogService.HideLoading();

                if (result == "true")
                {
                    GetAddresses();
                    return;
                }
                else
                {
                    DialogService.ShowError(result);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(Keys.TAG + ex);
                DialogService.ShowError(Strings.SomethingWrong);
                Crashes.TrackError(ex);
            }
        }
Exemple #4
0
        protected override void OnAppearing()
        {
            base.OnAppearing();

            if (!String.IsNullOrEmpty(CrossSettings.Current.GetValueOrDefault <string>("FromTime")) ||
                !String.IsNullOrEmpty(CrossSettings.Current.GetValueOrDefault <string>("ToTime")))
            {
                string from = CrossSettings.Current.GetValueOrDefault <string>("FromTime");
                string to   = CrossSettings.Current.GetValueOrDefault <string>("ToTime");
                DeliveryTime.Text     = from + " - " + to;
                viewModel.isUpdatable = true;

                CrossSettings.Current.Remove("FromTime"); CrossSettings.Current.Remove("ToTime");
            }
            else
            {
                DeliveryTime.Text = viewModel.DeliveryTime;
            }

            if (CrossSettings.Current.Contains("ModAddress"))
            {
                string        addressContent = CrossSettings.Current.GetValueOrDefault <string>("ModAddress");
                mOrderAddress address        = Newtonsoft.Json.JsonConvert.DeserializeObject <mOrderAddress>(addressContent);
                viewModel.PhoneNumber = address.PhoneNumber;
                viewModel.Address1    = address.Address1;
                viewModel.Address2    = address.Address2;

                CrossSettings.Current.Remove("ModAddress");
                viewModel.isUpdatable = true;
            }

            viewModel.DeliveryTime = DeliveryTime.Text;
        }
Exemple #5
0
 public ConfirmOrder(mOrderAddress address, ObservableCollection <mCart> CartList, mCard card = null, bool usingCard = false)
 {
     _CartList = CartList;
     viewModel = new Order_ConfirmOrder_ViewModel(new PageService(Navigation), address, card, CartList, usingCard);
     InitializeComponent();
     CardScreen.IsVisible = false;
     NavigationPage.SetHasBackButton(this, false);
     CancelBtn.Clicked += CancelBtn_Clicked;
     PopulateCartList(CartList);
 }
Exemple #6
0
        private async Task ModifyAction(object itemName)
        {
            DialogService.ShowLoading("Modfiy");

            mOrderAddress listitem = (from itm in Addresses
                                      where itm.Address2 == itemName.ToString()
                                      select itm)
                                     .FirstOrDefault <mOrderAddress>();

            await _pageService.PushAsync(new AddAddress("modify", listitem));

            DialogService.HideLoading();
        }
Exemple #7
0
        private async void AddAddress()
        {
            if (String.IsNullOrEmpty(Address1) || String.IsNullOrEmpty(Address2) || String.IsNullOrEmpty(Phone))
            {
                DialogService.ShowErrorToast(Strings.Enter_All_Fields);
                return;
            }

            if (IsBusy)
            {
                return;
            }

            IsBusy = true;


            DialogService.ShowLoading(Strings.Adding_Address);


            try
            {
                mOrderAddress item = new mOrderAddress()
                {
                    Address1    = Address1,
                    Address2    = Address2,
                    Owner       = AccountService.Instance.Current_Account.Email,
                    PhoneNumber = Phone
                };

                var result = await AddressService.Instance.AddAddress(item);

                DialogService.HideLoading();

                if (result == "true")
                {
                    DialogService.ShowSuccess(Strings.Address_Added);
                    await _pageService.PopAsync();
                }
                else
                {
                    DialogService.ShowError(result);
                }
            }
            catch (Exception ex)
            {
                DialogService.ShowError(Strings.SomethingWrong);
                Debug.WriteLine(Keys.TAG + ex);
                Crashes.TrackError(ex);
            }
            finally { IsBusy = false; }
        }
Exemple #8
0
        private async void EditAddress()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;


            DialogService.ShowLoading(Strings.Adding_Address);


            try
            {
                mOrderAddress item = new mOrderAddress()
                {
                    Address1    = Address1,
                    Address2    = Address2,
                    Owner       = AccountService.Instance.Current_Account.Email,
                    PhoneNumber = Phone,
                    _id         = itemId
                };

                var result = await AddressService.Instance.EditAddress(item);

                DialogService.HideLoading();

                if (result == "true")
                {
                    DialogService.ShowSuccess(Strings.Address_Updated);
                    await _pageService.PopAsync();
                }
                else
                {
                    DialogService.ShowError(result);
                }
            }
            catch (Exception ex)
            {
                DialogService.ShowError(Strings.SomethingWrong);
                Debug.WriteLine(Keys.TAG + ex);
                Crashes.TrackError(ex);
            }
            finally { IsBusy = false; }
        }
Exemple #9
0
        private async Task UseAction(object itemName)
        {
            DialogService.ShowLoading("Proceeding");

            mOrderAddress listitem = (from itm in Addresses
                                      where itm.Address2 == itemName.ToString()
                                      select itm)
                                     .FirstOrDefault <mOrderAddress>();

            if (_CartList != null)
            {
                await _pageService.PushAsync(new ConfirmOrder(listitem, _CartList));
            }
            else
            {
                var AddressContent = Newtonsoft.Json.JsonConvert.SerializeObject(listitem);
                CrossSettings.Current.AddOrUpdateValue <string>("ModAddress", AddressContent);
                await _pageService.PopAsync();
            }
            DialogService.HideLoading();
        }
Exemple #10
0
        public Order_AddAddress_ViewModel(IPageService pageSerivce, string type = "new", mOrderAddress item = null)
        {
            Phone      = AccountService.Instance.Current_Account.PhoneNumber;
            BtnCommand = new Command(() => AddAddress());

            if (type == "modify")
            {
                itemId     = item._id;
                BtnText    = Strings.Save_Address;
                Address1   = item.Address1; Address2 = item.Address2; Phone = item.PhoneNumber;
                BtnCommand = new Command(() => EditAddress());
            }
            _pageService = pageSerivce;
        }
Exemple #11
0
 public AddAddress(string type, mOrderAddress item = null)
 {
     viewModel = new Order_AddAddress_ViewModel(new PageService(Navigation), type, item);
     InitializeComponent();
 }