public async Task <IActionResult> Coaches(CoachFilterViewModel model) { var coachFilter = new CoachFilter { Start = model.Start, Duration = model.Duration, Game = model.Game, Language = model.Language, }; await _trainingService.GetAvailableCoachesAsync(coachFilter); return(RedirectToAction("Coaches")); }
public Task <List <Coach> > GetAvailableCoachesAsync(CoachFilter filter, CancellationToken ct = default) { return(Set .Where(c => c.GameProfiles.FirstOrDefault(p => p.Game == filter.Game) != null) .Where(c => c.Languages.Contains(filter.Language)) .Where(c => c.IsScheduleIntervalAvailable( new ScheduleInterval() { Start = filter.Start, Duration = filter.Duration, })) .ToListAsync(cancellationToken: ct)); }
public async Task <List <Coach> > GetAvailableCoachesAsync(CoachFilter filter) { return(await _coachRepository.GetAvailableCoachesAsync(filter)); }
public Task <List <Coach> > GetAvailableCoachesAsync(CoachFilter filter, CancellationToken ct = default) { return(_coachRepository.GetAvailableCoachesAsync(filter, ct)); }