public async Task <IActionResult> ApproveLesson([Required] int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (!_lessonService.IsLessonExists(id))
            {
                return(NotFound());
            }

            if (_lessonService.GetById(id).LessonStatusId == (int)LessonStatuses.Approved)
            {
                ModelState.AddModelError("LessonStatus", "Rezerwacja została już zatwierdzona.");
                return(BadRequest(ModelState));
            }
            if (_lessonService.GetById(id).CoachLesson.LessonStatusId == (int)LessonStatuses.Approved)
            {
                ModelState.AddModelError("LessonStatus", "Zajęcia mają już zatwierdzoną rezerwację.");
                return(BadRequest(ModelState));
            }

            try
            {
                await _lessonService.ApproveLessonAsync(id);
            }
            catch (Exception ex)
            {
                _logger.Error(ex, "Error during LessonStatus change");
                return(StatusCode((int)HttpStatusCode.InternalServerError));
            }

            return(StatusCode((int)HttpStatusCode.OK));
        }