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"));
        }
Example #2
0
 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));
 }
Example #3
0
 public async Task <List <Coach> > GetAvailableCoachesAsync(CoachFilter filter)
 {
     return(await _coachRepository.GetAvailableCoachesAsync(filter));
 }
Example #4
0
 public Task <List <Coach> > GetAvailableCoachesAsync(CoachFilter filter, CancellationToken ct = default)
 {
     return(_coachRepository.GetAvailableCoachesAsync(filter, ct));
 }