public async Task <ActionResult <CoachResource> > PostCoach([FromBody] SaveCoachResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var coach  = _mapper.Map <SaveCoachResource, Coach>(resource);
            var result = await _coachService.SaveAsync(coach);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            var coachResource = _mapper.Map <Coach, CoachResource>(result.Coach);

            return(Ok(coachResource));
        }
        public async Task <IActionResult> PutCoach(int id, SaveCoachResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var coach  = _mapper.Map <SaveCoachResource, Coach>(resource);
            var result = await _coachService.UpdateAsync(id, coach);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            var coachResource = _mapper.Map <Coach, CoachResource>(result.Coach);

            return(Ok(coachResource));
        }