예제 #1
0
        public async Task <IActionResult> UpdateUserLocation([FromBody] LocationViewModel location)
        {
            string id = User.FindFirst(JwtRegisteredClaimNames.Jti).Value;

            if (!Guid.TryParse(id, out Guid userGuid))
            {
                return(BadRequest(new ErrorResponseFormat(Constants.Errors.USER_NOT_FOUND)));
            }

            var validator           = new LocationViewModelValidator();
            ValidationResult result = validator.Validate(location);

            if (!result.IsValid)
            {
                return(BadRequest(new ErrorResponseFormat(result.Errors.First().ErrorMessage)));
            }

            bool isEdited = await _accountService.UpdateUserLocationAsync(userGuid, _mapper.Map <LocationModel>(location));

            if (!isEdited)
            {
                return(BadRequest(new ErrorResponseFormat(Constants.Errors.USER_NOT_FOUND)));
            }

            return(NoContent());
        }
예제 #2
0
        public async Task <IActionResult> UpdateEventLocation(Guid eventId, [FromBody] LocationViewModel location)
        {
            var validator           = new LocationViewModelValidator();
            ValidationResult result = validator.Validate(location);

            if (!result.IsValid)
            {
                return(BadRequest(new ErrorResponseFormat(result.Errors.First().ErrorMessage)));
            }

            if (eventId == null || await _service.GetEventAsync(eventId) == null)
            {
                return(BadRequest(new ErrorResponseFormat(Constants.Errors.EVENT_NOT_FOUND)));
            }

            bool isEdited = await _service.UpdateEventLocationAsync(eventId, _mapper.Map <LocationModel>(location));

            if (!isEdited)
            {
                return(BadRequest(new ErrorResponseFormat(Constants.Errors.EVENT_NOT_FOUND)));
            }

            return(NoContent());
        }