public async Task <IEnumerable <Matchh> > GetNearestMatch(int userId) //metoda pobiera najblizszy/najblizsze mecze { var matches = await GetAsyncMatchesFuture(userId); List <Matchh> matchh = matches.ToList(); // warunek - jezeli lista nie jest pusta, sa zaplanowane jakies mecze na przyszlosc if (matchh.Count != 0) { // przypisuje pierwszy obiekt z listy Matchh nearestMatch = matchh[0]; // przechodzi przez cala liste nie liczac pierwszego elementu for (int i = 1; i < matchh.Count(); i++) { //warunek - jezeli data jest wieksza to przypisuje ta mniejsza czyli blizsza czasu terazniejszego if (nearestMatch.MatchDate > matchh[i].MatchDate) { nearestMatch = matchh[i]; } } for (int i = 0; i < matchh.Count(); i++) { // warunek - jezeli znajduje sie jakas data bardziej na przyszlosc w liscie to ja usuwa, przez to ze moga byc np 2 mecze w tym samym czasie if (nearestMatch.MatchDate < matchh[i].MatchDate) { matchh.Remove(matchh[i]); i--; } } return(matchh); } return(null); }
public async Task <int> AddAsyncMatch(Matchh match, int userId) // metoda dodaje mecz do bazy { _context.Matches.Add(match); _context.SaveChanges(); await Task.CompletedTask; //zwraca matchId utworzonego meczu int matchId = match.Id; return(await Task.FromResult(matchId)); }
public async Task <int> CreateAsyncMatch(CreateMatch matchData, int userId) //metoda tworzaca nowy mecz { var user = await _authRepository.UserAccount(userId); //zera to wynik meczu zadeklarowane z gory var match = new Matchh(matchData.OpponentTeam, matchData.MatchDate, matchData.Place); match.user = user; int matchId = await _matchRepository.AddAsyncMatch(match, userId); return(matchId); }
public async Task DeleteAsyncMatch(Matchh match) // metoda usuwa mecz w bazie { _context.Matches.Remove(match); _context.SaveChanges(); await Task.CompletedTask; }
public async Task UpdateAsyncMatch(Matchh match) // metoda edytuje dane meczu w bazie { _context.Matches.Update(match); _context.SaveChanges(); await Task.CompletedTask; }