public IResponse Update(SchedulingRequestModel entity)
        {
            try
            {
                var token = Context.Request.Headers["Token"];

                if (!_authAppService.IsTokenValid(Guid.Parse(token)))
                {
                    return(new UnauthorizedResponseModel("Citezen not authenticated"));
                }

                var scheduling = _mapperAdapter.Map <SchedulingRequestModel, Scheduling>(entity);
                scheduling = _schedulingService.Update(scheduling);
                return(_mapperAdapter.Map <Scheduling, SchedulingOkResponseModel>(scheduling));
            }
            catch (NotFoundException ex)
            {
                return(new NotFoundResponseModel(ex.Message));
            }
            catch (ForbbidenException ex)
            {
                return(new ForbbidenResponseModel(ex.Message));
            }
            catch (InternalServerErrorException ex)
            {
                return(new InternoServerErrorResponseModel(ex.Message));
            }
        }
        public IActionResult Put([FromBody] SchedulingRequestModel scheduling)
        {
            if (scheduling.IsValid(ModelState))
            {
                var response = this._schedulingAppService.Update(scheduling);
                return(new ObjectResult(response)
                {
                    StatusCode = response.StatusCode()
                });
            }

            var validate   = ModelState.FirstOrDefault();
            var badRequest = new BadRequestResponse($"{validate.Value.Errors.FirstOrDefault().ErrorMessage}");

            return(new ObjectResult(badRequest)
            {
                StatusCode = badRequest.StatusCode()
            });
        }