Exemple #1
0
        private async void OpenPage()
        {
            KooshDarooDatabase odb = new KooshDarooDatabase();
            var oLoginItemS        = odb.GetPharmacysAsync();

            if (oLoginItemS.Result.Count > 0)
            {
                PharmacyService Pharmacyervices = new PharmacyService();
                var             pharmacyS       = Task.Run(() => Pharmacyervices.GetPharmacyByPhoneNoAsync(oLoginItemS.Result[0].PhoneNo));
                if (pharmacyS.Result.Count == 0)
                {
                    oLoginItemS.Result.ForEach(f => odb.DeletePharmacyAsync(f));
                    MainPage = new NavigationPage(new SignUpPage());
                    //MainPage = new SignUpPage();
                }
                else
                {
                    myId      = pharmacyS.Result[0].id;
                    myPhoneNo = pharmacyS.Result[0].PhoneNo;

                    MainPage = new NavigationPage(new MainPageTabbed());
                    //MainPage = new MainPageTabbed();
                }
            }
            else
            {
                MainPage = new SignUpPage();
            }
        }
        private async void UpdateList(double X, double Y, DateTime dateOf, int prescribeId, bool add = true)
        {
            KooshDarooDatabase odb          = new KooshDarooDatabase();
            var      pharmacyS              = odb.GetPharmacysAsync();
            var      pharmacy               = pharmacyS.Result[0];
            Location sourceCoordinates      = new Location(X, Y);
            Location destinationCoordinates = new Location(pharmacy.X, pharmacy.Y);
            Int32    distance               = Convert.ToInt32(Location.CalculateDistance(sourceCoordinates, destinationCoordinates, DistanceUnits.Kilometers) * 1000);

            var prescription = new Prescription()
            {
                DateAndDistance = dateOf.Hour.ToString() + ":" + dateOf.Minute.ToString() + "       ==>       " + distance.ToString() + " (متر)",
                Tag             = prescribeId.ToString()
            };

            //add or remove the a prescription to the list
            if (add)
            {
                _prescriptionList.Insert(0, prescription);
            }
            else
            {
                for (int i = 0; i < _prescriptionList.Count; i++)
                {
                    if (prescription.Tag == _prescriptionList[i].Tag)
                    {
                        _prescriptionList.RemoveAt(i);
                        break;
                    }
                }
            }

            lvPrescription             = (ListView)FindByName("lvPrescription");
            lvPrescription.ItemsSource = prescriptionList;
        }
Exemple #3
0
        public async Task <bool> CanPrescribeAsync()
        {
            KooshDarooDatabase odb = new KooshDarooDatabase();
            var oLoginItemS        = odb.GetPharmacysAsync();

            if (oLoginItemS.Result.Count == 0)
            {
                return(false);
            }
            else
            {
                //var result = await restClient.GetAsyncByFieldNameFirst("Prescribe","PhoneNo", oLoginItemS.Result[0].PhoneNo);
                //return (DateTime.Now.ToOADate()-result.DateOf.ToOADate() > 0.5);
                Prescribe prescribe = await GetLastPrescribe(oLoginItemS.Result[0].PhoneNo);

                if (prescribe == null)
                {
                    return(true);
                }

                return(DateTime.Now.ToOADate() - prescribe.DateOf.ToOADate() >= 0.5);
            }
        }