using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Windows; using System.Windows.Input; namespace Курсовой_проект_3._1.Windows { /// /// Логика взаимодействия для AddPlayerInTeamWindow.xaml /// public partial class AddPlayerInTeamWindow : Window { MyTeamContext _context; public AddPlayerInTeamWindow() { InitializeComponent(); _context = new MyTeamContext(); } private void Search_KeyDown(object sender, KeyEventArgs e) { SearchResultLB.ItemsSource = new List(); if (e.Key == Key.Enter) { List playerAppList = _context.PlayerApps.Where(u => DbFunctions.Like(u.Users.Nickname, "%" + SearchTBox.Text + "%") || DbFunctions.Like(u.Users.LName + " " + u.Users.FName + " " + u.Users.MName, "%" + SearchTBox.Text + "%")).ToList(); List playerItemList = new List(); foreach (PlayerApps app in playerAppList) { PlayerItem item = new PlayerItem(); item.Name = $"{app.Users.LName} {app.Users.FName} {app.Users.MName}"; item.Nickname = app.Users.Nickname; item.PhotoPath = app.Users.PhotoPath; item.CountryName = app.Users.Countries.Name; item.CountryIconPath = app.Users.Countries.IconPath; if (app.Users.Disciplines != null) item.DisciplineName = app.Users.Disciplines.Name; item.UserId = app.Users.Id; playerItemList.Add(item); } SearchResultLB.ItemsSource = playerItemList; } } private void SearchResultLB_MouseDoubleClick(object sender, MouseButtonEventArgs e) { if (SearchResultLB.SelectedItem != null) { PlayerItem selectedUser = (PlayerItem)SearchResultLB.SelectedItem; if (_context.TeamsUsers.Where(tu => tu.FK_User_Id == selectedUser.UserId && tu.DateEnd == null).Count() != 0) { MessageBox.Show("Игрок уже состоит в другой команде!"); return; } // создаем новую запись TeamsUsers newTeamUsersRow = new TeamsUsers(); newTeamUsersRow.FK_Team_Id = _context.Teams.Where(t => t.FK_Creater_Id == App.UserId).Select(t => t.Id).FirstOrDefault(); newTeamUsersRow.FK_User_Id = selectedUser.UserId; newTeamUsersRow.DateStart = DateTime.Now; newTeamUsersRow.DateEnd = null; _context.TeamsUsers.Add(newTeamUsersRow); _context.SaveChanges(); MessageBox.Show("Игрок добавлен в команду!"); } } } }