/// <summary> /// Méthode permettant d'ajouter un item à une liste de courses au sein de la base de données /// </summary> /// <param name="shoppingListItem">L'item de liste de courses</param> /// <example> /// Méthode de mise en oeuvre : /// <code> /// Database bdd = new Database("Shopping"); /// bdd.AddShoppingListItem((new ShoppingListItem(0, 1, 1)); /// </code> /// </example> public void AddShoppingListItem(ShoppingListItem shoppingListItem) { try { sqldb_query = "INSERT INTO PersonnalShoppingItems (id_list, id_cat, id_item) VALUES (" + shoppingListItem.IdList + ", " + shoppingListItem.IdCat + ", " + shoppingListItem.IdItem + ");"; sqldb.ExecSQL(sqldb_query); sqldb_message = "Item ajouté à la liste de courses !"; } catch (SQLiteException ex) { sqldb_message = ex.Message; } }
/// <summary> /// Méthode d'initialisation de la liste extensible /// </summary> private void InitialiseListArticles() { listArticles = FindViewById <ExpandableListView>(Resource.Id.liste_items); PrepareListDatas(); listAdapter = new CustomExpandableListViewAdapter(this, listDataHeader, listDataChild); listArticles.SetAdapter(listAdapter); listArticles.ChildClick += (s, e) => { foreach (Item item in items) { if (item.NameFr.Equals(listAdapter.GetChild(e.GroupPosition, e.ChildPosition).ToString())) { ShoppingListItem shoppingListItem = new ShoppingListItem(Intent.GetIntExtra("id", -1), item.IdCat, item.IdItem); baseDeDonnees.AddShoppingListItem(shoppingListItem); // On crée le lien entre la liste de courses et l'item sélectionné Intent retourListe = new Intent(this, typeof(ApercuListe)); // Pour on redirige vers l'aperçu de la liste de courses retourListe.PutExtra("id", Intent.GetIntExtra("id", -1)); retourListe.PutExtra("name", Intent.GetStringExtra("name")); StartActivity(retourListe); } } }; }
/// <summary> /// Méthode permettant de récupérer tous les items d'une liste de courses présents en base de données. /// </summary> /// <returns>La liste d'items d'une liste de courses si ils existent, null sinon</returns> /// <example> /// Méthode de mise en oeuvre : /// <code> /// Database baseDeDonnees = new Database("Shopping"); /// baseDeDonnees.GetAllShoppingListItemsWithId(1); /// </code> /// </example> public List <ShoppingListItem> GetAllShoppingListItemsWithId(int listId) { List <ShoppingListItem> shoppingListItems = new List <ShoppingListItem>(); Android.Database.ICursor sqldb_cursor = null; try { sqldb_query = "SELECT * FROM PersonnalShoppingItems WHERE id_list = '" + listId + "';"; sqldb_cursor = sqldb.RawQuery(sqldb_query, null); if (!(sqldb_cursor != null)) { sqldb_message = "Pas d'items trouvés dans la liste de courses ! "; shoppingListItems = null; sqldb_cursor.Close(); } else { sqldb_message = "Items trouvées dans la liste de courses ! "; sqldb_cursor.MoveToFirst(); for (int i = 0; i < sqldb_cursor.Count; i++) { Log.Debug("Item", "Valeurs : " + sqldb_cursor.GetInt(sqldb_cursor.GetColumnIndex("_id"))); ShoppingListItem shoppingListItem = new ShoppingListItem(); shoppingListItem.Id = sqldb_cursor.GetInt(sqldb_cursor.GetColumnIndex("_id")); shoppingListItem.IdList = sqldb_cursor.GetInt(sqldb_cursor.GetColumnIndex("id_list")); shoppingListItem.IdCat = sqldb_cursor.GetInt(sqldb_cursor.GetColumnIndex("id_cat")); shoppingListItem.IdItem = sqldb_cursor.GetInt(sqldb_cursor.GetColumnIndex("id_item")); shoppingListItems.Add(shoppingListItem); sqldb_cursor.MoveToNext(); } sqldb_cursor.Close(); } } catch (SQLiteException ex) { sqldb_message = ex.Message; } return(shoppingListItems); }