Esempio n. 1
0
        public static async void GetAddresses()
        {
            string token = "";

            using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            {
                conn.CreateTable <UserPost>();
                var userD = conn.Table <UserPost>().First();
                token = userD.Token;

                string hashedToken = StringHash.HashedPassword(token);
                var    rep         = await UserAPI_Logic.GetUserAddresses(hashedToken);

                if (rep != null)
                {
                    int count = rep.Count;
                    for (int i = 0; i < count; i++)
                    {
                        UserAddressPost post = new UserAddressPost()
                        {
                            Id           = rep[i].id,
                            Name         = rep[i].name,
                            Address      = rep[i].address,
                            Postal_code  = (int)Convert.ToUInt64(rep[i].postal_code),
                            Phone_number = (int)Convert.ToUInt64(rep[i].phone_number),
                            City         = rep[i].city
                        };
                        conn.CreateTable <UserAddressPost>();

                        int rows = conn.InsertOrReplace(post);
                        if (rows > 0)
                        {
                            //success++;
                        }
                        else
                        {
                            //fail++;
                        }
                    }
                    var apiLast  = rep.Last().id;
                    var apiCount = rep.Count;
                    var posts    = conn.Table <UserAddressPost>().ToList();
                    var dbLast   = posts.Last().Id;
                    int dbCount  = posts.Count;
                    if (apiLast != dbLast && dbCount != apiCount)
                    {
                        foreach (var a in posts)
                        {
                            if (!rep.Any(n => n.id == a.Id))
                            {
                                conn.Delete <UserAddressPost>(a.Id);
                            }
                        }
                    }
                }
                conn.Close();
            }
        }
Esempio n. 2
0
        public static async Task <string> AddAdress(UserAddress adr)
        {
            string result = "";
            string token  = "";

            using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            {
                conn.CreateTable <UserPost>();
                var userD = conn.Table <UserPost>().First();
                token = userD.Token;

                string hashedToken = StringHash.HashedPassword(token);
                var    rep         = await UserAPI_Logic.AddUserAddress(hashedToken, adr);

                if (rep[0].ToString() == "Id")
                {
                    conn.CreateTable <UserAddressPost>();
                    var adresses = conn.Table <UserAddressPost>().ToList();

                    UserAddressPost post = new UserAddressPost()
                    {
                        Id           = (int)Convert.ToInt64(rep[1]),
                        Name         = adr.name,
                        Address      = adr.address,
                        City         = adr.city,
                        Postal_code  = (int)Convert.ToInt64(adr.postal_code),
                        Phone_number = (int)Convert.ToInt64(adr.phone_number)
                    };
                    conn.InsertOrReplace(post);
                }
                else
                {
                    result = rep[1].ToString();
                }


                conn.Close();
            }
            return(result);
        }