Exemple #1
0
        public IActionResult PartiallyUpdateUser([FromRoute] Guid userId, [FromBody] JsonPatchDocument <UpdatedUserDto> pathcDoc)
        {
            if (userId == Guid.Empty)
            {
                return(NotFound());
            }
            if (pathcDoc == null || !TryValidateModel(pathcDoc))
            {
                return(BadRequest());
            }
            var user = userRepository.FindById(userId);

            if (user == null)
            {
                return(NotFound());
            }
            var updateUser = new UpdatedUserDto()
            {
                Id = userId
            };

            pathcDoc.ApplyTo(updateUser, ModelState);
            if (!ModelState.IsValid)
            {
                return(new UnprocessableEntityObjectResult(ModelState));
            }
            Mapper.Map(updateUser, user);
            userRepository.Update(user);
            return(NoContent() as ActionResult);
        }
Exemple #2
0
 public IActionResult UpdateUser([FromRoute] Guid userId, [FromBody] UpdatedUserDto user)
 {
     if (user == null || userId == Guid.Empty)
     {
         return(BadRequest());
     }
     if (!ModelState.IsValid)
     {
         return(new UnprocessableEntityObjectResult(ModelState));
     }
     user.Id = userId;
     userRepository.UpdateOrInsert(Mapper.Map <UserEntity>(user), out bool isInserted);
     return(isInserted ?
            CreatedAtRoute(nameof(GetUserById), new { userId = user.Id }, userId) :
            NoContent() as ActionResult);
 }
Exemple #3
0
        public async Task <IActionResult> UpdateUser([FromBody] UpdatedUserDto updatedUser)
        {
            try {
                if (updatedUser == null)
                {
                    return(StatusCode(400));
                }

                if (!ModelState.IsValid)
                {
                    return(new InvalidInputResponse(ModelState));
                }
                var asss = await _Mediator.Send(updatedUser);

                return(StatusCode(204));
            } catch (NotFoundException e) {
                return(StatusCode(404, e.Message));
            }
        }
        public async Task UpdateUser(UserUpdateDto userUpdateDto)
        {
            UserRoom newRoomId = _userRoomRepository.GetAll().FirstOrDefault(x => x.Location.Id == userUpdateDto.UserLocation.Location.Id &&
                                                                             x.RoomNumber == userUpdateDto.UserLocation.RoomNumber);

            if (newRoomId == null)
            {
                newRoomId = new UserRoom()
                {
                    LocationId = userUpdateDto.UserLocation.Location.Id, RoomNumber = userUpdateDto.UserLocation.RoomNumber
                };
                _userRoomRepository.Add(newRoomId);
                await _userRoomRepository.SaveChangesAsync();
            }

            var newUser = new UpdatedUserDto()
            {
                Id             = userUpdateDto.Id,
                FirstName      = userUpdateDto.FirstName,
                LastName       = userUpdateDto.LastName,
                BirthDate      = userUpdateDto.BirthDate,
                UserRoomId     = newRoomId.Id,
                IsEmailAllowed = userUpdateDto.IsEmailAllowed,
                FieldMasks     = userUpdateDto.FieldMasks,
                LocationHomeId = userUpdateDto.LocationHomeId
            };

            var user = _mapper.Map <User>(newUser);
            await _userRepository.Update(user, newUser.FieldMasks);

            var affectedRows = await _userRepository.SaveChangesAsync();

            if (affectedRows == 0)
            {
                throw new DbUpdateException();
            }
        }