public InsertDish(Заказы order) { InitializeComponent(); _order = order; InitializeComboboxes(); button3.Enabled = false; }
public void InsertOrder(ListView lvData) { using (var ctx = new DCModel()) { if (ctx.Заказчики.Count() == 0) { MessageBox.Show("Нет подходящих заказчиков"); return; } if (ctx.Операторы.Count() == 0) { MessageBox.Show("Нет подходящих Операторов"); return; } if (ctx.Курьеры.Count() == 0) { MessageBox.Show("Нет подходящих курьеров"); return; } if (ctx.Типы_оплаты.Count() == 0) { MessageBox.Show("Нет подходящих типов оплаты"); return; } var orderInsert = new OrdersInsertUpdate(FormType.Insert, null, ctx, lvData); if (orderInsert.ShowDialog() == DialogResult.OK) { var newOrder = new Заказы { Заказчики = orderInsert.Customer, Дата_открытия = orderInsert.OpeningDate, Дата_закрытия = orderInsert.ClosingDate, Операторы = orderInsert.Operator, Курьеры = orderInsert.Courier, Доп__скидка = (int)orderInsert.Discount, Типы_оплаты = orderInsert.PaymentType, Стоимость_доставки = orderInsert.DeliveryCost }; ctx.Заказы.Add(newOrder); ctx.SaveChanges(); var lvi = new ListViewItem(new[] { newOrder.Заказчики.DisplayMember, newOrder.Дата_открытия.ToLongDateString(), newOrder.Дата_закрытия.ToLongDateString(), newOrder.Операторы.DisplayMember, newOrder.Курьеры.DisplayMember, newOrder.Доп__скидка.ToString(), newOrder.Типы_оплаты.Название, newOrder.Стоимость_доставки.ToString(), }); lvi.Tag = newOrder; lvData.Items.Add(lvi); } } }
public OrdersInsertUpdate(FormType formType, Заказы order = null, DCModel ctx = null, ListView lvData = null) { InitializeComponent(); currentFormType = formType; oldOrder = order; btOK.Text = formType == FormType.Insert ? "Добавить" : "Изменить"; this.ctx = ctx == null ? new DCModel() : ctx; this.lvData = lvData; FillInfo(); }
public Description(Заказы order, AccessType currentAccessType, ListView lvData) { InitializeComponent(); if (currentAccessType != AccessType.Operator) { button1.Enabled = false; button2.Enabled = false; } _order = order; _lvData = lvData; InitializeListView(); }
public void InsertDish(ListView lvDish, Заказы order) { var DishInsert = new InsertDish(order); if (DishInsert.ShowDialog() == DialogResult.OK) { var insertedDish = DishInsert.SelectedDish; var insertedRestaurant = DishInsert.SelectedRestaurant; var insertedCount = DishInsert.SelectedCount; using (var ctx = new DCModel()) { var dishPrice = ctx.Цены.Find(insertedRestaurant.Код, insertedDish.Код); insertedDish = ctx.Блюда.Find(insertedDish.Код); //ctx.Блюда.Attach(insertedDish); // прикрепляет объект из другого контекста к текущему, наименование группы блюд содержится в другой таблице var lvi = new ListViewItem(new[] { insertedDish.Название, insertedDish.Группы_блюд.Наименование, insertedRestaurant.Название, insertedCount.ToString(), (dishPrice.Цена_блюда * insertedCount).ToString() }); var newDish = new ЗаказыРестораныБлюда { C__заказа = order.C_, Код_блюда = insertedDish.Код, Код_ресторана = insertedRestaurant.Код, Количество = insertedCount }; lvi.Tag = newDish; lvDish.Items.Add(lvi); ctx.ЗаказыРестораныБлюда.Add(newDish); ctx.SaveChanges(); } } }