public async Task <ResponseDTO> EditUser(User foundedUser, EditModeratorDTO editModeratorDTO) { if (editModeratorDTO.Password != null) { string password = BCrypt.Net.BCrypt.HashPassword(editModeratorDTO.Password); editModeratorDTO.Password = password; } context.Entry(foundedUser).CurrentValues.SetValues(editModeratorDTO); int count = await context.SaveChangesAsync(); if (count > 0) { cache.Set(foundedUser.Id, foundedUser, new MemoryCacheEntryOptions().SetAbsoluteExpiration(TimeSpan.FromMinutes(5))); } return(new ResponseDTO() { Message = "Информация пользователя изменена успешно", Status = true }); }
public async Task <IActionResult> EditModerator(Guid Id, [FromBody] EditModeratorDTO moderatorEditDTO) { try { if (!ModelState.IsValid) { return(BadRequest()); } Moderator foundedModerator = await moderatorsCrudService.CheckModeratorExist(Id); if (foundedModerator == null) { return(NotFound(new ResponseDTO() { Message = "Данный пользователь не найден", Status = false })); } ResponseDTO check = await moderatorsCrudService.EditModerator(foundedModerator, moderatorEditDTO); logger.LogInformation($"Модератор: {foundedModerator.Login}, был изменён Админом {moderatorEditDTO.AdminLogin}: {moderatorEditDTO.AdminId}"); return(Ok(new { check })); } catch (ObjectNotFoundException ex) { logger.LogError(ex.Message); return(StatusCode(404, new ResponseDTO() { Message = "Данный пользователь не найден", Status = false })); } catch (Exception ex) { logger.LogError(ex.Message); return(StatusCode(500, new ResponseDTO() { Status = false })); } }