Exemple #1
0
        public static async void updateCars()
        {
            List <carDetailsSQL> cars = new List <carDetailsSQL>();
            var firebase = new FirebaseClient(loginActivity.FirebaseURL);

            FirebaseUser users = FirebaseAuth.GetInstance(loginActivity.app).CurrentUser;

            id = users.Uid;

            List <string> sqlCars      = new List <string>();
            List <string> firebaseCars = new List <string>();

            connection con = new connection();

            var data = await firebase.Child("car").Child(id).OnceAsync <CarDetails>();

            foreach (var item in data)
            {
                con.db.Execute("INSERT OR IGNORE INTO carDetailsSQL (carName, godina, markaVozila, modelVozila, snagaMotora, tipMotora, tipVozila, uid, zapremninaMotora) VALUES ('" + item.Key + "', " +
                               " '" + item.Object.godina + "', '" + item.Object.markaVozila + "', '" + item.Object.modelVozila + "', '" + item.Object.snagaMotora + "', '" + item.Object.tipMotora + "', '" + item.Object.tipVozila + "', " +
                               "'" + item.Object.uid + "', '" + item.Object.zapremninaMotora + "') ");
                firebaseCars.Add(item.Key);
            }

            List <carDetailsSQL> getSQLCars = con.db.Query <carDetailsSQL>("SELECT * FROM carDetailsSQL");

            foreach (var item in getSQLCars)
            {
                sqlCars.Add(item.carName);
            }

            var difference = sqlCars.Except(firebaseCars);

            foreach (var item in difference)
            {
                con.db.Execute("DELETE FROM carDetailsSQL WHERE carName = '" + item + "' ");
            }
        }
        public async void getAppointments(string tag)
        {
            var user = FirebaseAuth.Instance.CurrentUser;

            ordersList.Clear();

            string orderID;
            string id = user.Uid;

            var        firebase = new FirebaseClient(loginActivity.FirebaseURL);
            connection con      = new connection();

            int numOfOrders = 1;

            orderID = JsonConvert.SerializeObject(numOfOrders.ToString());

            List <orders> allOrders          = new List <orders>();
            var           getONumberOfOrders = await firebase.Child("order").Child(id).OnceAsync <orders>();

            foreach (var item in getONumberOfOrders)
            {
                allOrders.Add(new orders {
                    carName = item.Object.carName
                });
                numOfOrders = allOrders.Count + 1;
                orderID     = numOfOrders.ToString();
                orderID     = JsonConvert.SerializeObject(orderID);

                if (tag == "fromMainActivity")
                {
                    var getOtherData = await firebase.Child("order").Child(id).Child(item.Key).OnceAsync <orders>();

                    foreach (var Otheritem in getOtherData)
                    {
                        stringOrderID = Otheritem.Object.id;
                        ordersList.Add(new orders {
                            uid = Otheritem.Object.id, carName = Otheritem.Object.carName, datumKreiranja = Otheritem.Object.datumKreiranja.Substring(0, 10)
                        });
                    }
                }

                if (tag != "fromMainActivity")
                {
                    var getOtherData = await firebase.Child("order").Child(id).Child(item.Key).OnceAsync <orders>();

                    foreach (var Otheritem in getOtherData)
                    {
                        stringOrderID = Otheritem.Object.id;
                        if (tag == Otheritem.Object.carName)
                        {
                            ordersList.Add(new orders {
                                uid = Otheritem.Object.id, carName = Otheritem.Object.carName, datumKreiranja = Otheritem.Object.datumKreiranja.Substring(0, 10)
                            });
                        }
                    }
                }
            }

            listViewAdapter adapter = new listViewAdapter(view.Context, ordersList);

            ordersLV.Adapter       = adapter;
            progressBar.Visibility = ViewStates.Invisible;
            refreshButton.Enabled  = true;
        }