using System.Linq; using System.Windows; using System.Windows.Controls; using System.Windows.Input; using Cafe.ListWindows; namespace Cafe.ElementsWindows { public partial class ExchangeWindow : Window { Exchange exchange; public ExchangeWindow(int id) { exchange = Connection.db.Exchange.Where(item => item.ID == id).FirstOrDefault(); InitializeComponent(); EmployeesList.ItemsSource = Connection.db.EmployeesExchanges.Where(item => item.IDExchange == exchange.ID).ToList(); OrdersList.ItemsSource = Connection.db.Orders.Where(item => item.EmployeesExchanges.IDExchange == exchange.ID).ToList(); } private void OrdersListMouseDoubleClick(object sender, MouseButtonEventArgs e) { int id = ((Orders)OrdersList.SelectedItem).ID; OrderWindow orderWindow = new OrderWindow(id); orderWindow.Show(); this.Hide(); } private void OrdersListSearchPreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (OrdersListSearch.Text == "Поиск") OrdersListSearch.Text = ""; } private void OrdersListSearchLostFocus(object sender, RoutedEventArgs e) { if (OrdersListSearch.Text == "") OrdersListSearch.Text = "Поиск"; } private void OrdersListSearchTextChanged(object sender, TextChangedEventArgs e) { if (OrdersListSearch.Text != "" && OrdersListSearch.Text != "Поиск") { OrdersList.ItemsSource = Connection.db.Orders.Where(item => (item.IDTable + " " + item.EmployeesExchanges.Users.SecondName + " " + item.EmployeesExchanges.Users.FirstName + " " + item.EmployeesExchanges.Users.MiddleName + " " + item.Time + " " + item.SumOfOrder).Contains(OrdersListSearch.Text) && item.EmployeesExchanges.IDExchange == exchange.ID).ToList(); } else if (OrdersListSearch.Text == "" || OrdersListSearch.Text == "Поиск") { OrdersList.ItemsSource = Connection.db.Orders.Where(item => item.EmployeesExchanges.IDExchange == exchange.ID).ToList(); } } private void EmployeesListMouseDoubleClick(object sender, MouseButtonEventArgs e) { int id = Connection.db.EmployeesExchanges.Where(item => item.ID == ((EmployeesExchanges)EmployeesList.SelectedItem).ID).Select(item => item.IDEmployee).FirstOrDefault(); EmployeeWindow employeeWindow = new EmployeeWindow(id); employeeWindow.Show(); this.Hide(); } private void EmployeesListSearchPreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (EmployeesListSearch.Text == "Поиск") EmployeesListSearch.Text = ""; } private void EmployeesListSearchLostFocus(object sender, RoutedEventArgs e) { if (EmployeesListSearch.Text == "") EmployeesListSearch.Text = "Поиск"; } private void EmployeesListSearchTextChanged(object sender, TextChangedEventArgs e) { if (EmployeesListSearch.Text != "" && EmployeesListSearch.Text != "Поиск") { EmployeesList.ItemsSource = Connection.db.EmployeesExchanges.Where(item => (item.Users.Login + " " + item.Users.SecondName + " " + item.Users.FirstName + " " + item.Users.MiddleName + " " + item.Users.Email).Contains(EmployeesListSearch.Text) && item.IDExchange == exchange.ID).ToList(); } else if (EmployeesListSearch.Text == "" || EmployeesListSearch.Text == "Поиск") { EmployeesList.ItemsSource = Connection.db.EmployeesExchanges.Where(item => item.IDExchange == exchange.ID).ToList(); } } private void BackButtonClick(object sender, RoutedEventArgs e) { ExchangesListWindow exchangesListWindow = new ExchangesListWindow(); exchangesListWindow.Show(); this.Close(); } } }