private void button1_Click(object sender, EventArgs e) { IngredientRepository ingredientRepository = new IngredientRepository(); IngredientsForProductRepository ingredientsForProductRepository = new IngredientsForProductRepository(); Ingredient selectedIngredient = ingredientRepository.GetDataSource().FirstOrDefault(n => n.Name == comboBox1.SelectedItem.ToString()); if (selectedIngredient == null) { MessageBox.Show("Інгредієнт не вибрано.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } var ingredientInReceipts = ingredientsForProductRepository.GetDataSource().Where(element => element.IngredientId == ingredient.Id).ToList(); foreach (var item in ingredientInReceipts) { item.IngredientId = selectedIngredient.Id; ingredientsForProductRepository.Edit(item); } ingredientRepository.Delete(ingredient); MessageBox.Show("Інгредієнт успішно замінено і видалено.", "Sucsess", MessageBoxButtons.OK, MessageBoxIcon.Information); }
private void RadioButton1_CheckedChanged(object sender, EventArgs e) { ProductRepository productRepository = new ProductRepository(); IngredientRepository ingredientRepository = new IngredientRepository(); IngredientsForProductRepository receiptRepository = new IngredientsForProductRepository(); groupBox1.Enabled = radioButton1.Checked; if (!radioButton1.Checked) { ClearBatch(); } Product currProduct = productRepository.GetDataSource().Where(n => n.Name == comboBox1.SelectedItem.ToString()).FirstOrDefault(); var receipt = receiptRepository.GetDataSource().Where(n => n.ProductId == currProduct.Id).ToList(); var ingredientsForProduct = ingredientRepository.GetDataSource(); comboBox3.DataSource = receipt.Join( ingredientsForProduct, elem => elem.IngredientId, ingr => ingr.Id, (elem, ingr) => ingr.Name).ToList(); checkBox1.Checked = false; comboBox2.Text = ""; productsForRemaking.Clear(); entryProductsContainerCollection.Clear(); UpdateListBoxProduct(); }
private void button2_Click(object sender, EventArgs e) { ChangeWithDeleting changeWithDeleting = new ChangeWithDeleting(entryIngredient); changeWithDeleting.ShowDialog(); IngredientRepository repos = new IngredientRepository(); IngredientsForProductRepository ingredientsForProductRepository = new IngredientsForProductRepository(); ingredientsForProductRepository.GetDataSource(). Where(element => element.IngredientId == entryIngredient.Id).ToList().ForEach(n => n.IngredientId = entryIngredient.Id); }
private void button1_Click(object sender, EventArgs e) { IngredientRepository ingredientRepository = new IngredientRepository(); IngredientsForProductRepository ingredientsForProductRepository = new IngredientsForProductRepository(); ProductRepository productRepository = new ProductRepository(); Ingredient ingredient = ingredientRepository.GetDataSource().First(element => element.Name == entryIngredient.Name); ingredientRepository.Delete(ingredient); updateInformation(); MessageBox.Show(@"Видалення успішне.", "Sucsess", MessageBoxButtons.OK, MessageBoxIcon.Information); }
private void ComboBox1_SelectedIndexChanged(object sender, EventArgs e) { if (comboBox1.SelectedItem == null) return; ProductRepository productRepository = new ProductRepository(); IngredientRepository ingredientRepository = new IngredientRepository(); IngredientsForProductRepository receiptRepository = new IngredientsForProductRepository(); Product currProduct = productRepository.GetDataSource().Where(n => n.Name == comboBox1.SelectedItem.ToString()).FirstOrDefault(); receipt = receiptRepository.GetDataSource().Where(n => n.ProductId == currProduct.Id).ToList().OrderBy(n => n.Weight).ToList(); var ingredients = ingredientRepository.GetDataSource(); comboBox3.DataSource = receipt.Join( ingredients, elem => elem.IngredientId, ingr => ingr.Id, (elem, ingr) => ingr.Name).ToList(); comboBox3.SelectedIndex = -1; checkBox1.Checked = false; comboBox2.Text = ""; entryProductsContainerCollection.Clear(); UpdateListBoxProduct(); }
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e) { if (comboBox2.SelectedItem == null) { return; } if (radioButton1.Checked) { ProductRepository productRepository = new ProductRepository(); IngredientsForProductRepository ingredientsForProductRepository = new IngredientsForProductRepository(); IngredientRepository ingredientRepository = new IngredientRepository(); List <Ingredient> ingredients = ingredientRepository.GetDataSource(); textBox1.Text = comboBox2.SelectedItem.ToString(); receipt.Clear(); currProduct = productRepository.GetDataSource().First(n => n.Name == textBox1.Text); var currReceipt = ingredientsForProductRepository.GetDataSource().Where(n => n.ProductId == currProduct.Id); foreach (var oneElementInReceipt in currReceipt) { Ingredient ingredient = ingredients.First(n => n.Id == oneElementInReceipt.IngredientId); receipt.Add(ingredient, oneElementInReceipt.Weight); } var ingredientsForProduct = ingredientsForProductRepository.GetDataSource().Where(n => n.ProductId == currProduct.Id).ToList(); listBox1.DataSource = receipt.Select(element => element.Key.ToString() + " " + String.Format("{0:f9}", element.Value)).ToList(); } else { textBox1.Text = comboBox2.SelectedItem.ToString(); } }
private void Button1_Click(object sender, EventArgs e) { try { if (radioButton1.Checked) { ConteinerRepository conteinerRepository = new ConteinerRepository(); IngredientsForProductRepository receiptRepository = new IngredientsForProductRepository(); IngredientRepository ingredientRepository = new IngredientRepository(); double weight = Double.Parse(maskedTextBox2.Text); double amount = Double.Parse(maskedTextBox3.Text); double weightIngredientKeyBatch = weight * amount; double weightAllProducts = entryProductsContainerCollection.Sum(n => n.Amount * n.Weight); double weightForRemaking = 0; var ingredients = ingredientRepository.GetDataSource(); var detailReceipt = receipt.Join( ingredients, elem => elem.IngredientId, ingr => ingr.Id, (elem, ingr) => new { ingr.Name, elem.Weight }).ToList(); double weightIngredientKeyOnOneKilo = detailReceipt.First(n => n.Name == comboBox3.SelectedItem.ToString()).Weight; double weightBatch = weightIngredientKeyBatch / weightIngredientKeyOnOneKilo; if (weight <= 0) { MessageBox.Show(@"Некоректна вага інгредієнту-ключа на 1 заміс", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (amount <= 0) { MessageBox.Show(@"Некоректна кількість замісів", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (checkBox1.Checked) { weightForRemaking = productsForRemaking.Sum(n => n.Amount * n.Weight); } if (weightAllProducts > weightBatch + weightForRemaking || weightAllProducts == 0) { MessageBox.Show($"Некоректна вага всіх продуктів.\nВидаліть зайві продукти, збільшіть кількість замісів,\nабо додайте переробку.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } conteinerRepository.AddCollectionContainers(entryProductsContainerCollection, dateTimePicker1.Value, weightBatch); RemoveProductsForRemaking(); } else { ConteinerRepository conteinerRepository = new ConteinerRepository(); double weightAllProducts = entryProductsContainerCollection.Sum(n => n.Amount * n.Weight); double weightForRemaking = 0; if (checkBox1.Checked) { weightForRemaking = productsForRemaking.Sum(n => n.Amount * n.Weight); } if (weightAllProducts > weightForRemaking || weightAllProducts == 0) { MessageBox.Show($"Некоректна вага всіх продуктів.\nВидаліть зайві продукти, збільшіть кількість замісів,\nабо додайте переробку.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } conteinerRepository.AddCollectionContainers(entryProductsContainerCollection, dateTimePicker1.Value, 0); RemoveProductsForRemaking(); productsForRemaking.Clear(); } UpdateListBoxProduct(); // Друк штрих-кодів if (checkBox2.Checked) { addedConteiners = new List<Conteiner>(); ConteinerRepository conteinerRepository = new ConteinerRepository(); var data = conteinerRepository.GetDataSource(); foreach (var item in entryProductsContainerCollection) { var oneProduct = data.First(n => n.ProductId == item.ProductId && n.Weight == item.Weight); oneProduct.Amount = item.Amount; addedConteiners.Add(oneProduct); } ProductRepository productRepository = new ProductRepository(); PrintBarcode printBarcode = new PrintBarcode(); foreach (var item in addedConteiners) { for (int i = 0; i < item.Amount; i++) { string productName = productRepository.GetDataSource().First(n => n.Id == item.ProductId).Name + " " + item.Weight + " кг."; printBarcode.Print(item, productName); } } } checkBox1.Checked = false; MessageBox.Show($"Операція успішно виконана.", "Sucsess", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (NullReferenceException) { MessageBox.Show($"Не вибрано інгредієнт-ключ.\nБудь ласка виберіть інгредієнт-ключ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception exc) { MessageBox.Show(exc.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { updateInformation(); } }
private void Button1_Click(object sender, EventArgs e) { try { if (radioButton1.Checked) { ProductRepository repos = new ProductRepository(); var product = repos.GetDataSource().First(element => element.Name == listBox1.SelectedItem.ToString()); repos.Delete(product); listBox1.DataSource = repos.GetDataSource(); updateInformation(); } else if (radioButton2.Checked) { IngredientRepository ingredientRepository = new IngredientRepository(); IngredientsForProductRepository ingredientsForProductRepository = new IngredientsForProductRepository(); Ingredient ingredient = ingredientRepository.GetDataSource().First(element => element.Name == listBox1.SelectedItem.ToString()); var receiptsWithCurrIngredient = ingredientsForProductRepository.GetDataSource().Where(n => n.IngredientId == ingredient.Id).ToList(); if (receiptsWithCurrIngredient.Count != 0) { DeleteMessage deleteMessage = new DeleteMessage(ingredient, updateInformation); deleteMessage.ShowDialog(); } else { ingredientRepository.Delete(ingredient); updateInformation(); MessageBox.Show(@"Видалення успішне.", "Sucsess", MessageBoxButtons.OK, MessageBoxIcon.Information); } RadioButton1_CheckedChanged(this, null); } else if (radioButton3.Checked) { TareRepository tareRepository = new TareRepository(); Tare tareForDeleting = tareRepository.GetDataSource().First(n => n.Name == listBox1.SelectedItem.ToString()); tareRepository.DeleteById(tareForDeleting.Id); updateInformation(); MessageBox.Show(@"Видалення успішне.", "Sucsess", MessageBoxButtons.OK, MessageBoxIcon.Information); RadioButton1_CheckedChanged(this, null); } else { ClientRepository clientRepository = new ClientRepository(); Client clientForDeleting = clientRepository.GetDataSource().First(n => n.Name == listBox1.SelectedItem.ToString()); clientRepository.DeleteById(clientForDeleting.Id); MessageBox.Show(@"Видалення успішне.", "Sucsess", MessageBoxButtons.OK, MessageBoxIcon.Information); RadioButton1_CheckedChanged(this, null); } } catch (InvalidOperationException exeption) { MessageBox.Show(exeption.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }