private void BChange_Click(object sender, RoutedEventArgs e) { СкладТоваров selectedRow = lb1.SelectedItem as СкладТоваров; if (lb1.SelectedItem != null) { string s = selectedRow.Наименование; if (s != null) { if ((tb4.Text != "") || (tb5.Text != "")) { if (tb4.Text != "") { Store = int.Parse(tb4.Text); if (Store < 0) { DialogResult = false; } } if (tb5.Text != "") { Cost = decimal.Parse(tb5.Text); if (Cost < 0) { MessageBox.Show("Цена не может быть отрицательной.", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error); } } MessageBox.Show("Данные изменены.", "ОК", MessageBoxButton.OK, MessageBoxImage.Information); Productname = selectedRow.Наименование; FlagOk = true; DialogResult = true; } else { MessageBox.Show("Для изменения данных, заполните соответствующие поля.", "Внимание!", MessageBoxButton.OK, MessageBoxImage.Stop); } } else { MessageBox.Show("Выберите элемент из списка.", "Внимание", MessageBoxButton.OK, MessageBoxImage.Information); } } else { MessageBox.Show("Заполните соответствующие поля.", "Внимание!", MessageBoxButton.OK, MessageBoxImage.Stop); } }
private void Goods_Click(object sender, RoutedEventArgs e) //Изменение данных о товарах на складе { int id = 0; var d = context1.СкладТоваров; List <СкладТоваров> l = d.ToList(); SkladTovarov dialog = new SkladTovarov(l); if (dialog.ShowDialog() == true) { if (dialog.FlagOk == false) { СкладТоваров st = new СкладТоваров { Наименование = dialog.Productname, Цена = dialog.Cost, Остаток = dialog.Store }; context1.СкладТоваров.Add(st); context1.SaveChanges(); tb.Text = "Товар успешно добавлен на склад!"; } if (dialog.FlagOk == true) { foreach (СкладТоваров i in d) { if (i.Наименование == dialog.Productname) { id = i.КодТовара; } } if (id != 0) { //МЕняем цену товара СкладТоваров s = context1.СкладТоваров.Find(id); if (s.Остаток != dialog.Store & dialog.Store != 0) { s.Остаток = dialog.Store; } if (s.Цена != dialog.Cost & dialog.Cost != 0) { s.Цена = dialog.Cost; } context1.SaveChanges(); } } } }
private void Add_order_Click(object sender, RoutedEventArgs e) //добавление заказа { //ищем свободных клиентов в таблице и заносим int count; List <string> clients = new List <string>(); var r1 = context1.Клиенты; var rez = context2.Заказы; foreach (Клиенты item1 in r1) { count = 0; foreach (Заказы item2 in rez) { if (item2.КлиентID == item1.КлиентID) { count++; break; } } if (count == 0) { clients.Add(item1.ФИО); } } //добавляем список состояний List <string> stat = new List <string>(); var r2 = context3.СостояниеЗаказа; foreach (СостояниеЗаказа item3 in r2) { stat.Add(item3.Состояние); } //добавляем список водил List <string> driv = new List <string>(); var r3 = context1.Водители; foreach (Водители item4 in r3) { driv.Add(item4.ФИО); } //добавляем список транспорта List <string> transp = new List <string>(); var r4 = context1.ТранспортноеСредство; foreach (ТранспортноеСредство item5 in r4) { transp.Add(item5.Марка); } //добавляем список товаров List <string> goods1 = new List <string>(); var r5 = context4.СкладТоваров; foreach (СкладТоваров item6 in r5) { goods1.Add(item6.Наименование); } int clienID = 0; int sostID = 0; int carID = 0; int driverID = 0; DialAddOrder dial = new DialAddOrder(clients, stat, driv, transp, goods1); if (dial.ShowDialog() == true) { foreach (Клиенты i in r1) { if (i.ФИО == dial.klient) { clienID = i.КлиентID; } } foreach (СостояниеЗаказа itm in r2) { if (itm.Состояние == dial.sostoyanie) { sostID = itm.СостояниеID; } } foreach (ТранспортноеСредство item in r4) { if (item.Марка == dial.transport) { carID = item.ТрСредствоID; } } foreach (Водители it in r3) { if (it.ФИО == dial.vodila) { driverID = it.ВодительID; } } int zakazID = 0; if (dial.DataDostavki == "") { Заказы addZakaz = new Заказы { СрокПоставки = DateTime.Parse(dial.SrokPostavki), ДатаЗаказа = DateTime.Parse(dial.DataZakaza), КлиентID = clienID, МестоНазначения = dial.mestoNaznachenia, СостояниеID = sostID, ТрСредствоID = carID, ВодительID = driverID }; context1.Заказы.Add(addZakaz); context1.SaveChanges(); zakazID = addZakaz.ЗаказID; } else { Заказы addZakaz = new Заказы { СрокПоставки = DateTime.Parse(dial.SrokPostavki), ДатаЗаказа = DateTime.Parse(dial.DataZakaza), КлиентID = clienID, МестоНазначения = dial.mestoNaznachenia, СостояниеID = sostID, ДатаДоставки = DateTime.Parse(dial.DataDostavki), ТрСредствоID = carID, ВодительID = driverID }; context1.Заказы.Add(addZakaz); context1.SaveChanges(); zakazID = addZakaz.ЗаказID; } hTable = dial.l; int mass = 1; decimal rascenka = 1; int kodID = 0; int kolichestvoTovara = 0; foreach (DictionaryEntry i in hTable) { foreach (СкладТоваров item in r5) { if (item.Наименование == (string)i.Key) { kodID = item.КодТовара; kolichestvoTovara = int.Parse(i.Value.ToString()); } } СкладТоваров deletFromSklad = context1.СкладТоваров.Find(kodID); deletFromSklad.Остаток = deletFromSklad.Остаток - kolichestvoTovara; if (deletFromSklad == null || deletFromSklad.Остаток < 0) { MessageBox.Show("Ошибка по складу товаров!", "Внимание!", MessageBoxButton.OK, MessageBoxImage.Error); deletFromSklad.Остаток = deletFromSklad.Остаток + kolichestvoTovara; endOperationOK = false; Заказы delZakaz = context1.Заказы.Find(zakazID); context1.Заказы.Remove(delZakaz); context1.SaveChanges(); break; } else { ЗаказаноТоваров addTovari = new ЗаказаноТоваров { ЗаказID = zakazID, КодТовара = kodID, асценкаТоннЗаКм = rascenka, Количество = kolichestvoTovara, Масса = mass }; context1.ЗаказаноТоваров.Add(addTovari); context1.SaveChanges(); endOperationOK = true; } } if (endOperationOK == true) { var success = context1.Заказы; dg2.Items.Clear(); foreach (Заказы item in success) { dg2.Items.Add(item); } MessageBox.Show("Заказ успешно добавлен", "Успех!", MessageBoxButton.OK, MessageBoxImage.Information); } } }