Example #1
0
        private void Button_Click_1(object sender, RoutedEventArgs e) // Кнопка "Добавить доставку к заказу"
        {
            if (delivery_type.SelectedItem != null)                   // Если выбран тип доставки
            {
                using (ADOmodel db = new ADOmodel(conString))
                {
                    int id_deliv = db.Deliveries.Select(d => d.id_Delivery).Max() + 1;  // Создаем id будущей доставки

                    Delivery new_deliv = new Delivery()
                    {
                        id_Delivery = id_deliv, id_Type = devType_id, Cost = devCost
                    };                                                                     // Создаем новую доставку
                    db.Deliveries.Add(new_deliv);                                          // Добавляем в БД
                    db.SaveChanges();                                                      // Сохраняем изменения в БД

                    var Order = db.Orders.Where(i => i.id_Order == o_id).FirstOrDefault(); // Считываем данные заказа
                    Order.id_Delivery = id_deliv;                                          // И добавляем ему доставку
                    db.SaveChanges();                                                      // Сохраняем изменения в БД

                    MessageBox.Show("Доставка добавлена!", "Добавление доставки", MessageBoxButton.OK, MessageBoxImage.Information);
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show("Выберите тип доставки!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                int disc     = Convert.ToInt32(discount.Text);
                int amnt_prs = Convert.ToInt32(amount_purshases.Text);
                if (disc == 3 && amnt_prs < 50000 || disc == 5 && amnt_prs >= 50000 && amnt_prs < 150000 || disc == 10 && amnt_prs >= 150000)
                {
                    using (ADOmodel db = new ADOmodel(conString))
                    {
                        var NewCard = new Loyality_card()
                        {
                            Loyality_discount = disc, Amount_purshases = amnt_prs
                        };
                        db.Loyality_card.Add(NewCard);
                        db.SaveChanges();

                        MessageBox.Show("Карта успешно создана!\nid новой карты: " + db.Loyality_card.Max(lc => lc.id_Loyality_card).ToString(), "Создание карты", MessageBoxButton.OK, MessageBoxImage.Information);
                        this.Close();
                    }
                }
                else
                {
                    MessageBox.Show("Некорректные данные!\nРазмер скидки и сумма покупок должны соответстоввать бизнес-правилам!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Корректно заполните поля!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
Example #3
0
        private void item_btn_Click(object sender, RoutedEventArgs e)
        {
            string name  = item_Name.Text;
            string units = item_units.Text;
            string url   = item_photo.Text;
            string type  = item_type.Text;

            try
            {
                int guarantee = Convert.ToInt32(item_guarantee.Text);
                int price     = Convert.ToInt32(item_price.Text);

                using (ADOmodel db = new ADOmodel(conString))
                {
                    var Item = db.Items.Where(i => i.id_Item == id).FirstOrDefault();

                    if (name != "")
                    {
                        Item.Name = name;
                    }
                    if (units != "")
                    {
                        Item.Untits = units;
                    }
                    if (url != "")
                    {
                        Item.Photo = url;
                    }
                    if (type != "")
                    {
                        Item.id_Type = db.Item_type.Where(it => it.Type_name.Equals(type)).Select(it => it.id_Type).FirstOrDefault();
                    }
                    if (guarantee > 0)
                    {
                        Item.Guarantee = guarantee;
                    }
                    if (price > 0)
                    {
                        Item.Price = price;
                    }

                    db.SaveChanges();
                    MessageBox.Show("Данные успешно изменены!", "Изменение", MessageBoxButton.OK, MessageBoxImage.Information);
                    this.Close();
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Корректно заполните поля!\n(Поля Гарантия и Цена должны быть заполнены, либо 0 либо новым значением!)", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            }
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            string name  = item_Name.Text;
            string units = item_units.Text;
            string url   = item_photo.Text;
            string type  = item_type.Text;

            try
            {
                int guarantee = Convert.ToInt32(item_guarantee.Text);
                int price     = Convert.ToInt32(item_price.Text);

                if (name != "" && units != "" && url != "" && price > 0 && type != null)
                {
                    using (ADOmodel db = new ADOmodel(conString))
                    {
                        int typeId = db.Item_type.Where(it => it.Type_name.Equals(type)).Select(it => it.id_Type).FirstOrDefault();

                        if (guarantee == 0)
                        {
                            Item new_item = new Item()
                            {
                                id_Type = typeId, Name = name, Photo = url, Untits = units, Price = price
                            };
                            db.Items.Add(new_item);
                        }
                        else
                        {
                            Item new_item = new Item()
                            {
                                id_Type = typeId, Name = name, Photo = url, Untits = units, Price = price, Guarantee = guarantee
                            };
                            db.Items.Add(new_item);
                        }

                        db.SaveChanges();
                        MessageBox.Show("Товар успешно добавлен!", "Добавление товара", MessageBoxButton.OK, MessageBoxImage.Information);
                        this.Close();
                    }
                }
                else
                {
                    MessageBox.Show("Корректно заполните обязательные поля!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Корректно заполните обязательные поля!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            }
        }
Example #5
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            string name       = empl_Name.Text;
            string surname    = empl_Surname.Text;
            string patronymic = empl_Patronymic.Text;
            var    pos        = empl_Position.SelectedIndex;
            var    role       = empl_Role.SelectedIndex;
            string log        = empl_login.Text;
            string pas        = empl_password.Text;

            if (name != "" && surname != "" && log != "" && pas != "" && pos != -1 && role != -1)
            {
                using (ADOmodel db = new ADOmodel(conString))
                {
                    if (patronymic == "")
                    {
                        var NewEmpl = new Employee()
                        {
                            Name = name, Surname = surname, Login = log, Password = pas, id_Position = pos + 1, id_Role = role + 1
                        };
                        db.Employees.Add(NewEmpl);
                    }
                    else
                    {
                        var NewEmpl = new Employee()
                        {
                            Name = name, Surname = surname, Patronymic = patronymic, Login = log, Password = pas, id_Position = pos + 1, id_Role = role + 1
                        };
                        db.Employees.Add(NewEmpl);
                    }

                    db.SaveChanges();
                    MessageBox.Show("Сотрудник успешно создан!", "Регистрация нового сотрудника", MessageBoxButton.OK, MessageBoxImage.Information);
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show("Заполните обязательные поля!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
        private void change_btn_Click(object sender, RoutedEventArgs e)
        {
            AdminPage main       = this.Owner as AdminPage;
            string    name       = empl_Name.Text;
            string    surname    = empl_Surname.Text;
            string    patronymic = empl_Patronymic.Text;
            var       pos        = empl_Position.SelectedIndex;
            var       role       = empl_Role.SelectedIndex;
            string    log        = empl_Log.Text;
            string    pas        = empl_Password.Text;

            using (ADOmodel db = new ADOmodel(conString))
            {
                try
                {
                    var employee = db.Employees.Where(em => em.id_Employee == id).FirstOrDefault();

                    if (name != "")
                    {
                        employee.Name = name;
                    }
                    if (surname != "")
                    {
                        employee.Surname = surname;
                    }
                    if (patronymic != "")
                    {
                        employee.Patronymic = patronymic;
                    }
                    if (pos != -1)
                    {
                        employee.id_Position = pos + 1;
                    }
                    if (role != -1)
                    {
                        employee.id_Role = role + 1;
                    }
                    if (log != "")
                    {
                        employee.Login = log;
                    }
                    if (pas != "")
                    {
                        employee.Password = pas;
                    }

                    db.SaveChanges();
                    MessageBox.Show("Данные успешно изменены!", "Изменение", MessageBoxButton.OK, MessageBoxImage.Information);
                    if (idCurrentEmpl == id && log != "" || idCurrentEmpl == id && pas != "")
                    {
                        MessageBox.Show("Необходимо произвести вход с помощью новых данных.", "Изменение", MessageBoxButton.OK, MessageBoxImage.Information);
                        this.Close();
                        MainWindow mw = new MainWindow();
                        mw.Show();
                        main.Close();
                    }
                    else
                    {
                        this.Close();
                    }
                }
                catch (System.Data.Entity.Infrastructure.DbUpdateException)
                {
                    MessageBox.Show("Ошибка. Попробуйте менять логин и пароль по очереди, а не одновременно.", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            string name       = Name.Text;
            string surname    = Surname.Text;
            string patronymic = Patronymic.Text;
            string phone      = Phone.Text;
            string country    = Country.Text;
            string city       = City.Text;
            string street     = Street.Text;
            string building   = Building.Text;
            string flat       = Flat.Text;

            if (name.Length != 0 && surname.Length != 0 && phone.Length == 11 && country.Length != 0 && city.Length != 0 && street.Length != 0 && building.Length != 0)
            {
                using (ADOmodel db = new ADOmodel(conString))
                {
                    Client_address new_address = new Client_address()
                    {
                        Country = country, City = city, Street = street, Building = building, Flat = flat
                    };                                                                                                                                       // Добавление адреса
                    db.Client_address.Add(new_address);
                    db.SaveChanges();

                    var           new_adr_id = db.Client_address.Select(p => p.id_Address).ToList().Last();
                    Loyality_card new_card   = null;
                    Client        new_client = null;

                    if (New_card.IsChecked == true)
                    {
                        new_card = new Loyality_card()
                        {
                            Loyality_discount = 3, Amount_purshases = 1
                        };                                                                              // Добавление новой карты
                        db.Loyality_card.Add(new_card);
                        db.SaveChanges();
                    }

                    var new_card_id = db.Loyality_card.Select(p => p.id_Loyality_card).ToList().Last();

                    if (new_card != null)    // Добавление нового клиента
                    {
                        new_client = new Client()
                        {
                            id_Address = new_adr_id, Name = name, Surname = surname, Patronymic = patronymic, Phone = phone, id_Loyality_card = new_card_id
                        };
                    }
                    else
                    {
                        new_client = new Client()
                        {
                            id_Address = new_adr_id, Name = name, Surname = surname, Patronymic = patronymic, Phone = phone
                        };
                    }

                    db.Clients.Add(new_client);
                    db.SaveChanges();

                    MessageBox.Show("Новый клиент добавлен!", "Добавление", MessageBoxButton.OK, MessageBoxImage.Information);
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show("Корректно заполните обязательные поля!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
        private void change_btn_Click(object sender, RoutedEventArgs e)
        {
            string name       = cl_name.Text;
            string surname    = cl_surname.Text;
            string patronymic = cl_patronymic.Text;
            string phone      = cl_phone.Text;
            string country    = cl_country.Text;
            string city       = cl_city.Text;
            string street     = cl_street.Text;
            string building   = cl_building.Text;
            string flat       = cl_flat.Text;
            string c_id       = cl_cardID.Text;
            bool   canChange  = true;

            using (ADOmodel db = new ADOmodel(conString))
            {
                var client         = db.Clients.Where(p => p.id_Client == id).FirstOrDefault();
                var client_address = db.Client_address.Where(p => p.id_Address == db.Clients.Where(c => c.id_Client == id).Select(c => c.id_Address).FirstOrDefault()).FirstOrDefault();

                if (name != "")
                {
                    client.Name = name;
                }
                if (surname != "")
                {
                    client.Surname = surname;
                }
                if (patronymic != "")
                {
                    client.Patronymic = patronymic;
                }

                if (phone != "" && phone.Length == 11)
                {
                    client.Phone = phone;
                }
                else if (phone != "" && phone.Length != 11)
                {
                    MessageBox.Show("Некорректный номер телефона!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
                    canChange = false;
                }

                if (country != "")
                {
                    client_address.Country = country;
                }
                if (city != "")
                {
                    client_address.City = city;
                }
                if (street != "")
                {
                    client_address.Street = street;
                }
                if (building != "")
                {
                    client_address.Building = building;
                }
                if (flat != "")
                {
                    client_address.Flat = flat;
                }

                if (c_id != "")
                {
                    try
                    {
                        int card_id    = Convert.ToInt32(c_id);
                        var CardExists = db.Loyality_card.Any(c => c.id_Loyality_card == card_id);

                        if (CardExists)
                        {
                            client.id_Loyality_card = card_id;
                        }
                        else
                        {
                            MessageBox.Show("Карты с таким идентификатором не существует!\nНеобходимо сначала создать карту.", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
                            canChange = false;
                        }
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Некорректный id карты!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
                        canChange = false;
                    }
                }

                if (canChange)
                {
                    db.SaveChanges();
                    MessageBox.Show("Данные успешно изменены!", "Изменение", MessageBoxButton.OK, MessageBoxImage.Information);
                    this.Close();
                }
            }
        }
        private void createOrder_btn_Click(object sender, RoutedEventArgs e)              // Кнопка оформления заказа
        {
            bool canSend = true;                                                          // Переменная для контроля корректности заполнения данных

            if (empl_position.SelectedItem == null || empl_fullName.SelectedItem == null) // Проверки на правильную заполненность полей
            {
                MessageBox.Show("Выберите сотрудника!", "Оформление заказа", MessageBoxButton.OK, MessageBoxImage.Warning);
                canSend = false;
            }
            if (new_order_list.Count() == 0 || list_for_print.Count() == 0)
            {
                MessageBox.Show("Нельзя оформить пустой заказ!", "Оформление заказа", MessageBoxButton.OK, MessageBoxImage.Warning);
                canSend = false;
            }
            if (new_order_list.Count() != list_for_print.Count())
            {
                MessageBox.Show("Ошибка в формировании списков заказа!", "Оформление заказа", MessageBoxButton.OK, MessageBoxImage.Warning);
                canSend = false;
            }
            if (item_certificate.Text == "")
            {
                MessageBox.Show("Поле 'Номинал' блока 'Сертификат' должно содержать значение!\n(0, 5000, 30000, 50000)", "Оформление заказа", MessageBoxButton.OK, MessageBoxImage.Warning);
                canSend = false;
            }
            if (delivery_cb.IsChecked == true && delivery_type.IsEnabled == true && delivery_select_btn.IsEnabled == true)
            {
                MessageBox.Show("Подтвердите тип доставки!", "Оформление заказа", MessageBoxButton.OK, MessageBoxImage.Warning);
                canSend = false;
            }

            if (canSend)     // Если все заполнено корректно, то начинаем отправлять данные в БД
            {
                using (ADOmodel db = new ADOmodel(conString))
                {
                    int id_cert  = 0;                                // Идентификатор нового сертификата
                    int id_deliv = 0;                                // Идентификатор новой доставки

                    if (Convert.ToInt32(item_certificate.Text) != 0) // Если был применен сертификат, то создаем запись о сертификате
                    {
                        id_cert = db.Certificates.Select(c => c.id_Certificate).Max() + 1;
                        int         certificateValue = Convert.ToInt32(item_certificate.Text);
                        Certificate new_certificate  = new Certificate()
                        {
                            id_Certificate = id_cert, Value = certificateValue
                        };
                        db.Certificates.Add(new_certificate);
                        db.SaveChanges();
                    }

                    if (delivery_cb.IsChecked == true)   // Если была выбрана доставка, то создаем запись по доставке
                    {
                        id_deliv = db.Deliveries.Select(d => d.id_Delivery).Max() + 1;
                        Delivery new_delivery = new Delivery()
                        {
                            id_Delivery = id_deliv, id_Type = devType_id, Cost = devCost
                        };
                        db.Deliveries.Add(new_delivery);
                        db.SaveChanges();
                    }

                    if (delivery_cb.IsChecked == false && devCost > 0 && delivery_select_btn.IsEnabled == false) // Если доставка была сначала выбрана и применена, но потом чекбокс доставки был снят
                    {
                        total_cost      -= devCost;                                                              // Убираем из стоимости заказа доставку
                        costWithDiscount = total_cost - (total_cost / 100 * discount);                           // И пересчитываем стоимость заказа с учетом КЛ
                    }

                    Orders new_order;

                    if (id_cert != 0 && id_deliv != 0)  // Формирование заказа с сертификатом и доставкой
                    {
                        new_order = new Orders()
                        {
                            id_Order       = or_id,
                            id_Client      = cl_id,
                            id_Employee    = em_id,
                            Date           = DateTime.Now,
                            Order_cost     = (decimal)costWithDiscount,
                            Discount       = discount,
                            id_Certificate = id_cert,
                            id_Delivery    = id_deliv
                        };
                        db.Orders.Add(new_order);
                    }
                    else if (id_cert == 0 && id_deliv != 0) // Формирование заказа без сертификата, но с доставкой
                    {
                        new_order = new Orders()
                        {
                            id_Order    = or_id,
                            id_Client   = cl_id,
                            id_Employee = em_id,
                            Date        = DateTime.Now,
                            Order_cost  = (decimal)costWithDiscount,
                            Discount    = discount,
                            id_Delivery = id_deliv
                        };
                        db.Orders.Add(new_order);
                    }
                    else if (id_cert != 0 && id_deliv == 0)  // Формирование заказа с сертификатом, но без доставки
                    {
                        new_order = new Orders()
                        {
                            id_Order       = or_id,
                            id_Client      = cl_id,
                            id_Employee    = em_id,
                            Date           = DateTime.Now,
                            Order_cost     = (decimal)costWithDiscount,
                            Discount       = discount,
                            id_Certificate = id_cert,
                        };
                        db.Orders.Add(new_order);
                    }
                    else // Формирование заказа без сертификата и без доставки
                    {
                        new_order = new Orders()
                        {
                            id_Order    = or_id,
                            id_Client   = cl_id,
                            id_Employee = em_id,
                            Date        = DateTime.Now,
                            Order_cost  = (decimal)costWithDiscount,
                            Discount    = discount,
                        };
                        db.Orders.Add(new_order);
                    }

                    foreach (var item in new_order_list) // Добавление товаров заказа в таблицу Item_list
                    {
                        int       il_id    = item.id_Item;
                        int       il_quant = item.Quantity;
                        Item_list il       = new Item_list()
                        {
                            id_Order = or_id,
                            id_Item  = il_id,
                            Quantity = il_quant
                        };
                        db.Item_list.Add(il);
                    }

                    db.SaveChanges();
                    MessageBox.Show("Заказ успешно добавлен!", "Оформление заказа", MessageBoxButton.OK, MessageBoxImage.Information);
                    this.Close();
                }
            }
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                int id = Convert.ToInt32(id_delete.Text);
                if (id > 0)
                {
                    using (ADOmodel db = new ADOmodel(conString))
                    {
                        if (mode == "client")   // Если форма удаления была вызвана из вкладки "Клиент"
                        {
                            var ClientExists = db.Clients.Any(p => p.id_Client == id);

                            if (ClientExists)
                            {
                                var Client        = db.Clients.Where(p => p.id_Client == id).FirstOrDefault();
                                var Client_adr_id = db.Client_address.Where(p => p.id_Address == db.Clients.Where(c => c.id_Client == id).Select(c => c.id_Address).FirstOrDefault()).FirstOrDefault();
                                var Client_lc     = db.Loyality_card.Where(lc => lc.id_Loyality_card == db.Clients.Where(p => p.id_Client == id).Select(p => p.id_Loyality_card).FirstOrDefault()).FirstOrDefault();

                                db.Clients.Remove(Client);
                                db.Client_address.Remove(Client_adr_id);
                                if (Client_lc != null)
                                {
                                    db.Loyality_card.Remove(Client_lc);
                                }
                                db.SaveChanges();

                                MessageBox.Show("Клиент удален!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                                this.Close();
                            }
                            else
                            {
                                MessageBox.Show("Клиент с таким id не найден!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                            }
                        }
                        else if (mode == "employee") // Если форма удаления была вызвана из вкладки "Сотрудники"
                        {
                            var EmployeeExists = db.Employees.Any(em => em.id_Employee == id);

                            if (EmployeeExists)
                            {
                                var Employee = db.Employees.Where(em => em.id_Employee == id).FirstOrDefault();
                                db.Employees.Remove(Employee);
                                db.SaveChanges();

                                MessageBox.Show("Сотрудник удален!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                                this.Close();
                            }
                            else
                            {
                                MessageBox.Show("Сотрудник с таким id не найден!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                            }
                        }
                        else if (mode == "item") // Если форма удаления была вызвана из вкладки "Товары"
                        {
                            var ItemExists = db.Items.Any(i => i.id_Item == id);
                            if (ItemExists)
                            {
                                var Item = db.Items.Where(i => i.id_Item == id).FirstOrDefault();
                                db.Items.Remove(Item);
                                db.SaveChanges();

                                MessageBox.Show("Товар удален!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                                this.Close();
                            }
                            else
                            {
                                MessageBox.Show("Товар с таким id не найден!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                            }
                        }
                        else if (mode == "order")                                                                             // Если форма удаления была вызвана из вкладки "Заказы"
                        {
                            var OrderExists = db.Orders.Any(i => i.id_Order == id);                                           // Проверка существования заказа с указанным id
                            if (OrderExists)                                                                                  // Если такой существует
                            {
                                var Order    = db.Orders.Where(i => i.id_Order == id).FirstOrDefault();                       // Считываем данные заказа
                                var Delivery = db.Deliveries.Where(d => d.id_Delivery == Order.id_Delivery).FirstOrDefault(); // И доставки

                                if (Order.id_Certificate != null)                                                             // Проверяем был ли применен сертификат, если да, то удаляем его
                                {
                                    var cert_id = db.Certificates.Where(c => c.id_Certificate == Order.id_Certificate).FirstOrDefault();
                                    db.Certificates.Remove(cert_id);
                                }
                                db.Orders.Remove(Order);    // Удаляем заказ
                                if (Delivery != null)
                                {
                                    db.Deliveries.Remove(Delivery);                                           // Если была доставка, то и её тоже
                                }
                                var items = db.Item_list.Where(il => il.id_Order == Order.id_Order).ToList(); // Находим все товары из заказа
                                for (int i = 0; i < items.Count(); i++)                                       // И удаляем их их таблицы учета Item_list
                                {
                                    db.Item_list.Remove(items[i]);
                                }

                                db.SaveChanges();

                                MessageBox.Show("Заказ удален!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                                this.Close();
                            }
                            else
                            {
                                MessageBox.Show("Заказ с таким id не найден!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                            }
                        }
                        else if (mode == "delivery")                                                           // Если форма удаления была вызвана из блока "Доставки"
                        {
                            var DeliveryExists = db.Deliveries.Any(d => d.id_Delivery == id);                  // Проверяем существование доставки с  указанным id
                            if (DeliveryExists)                                                                // Если такая существует
                            {
                                var Delivery = db.Deliveries.Where(d => d.id_Delivery == id).FirstOrDefault(); // выбираем её и заказ, которому она принадлежит
                                var Order    = db.Orders.Where(o => o.id_Delivery == id).FirstOrDefault();

                                db.Deliveries.Remove(Delivery); // Удаляем доставку
                                Order.id_Delivery = null;       // Убираем ее из заказа
                                db.SaveChanges();               // Сохраняем изменения в БД
                                MessageBox.Show("Доставки удалена!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
                                this.Close();
                            }
                            else
                            {
                                MessageBox.Show("Доставки с таким id не существует!", "Удаление", MessageBoxButton.OK, MessageBoxImage.Warning);
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Некорректный id!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Некорректный id!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }