123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Windows;
- using System.Windows.Controls;
- using Cafe.ElementsWindows;
- namespace Cafe.AddWindows
- {
- public partial class AddOrderWindow : Window
- {
- public AddOrderWindow()
- {
- InitializeComponent();
- DishesBox.ItemsSource = Connection.db.Dishes.Select(item => item.Name).ToList();
- TablesBox.ItemsSource = Connection.db.Tables.Select(item => item.ID).ToList();
- }
- private void DeliteDishClick(object sender, RoutedEventArgs e)
- {
- DishesList.Items.Remove((Dishes)DishesList.SelectedItem);
- }
- private void DishesListSelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- int idDish = Connection.db.Dishes.Where(item => item.ID == ((Dishes)DishesList.SelectedItem).ID).Select(item => item.ID).FirstOrDefault();
- DishWindow dishWindow = new DishWindow(idDish);
- dishWindow.Show();
- this.Close();
- }
- private void AddDishClick(object sender, RoutedEventArgs e)
- {
- if (DishesBox.SelectedItem == null)
- {
- ErrorWindow errorWindow = new ErrorWindow("не выбрано блюдо");
- errorWindow.Show();
- return;
- }
- Dishes dish = Connection.db.Dishes.Where(item => item.Name == DishesBox.SelectedItem.ToString()).FirstOrDefault();
- DishesList.Items.Add(dish);
- SumOfOrder.Content = Convert.ToString(Convert.ToDecimal(SumOfOrder.Content) + dish.Price);
- }
- private void ToOrderClick(object sender, RoutedEventArgs e)
- {
- if (DishesList.Items == null)
- {
- ErrorWindow errorWindow = new ErrorWindow("не выбрано ни одного блюда");
- errorWindow.Show();
- return;
- }
- if (TablesBox.SelectedItem == null)
- {
- ErrorWindow errorWindow = new ErrorWindow("не выбран столик");
- errorWindow.Show();
- return;
- }
- Exchange exchange = GetExchange();
- if (exchange is null)
- {
- ErrorWindow errorWindow = new ErrorWindow("сейчас нет смены");
- errorWindow.Show();
- return;
- }
- int idTable = Convert.ToInt32(TablesBox.SelectedItem.ToString());
- Orders order = new Orders()
- {
- IDEmployeeExchange = Connection.db.EmployeesExchanges.Where(item => item.IDExchange == exchange.ID && item.IDEmployee == User.IDUser).Select(item => item.ID).FirstOrDefault(),
- IDTable = Connection.db.Tables.Where(item => item.ID == idTable).Select(item => item.ID).FirstOrDefault(),
- Time = DateTime.Now,
- SumOfOrder = Convert.ToDecimal(SumOfOrder.Content),
- IsPaid = false,
- IsReady = false
- };
- Connection.db.Orders.Add(order);
- Connection.db.SaveChanges();
- int idOrder = Connection.db.Orders.Select(item => item.ID).ToList().Last();
- foreach (var item in DishesList.Items)
- {
- OrderDishes orderDishes = new OrderDishes()
- {
- IDOrder = idOrder,
- IDDish = ((Dishes)item).ID
- };
- Connection.db.OrderDishes.Add(orderDishes);
- Connection.db.SaveChanges();
- }
- MainWindow mainWindow = new MainWindow();
- mainWindow.Show();
- this.Close();
- }
- private Exchange GetExchange()
- {
- DateTime now = DateTime.Now;
- return Connection.db.Exchange.Where(item => item.Date == now.Date && item.TimeOfBegin <= now.TimeOfDay && item.TimeOfEnd >= now.TimeOfDay).FirstOrDefault();
- }
- private void BackButtonClick(object sender, RoutedEventArgs e)
- {
- MainWindow mainWindow = new MainWindow();
- mainWindow.Show();
- this.Close();
- }
- }
- }
|