private async void ButtonCreateOrder_Click(object sender, EventArgs e) { if (!VerifyOrderData(out var cost)) { return; } var supplier = await _suppliersRepository.GetSupplierByOGRN(ChosenSupplierOGRN); var order = new Order() { SupplierId = supplier.Id, Cost = cost, OrdererId = Program.UserId, TimeOrdered = DateTime.Now }; var orderId = await _ordersRepository.CreateOrder(order); var orderContent = new List <OrderContent>(); ChosenConsumables.ForEach(x => { var orderConsumable = new OrderContent() { OrderId = orderId, ConsumablesId = x.Id, ConsumablesAmount = x.CurrentAmount }; orderContent.Add(orderConsumable); }); await _ordersRepository.CreateOrderContent(orderContent); await UpdateDataGridViewOrders(); }
override protected async void DataGridViewOrders_SelectionChanged(object sender, EventArgs e) { base.DataGridViewOrders_SelectionChanged(sender, e); ChosenConsumables.Clear(); var orderSelected = dataGridViewOrders.SelectedRows.Count > 0; if (orderSelected) { var selectedOrderId = Convert.ToInt32(textBoxOrderId.Text); var orderContent = await _ordersRepository.GetOrdersContent(selectedOrderId); orderContent.ForEach(async x => { var consumable = new Consumables() { Id = x.ConsumablesId, Name = (await _consumablesRepository.GetConsumable(x.ConsumablesId)).Name, CurrentAmount = x.ConsumablesAmount }; ChosenConsumables.Add(consumable); }); } buttonFinishOrder.Enabled = orderSelected && textBoxOrderFinisher.Text.Equals(""); UpdateDataGridViewOrderConsumables(); }
private void ButtonRemoveOrderConsumables_Click(object sender, EventArgs e) { var id = Convert.ToInt32(textBoxOrderConsumablesId.Text); var existingConsumable = ChosenConsumables.FirstOrDefault(x => x.Id == id); ChosenConsumables.Remove(existingConsumable); UpdateDataGridViewOrderConsumables(); }
private void ButtonUpdateOrderConsumables_Click(object sender, EventArgs e) { var id = Convert.ToInt32(textBoxOrderConsumablesId.Text); var existingConsumable = ChosenConsumables.FirstOrDefault(x => x.Id == id); existingConsumable.CurrentAmount = Convert.ToInt32(numericUpDownOrderConsumablesAmount.Value); UpdateDataGridViewOrderConsumables(); }
private bool VerifyOrderData(out int cost) { cost = Convert.ToInt32(numericUpDownOrderCost.Value); var emptyConsumable = ChosenConsumables.FirstOrDefault(x => x.CurrentAmount == 0); var message = ""; message += cost == 0 ? "Стоимость заказа должна быть больше нуля рублей.\n" : ""; message += ChosenConsumables.Count == 0 ? "В заказе должен присутствовать хотя бы один материал.\n" : emptyConsumable != null ? "В заказе присутствует материал с нулевым количеством.\n" : ""; message += ChosenSupplierOGRN == 0 ? "Необходимо выбрать поставщика.\n" : ""; if (!message.Equals("")) { MessageBox.Show(message, "Валидация данных о заказе"); return(false); } return(true); }
private void ButtonAddConsumablesToOrder_Click(object sender, EventArgs e) { var id = Convert.ToInt32(textBoxConsumablesId.Text); var existingConsumable = ChosenConsumables.FirstOrDefault(x => x.Id == id); if (existingConsumable != null) { return; } var consumable = new Consumables() { Id = id, Name = textBoxConsumablesName.Text, CurrentAmount = 0 }; ChosenConsumables.Add(consumable); UpdateDataGridViewOrderConsumables(); }