Exemple #1
0
        public async Task <UserVM> PatchUser(string id, UserPatchVM vm)
        {
            var result = await _context.Users.SingleOrDefaultAsync(b => b.Id == id);

            result.PhoneNumber = vm.Phone;
            result.CityName    = vm.City;
            await _context.SaveChangesAsync();

            return(new UserVM(result));
        }
        public async Task <ActionResult <UserVM> > PatchUserById([FromBody] UserPatchVM patch, [FromRoute] string id)
        {
            var result = await _userRepository.GetUserById(id);

            var validationResult = await _userManager.CheckPasswordAsync(result, patch.Password);

            if (result == null)
            {
                return(BadRequest("User not found"));
            }
            else if (validationResult == false)
            {
                return(BadRequest("Wrong password"));
            }
            else
            {
                return(await _userRepository.PatchUser(id, patch));
            }
        }