/// <summary> /// Добавление в таблицу "Корзина" /// </summary> /// <param name="entity"></param> public void AddBasket(BASKET entity) { try { basketS.Add(entity); } catch (Exception e) { throw e; } }
/// <summary> /// Оформление данных в таблицу "заказ" и "корзина" /// </summary> /// <remarks="При оформлении заказа кол-во товара в наличие уменьшается на кол-во купленного"></remarks> private void btnCreateOrder_Click(object sender, EventArgs e) { try { for (int i = 0; i < listSelectedProduct.Count; i++) { if (listControls[i].nUDCount.Value == 0) { continue; } totalSum += decimal.Parse(listControls[i].tbTotal.Text); } if (totalSum == 0) { return; } ORDER o = new ORDER(); o.order_date = DateTime.Today.ToString("d"); o.order_status = 0; o.order_time = DateTime.Now.ToString("H:mm:ss"); o.total_sum = totalSum; orderModule.AddOrder(o); for (int i = 0; i < listSelectedProduct.Count; i++) { bool availability = orderModule.CheckForAvailability(listSelectedProduct[i]); //если не можем пошить товар или выбрано кол-во 0, не записываем его в корзину if (listControls[i].nUDCount.Value == 0) { continue; } BASKET b = new BASKET(); b.id_client = client.id_client; b.id_product = listSelectedProduct[i].id_product; b.count = (int)(listControls[i].nUDCount.Value); b.id_order = o.id_order; orderModule.AddBasket(b); if (availability) { //orderModule.DecreaseCountOfProduct(listSelectedProduct[i], b.count); listSelectedProduct[i].count -= b.count; orderModule.Update(listSelectedProduct[i]); } else { orderModule.DecreaseMaterialCount(listSelectedProduct[i]); } } /// ///функция для создания пдф /// CreatePDF(listSelectedProduct, o); MessageBox.Show("Ваш заказ успешно оформлен"); listSelectedProduct.Clear(); SetProductInfo(); listControls.Clear(); FillListControls(); Update(); metroTabControl1.SelectedTab = tabPage3; } catch (Exception ex) { MessageBox.Show(ex.Message); } }