private async void TapGestureRecognizer_Tapped(object sender, EventArgs e)
        {
            StackLayout stackLayout = ((Image)sender).FindByName <StackLayout>("st");
            await stackLayout.FadeTo(0.2, 300);

            string            itemId            = ((Image)sender).FindByName <Label>("itemId").Text;
            string            recordId          = ((Image)sender).FindByName <Label>("recordId").Text;
            var               WOzCrEntry        = ((Image)sender).FindByName <CrossEntry>("WOzCrEntry");
            var               WLbsCrEntry       = ((Image)sender).FindByName <CrossEntry>("WLbsCrEntry");
            var               WkgCrEntry        = ((Image)sender).FindByName <CrossEntry>("WkgCrEntry");
            FullOrderSettings fullOrderSettings = bulkPostagePrintingMV.SelectProduct
                                                  .Find(s => s.EBayItemID == itemId && s.RecordNumber == recordId);

            if (fullOrderSettings.Oz != 0)
            {
                WOzCrEntry.TextColor  = Color.FromHex("#2aa0ea");
                WLbsCrEntry.TextColor = Color.FromHex("#2aa0ea");
                WkgCrEntry.TextColor  = Color.FromHex("#2aa0ea");
            }
            else
            {
                WOzCrEntry.TextColor  = Color.Red;
                WLbsCrEntry.TextColor = Color.Red;
                WkgCrEntry.TextColor  = Color.Red;
            }
            await stackLayout.FadeTo(1, 250);
        }
        public async void UpdateOneOrder(FullOrderSettings fullOrderSettings)
        {
            string         description = null;
            string         email       = CrossSettings.Current.GetValueOrDefault("userName", "");
            string         idCompany   = CrossSettings.Current.GetValueOrDefault("idCompany", "");
            string         psw         = CrossSettings.Current.GetValueOrDefault("psw", "");
            List <Carrier> carriers    = null;
            int            stateAuth   = managerVazoo.PrintingWork("Options", ref description, fullOrderSettings.cDimensions, SourceAddr, fullOrderSettings.cAddressBase,
                                                                   fullOrderSettings.Oz, SignatureConfirmation,
                                                                   DeliveryConfirmation, NoValidate, 0, ref carriers, email, idCompany, psw);

            if (stateAuth == 3)
            {
                isValid = true;
                fullOrderSettings.carriers = carriers;
                CarriersUSPS  = new List <Carrier>(carriers.FindAll(c => c.Company == 1));
                CarriersUPS   = new List <Carrier>(carriers.FindAll(c => c.Company == 2));
                CarriersFedEx = new List <Carrier>(carriers.FindAll(c => c.Company == 3));
                CarriersUSPS.Sort((c1, c2) => c1.Price.CompareTo(c2.Price));
                CarriersUPS.Sort((c1, c2) => c1.Price.CompareTo(c2.Price));
                CarriersFedEx.Sort((c1, c2) => c1.Price.CompareTo(c2.Price));

                double tempPostage = 0;
                foreach (var selectProduct1 in SelectProduct)
                {
                    selectProduct1.SetCarrier(selectProduct1.Carrier);
                    tempPostage += selectProduct1.Carrier.Price;
                }
                PostageTotal = $"{tempPostage}";
            }
        }
 private void InitSettingOrders(List <OrderInfo> selectProducts)
 {
     SelectProduct = new List <FullOrderSettings>();
     foreach (var selectProduct in selectProducts)
     {
         FullOrderSettings fullOrderSettings = new FullOrderSettings(selectProduct);
         fullOrderSettings.CarrierOptimal    = selectProduct.CarrierOptimal;
         fullOrderSettings.DateCreated       = selectProduct.DateCreated;
         fullOrderSettings.DimensionsH       = selectProduct.DimensionsH;
         fullOrderSettings.DimensionsL       = selectProduct.DimensionsL;
         fullOrderSettings.DimensionsW       = selectProduct.DimensionsW;
         fullOrderSettings.EBayItemID        = selectProduct.EBayItemID;
         fullOrderSettings.EBayUserID        = selectProduct.EBayUserID;
         fullOrderSettings.ID                = selectProduct.ID;
         fullOrderSettings.ImageFile         = selectProduct.ImageFile;
         fullOrderSettings.IsAutoPrint       = selectProduct.IsAutoPrint;
         fullOrderSettings.ItemTitle         = selectProduct.ItemTitle;
         fullOrderSettings.PaymentMethod     = selectProduct.PaymentMethod;
         fullOrderSettings.QuantityPurchased = selectProduct.QuantityPurchased;
         fullOrderSettings.RecordNumber      = selectProduct.RecordNumber;
         fullOrderSettings.ShipToAddress     = selectProduct.ShipToAddress;
         fullOrderSettings.ShopperEmail      = selectProduct.ShopperEmail;
         fullOrderSettings.SKU               = selectProduct.SKU;
         fullOrderSettings.TrackingNumber    = selectProduct.TrackingNumber;
         fullOrderSettings.TransactionPrice  = selectProduct.TransactionPrice;
         fullOrderSettings.UPC               = selectProduct.UPC;
         fullOrderSettings.WeightKG          = selectProduct.WeightKG;
         fullOrderSettings.WeightLBS         = selectProduct.WeightLBS;
         fullOrderSettings.WeightOZ          = selectProduct.WeightOZ;
         SelectProduct.Add(fullOrderSettings);
     }
     Task.Run(() =>
     {
         bool isValidTemp   = true;
         double tempPostage = 0;
         foreach (var selectProduct1 in SelectProduct)
         {
             if (isValidTemp)
             {
                 isValidTemp = selectProduct1.CarrierOptimal != null;
             }
             selectProduct1.SetCarrier(selectProduct1.CarrierOptimal);
             try
             {
                 tempPostage += selectProduct1.CarrierOptimal.Price;
             }
             catch (Exception E)
             {
             }
         }
         IsValid      = isValidTemp;
         PostageTotal = $"{tempPostage}";
     });
 }
        private async void Button_Clicked(object sender, EventArgs e)
        {
            StackLayout stackLayout = ((Button)sender).FindByName <StackLayout>("st");
            await stackLayout.FadeTo(0.2, 300);

            await PopupNavigation.PushAsync(new LoadPage());

            string            itemId            = ((Button)sender).FindByName <Label>("itemId").Text;
            string            recordId          = ((Button)sender).FindByName <Label>("recordId").Text;
            FullOrderSettings fullOrderSettings = bulkPostagePrintingMV.SelectProduct
                                                  .Find(s => s.EBayItemID == itemId && s.RecordNumber == recordId);

            fullOrderSettings.cDimensions.Height = Convert.ToDouble(fullOrderSettings.DimensionsH);
            fullOrderSettings.cDimensions.Width  = Convert.ToDouble(fullOrderSettings.DimensionsW);
            fullOrderSettings.cDimensions.Length = Convert.ToDouble(fullOrderSettings.DimensionsL);
            int indexSelectProduct = bulkPostagePrintingMV.SelectProduct
                                     .FindIndex(s => s.EBayItemID == itemId && s.RecordNumber == recordId);
            var WOzCrEntry  = ((Button)sender).FindByName <CrossEntry>("WOzCrEntry");
            var WLbsCrEntry = ((Button)sender).FindByName <CrossEntry>("WLbsCrEntry");
            var WkgCrEntry  = ((Button)sender).FindByName <CrossEntry>("WkgCrEntry");

            if (fullOrderSettings.Oz != 0)
            {
                await Task.Run(() => bulkPostagePrintingMV.UpdateOneOrder(fullOrderSettings));

                await PopupNavigation.PopAllAsync();

                if (bulkPostagePrintingMV.CarriersFedEx.Count != 0 || bulkPostagePrintingMV.CarriersUPS.Count != 0 || bulkPostagePrintingMV.CarriersUSPS.Count != 0)
                {
                    await PopupNavigation.PushAsync(new OptinsPage1(bulkPostagePrintingMV, fullOrderSettings.CarriersUSPS.Count != 0, fullOrderSettings.CarriersUPS.Count != 0, fullOrderSettings.CarriersFedEx.Count != 0, indexSelectProduct), true);
                }
                else
                {
                    await PopupNavigation.PushAsync(new Error("Carrer does not exist or did not have time to boot"), true);
                }
                WOzCrEntry.TextColor  = Color.FromHex("#2aa0ea");
                WLbsCrEntry.TextColor = Color.FromHex("#2aa0ea");
                WkgCrEntry.TextColor  = Color.FromHex("#2aa0ea");
                ValidWeight(itemId, recordId);
            }
            else
            {
                WOzCrEntry.TextColor  = Color.Red;
                WLbsCrEntry.TextColor = Color.Red;
                WkgCrEntry.TextColor  = Color.Red;
            }
            await stackLayout.FadeTo(1, 250);
        }
        private void ValidWeight(string itemId, string recordId)
        {
            FullOrderSettings fullOrderSettings = bulkPostagePrintingMV.SelectProduct
                                                  .Find(s => s.EBayItemID == itemId && s.RecordNumber == recordId);

            if (fullOrderSettings.WeightOZ != "0" && fullOrderSettings.WeightLBS != "0")
            {
                fullOrderSettings.WeightKG = "0";
            }
            else if (fullOrderSettings.WeightOZ != "0")
            {
                fullOrderSettings.WeightKG = "0";
            }
            else if (fullOrderSettings.WeightLBS != "0")
            {
                fullOrderSettings.WeightKG = "0";
            }
        }
        private void CrossEntry_TextChanged(object sender, TextChangedEventArgs e)
        {
            if (e.OldTextValue != null)
            {
                bulkPostagePrintingMV.IsValid = false;
            }
            string            itemId            = ((CrossEntry)sender).FindByName <Label>("itemId").Text;
            string            recordId          = ((CrossEntry)sender).FindByName <Label>("recordId").Text;
            FullOrderSettings fullOrderSettings = bulkPostagePrintingMV.SelectProduct
                                                  .Find(s => s.EBayItemID == itemId && s.RecordNumber == recordId);
            double DHeigh  = Convert.ToDouble(fullOrderSettings.DimensionsH != "" ? fullOrderSettings.DimensionsH : "0");
            double DWidth  = Convert.ToDouble(fullOrderSettings.DimensionsW != "" ? fullOrderSettings.DimensionsW : "0");
            double DLength = Convert.ToDouble(fullOrderSettings.DimensionsL != "" ? fullOrderSettings.DimensionsL : "0");

            if (DHeigh != 0 && DWidth != 0 && DLength != 0)
            {
                double UPS  = (DHeigh * DWidth * DLength) / 166;
                double USPS = (DHeigh * DWidth * DLength) / 194;
                bulkPostagePrintingMV.SelectProduct
                .Find(s => s.EBayItemID == itemId && s.RecordNumber == recordId)
                .StrCalc = $"(UPS: {UPS.ToString("0.00")}, USPS: {USPS.ToString("0.00")})";
            }
            else
            {
                bulkPostagePrintingMV.SelectProduct
                .Find(s => s.EBayItemID == itemId && s.RecordNumber == recordId).StrCalc = "";
            }
            if (((CrossEntry)sender).Text == "")
            {
                ((CrossEntry)sender).Text = "0";
            }
            else if (e.OldTextValue != null && e.OldTextValue == "0")
            {
                ((CrossEntry)sender).Text = e.NewTextValue.Remove(0, 1);
            }
        }