/// <summary> /// Metoda odpowiedzialna za dodawanie ilości produktu do bazy danych. /// </summary> /// <param name="product"></param> /// <param name="productID"></param> /// <param name="amount"></param> public void AddAmountOfProduct(String product, int amount) { //zmienna pozwalająca na dokonywanie operacji na bazie danych using (MichalSurmackiLab04Zad01Entities context = new MichalSurmackiLab04Zad01Entities()) { //sprawdzenie czy produkt o zadanych parametrach istnieje w bazie var checkIfProductExist = context.ProductsForSales.Where(x => x.Product == product).Count(); //jeśli istnieje zostają wykonane następujące isntrukcje if (checkIfProductExist == 1) { //modyfikacja rekordu z bazy danych ProductsForSale editingProduct = new ProductsForSale(); editingProduct = context.ProductsForSales.Where(x => x.Product.Equals(product)).FirstOrDefault(); editingProduct.Product = product; int newAmount = Int32.Parse(editingProduct.InStock.ToString()); newAmount += amount; editingProduct.InStock = newAmount; context.Entry(editingProduct).State = EntityState.Modified; context.SaveChanges(); } //jeśli przedmiot o zadanych parametrach nie znajduje się w bazie danych - wyświetlenie komunikatu else { MessageBox.Show("Taki produkt nie istnieje!", "Komunikat"); } } }
/// <summary> /// Funckja odpowiedzialna za usuwanie zadanej ilości produktu z bazy danych. /// </summary> /// <param name="product"></param> /// <param name="amount"></param> public Boolean DeleteProduct(String product, int amount) { //zmienna pozwalająca na wykonywanie operacji na bazie danych using (MichalSurmackiLab04Zad01Entities context = new MichalSurmackiLab04Zad01Entities()) { //wyszukanie produktu o zadanych parametrach w bazie danych var checkIfProductExist = context.ProductsForSales.Where(x => x.Product == product).Count(); //jeśli produkt istnieje wykonanie instrukcji if (checkIfProductExist == 1 && amount != 0) { //modyfikacja rekordu z bazy danych ProductsForSale editingProduct = new ProductsForSale(); editingProduct = context.ProductsForSales.Where(x => x.Product.Equals(product)).FirstOrDefault(); editingProduct.Product = product; int newAmount = Int32.Parse(editingProduct.InStock.ToString()); newAmount -= amount; //jeśli pożądana do kupna ilość nie jest większa niż ilość przedmiotu na stanie - zakup jest możliwy if (newAmount >= 0) { editingProduct.InStock = newAmount; context.Entry(editingProduct).State = EntityState.Modified; context.SaveChanges(); return(true); } //jeśli dokonano próby zakupu przedmiotu, którego ilość jest mniejsza niż pożądana - zakup jest niemożliwy else { return(false); } } //jeśli produkt nie istnieje zwrócenie wartości false. else { return(false); } } }