private void Product_DeleteClickedEventHandler(object sender, RoutedEventArgs e) { RegisteredProduct product = ProductDataGrid.SelectedItem as RegisteredProduct; if (product != null) { MessageBoxResult result = MessageBox.Show($"Are you sure you want to delete the following product: {product.Name}?", "Confirm", MessageBoxButton.YesNo); if (result == MessageBoxResult.Yes) { RegisteredProducts.Remove(product); Ctx.SaveChanges(); MessageBox.Show($"The product {product.Name} is succussfully deleted.", "Deleted"); } else { MessageBox.Show($"The product has not been deleted.", "Action Cancelled"); } } else { MessageBox.Show("No product has been selected."); } }
private void Product_EditClickedEventHandler(object sender, RoutedEventArgs e) { RegisteredProduct product = ProductDataGrid.SelectedItem as RegisteredProduct; Product_AddEdit editProductForm = new Product_AddEdit(Ctx, RegisteredProducts, product); editProductForm.Show(); }
public static void Main(string[] args) { TestDataBase(); ProductManager productManager = new ProductManager(); NewProduct newProduct = new NewProduct(); newProduct.Price = 10; newProduct.Title = "Caramelo"; RegisteredProduct registeredProduct = productManager.RegisterNewProduct(newProduct).Result; Console.WriteLine(registeredProduct.Id); Console.ReadKey(); }
private void btnSave_Click_1(object sender, RoutedEventArgs e) { Supplier supplier = cbSupplier.SelectedItem as Supplier; if (SelectedProduct == null) { RegisteredProduct newProduct = new RegisteredProduct() { Name = tbName.Text, Description = tbDescription.Text, BarCode = tbBarcode.Text, Price = Convert.ToDouble(tbPrice.Text), Supplier = supplier, ProductCategory = (ProductCategory)cbProductType.SelectedItem }; Ctx.RegisteredProducts.Add(newProduct); Ctx.SaveChanges(); this.Close(); } else { SelectedProduct.Name = tbName.Text; SelectedProduct.Description = tbDescription.Text; SelectedProduct.BarCode = tbBarcode.Text; SelectedProduct.Price = Convert.ToDouble(tbPrice.Text); SelectedProduct.Supplier = supplier; SelectedProduct.ProductCategory = (ProductCategory)cbProductType.SelectedItem; var productsInStock = Ctx.Products.Where(p => p.BarCode == OriginalBarcode).ToList(); foreach (var item in productsInStock) { item.Name = tbName.Text; item.Description = tbDescription.Text; item.BarCode = tbBarcode.Text; item.Price = Convert.ToDouble(tbPrice.Text); item.Supplier = supplier; item.ProductCategory = (ProductCategory)cbProductType.SelectedItem; } Ctx.SaveChanges(); CollectionViewSource.GetDefaultView(Products).Refresh(); Ctx.SaveChanges(); this.Close(); } }
public async Task <RegisteredProduct> RegisterNewProduct(NewProduct newProduct) { using (Shop shop = new Shop()) { Product product = new Product(); product.Name = newProduct.Title; product.Price = newProduct.Price; shop.Products.Add(product); await shop.SaveChangesAsync(); RegisteredProduct registerProduct = new RegisteredProduct(); registerProduct.Id = product.Id; registerProduct.Price = product.Price; registerProduct.Title = product.Name; return(registerProduct); } }
//edit constructor public Product_AddEdit(ProjectApplicationContext ctx, ObservableCollection <RegisteredProduct> products, RegisteredProduct selectedProduct) { Ctx = ctx; Products = products; SelectedProduct = selectedProduct; OriginalBarcode = SelectedProduct.BarCode; InitializeComponent(); this.Title = "Edit Product"; cbProductType.ItemsSource = Enum.GetValues(typeof(ProductCategory)); var productAndSupplier = Ctx.RegisteredProducts.Include("Supplier").Where(rp => rp.RegisteredProductId == selectedProduct.RegisteredProductId).ToList(); this.DataContext = productAndSupplier; var suppliers = Ctx.Suppliers.ToList(); cbSupplier.DataContext = suppliers; cbSupplier.ItemsSource = suppliers; Supplier selectedSupplier = null; foreach (var item in suppliers) { if (item.SupplierId == productAndSupplier[0].Supplier.SupplierId) { selectedSupplier = item; } } cbSupplier.SelectedItem = selectedSupplier; int numberOfProducts = Ctx.Products.Where(p => p.RegisteredProductId == selectedProduct.RegisteredProductId).ToList().Count(); tbQuantity.Text = numberOfProducts.ToString(); tbQuantity.IsEnabled = false; tbProductId.IsEnabled = false; cbSupplier.IsEnabled = false; }