public void UpdatePersonalUserInfo(UserPersonalInfoDto user, string email) { try { var existing = _unitOfWork.Users.GetById(id: user.Id); if (existing == null) { throw new ArgumentException("User does not exists"); } if (existing.Email != email) { throw new ArgumentException("Operation not allowed"); } user.UpdateEntity(existing); _activityService.LogActivity(new Activity { UserId = existing.Id, Importance = ActivityImportance.Medium, Type = ActivityType.UserUpdate, Data = JsonConvert.SerializeObject(existing) }); _unitOfWork.Users.Update(existing); _unitOfWork.Save(); } catch (ArgumentException) { throw; } catch (Exception e) { _logger.LogError(e.Message); throw new Exception("Error while updating user info. Please try a bit later"); } }
public static void UpdateEntity(this UserPersonalInfoDto userDto, User user) { user.Address = userDto.Address; user.AlternativeEmail = userDto.AlternativeEmail; user.City = userDto.City; user.Country = userDto.Country; user.Facebook = userDto.Facebook; user.Twitter = userDto.Twitter; user.Instagram = userDto.Instagram; user.Vk = userDto.Vk; user.Skype = userDto.Skype; user.Phone = userDto.Phone; user.LastActivity = DateTimeOffset.UtcNow; }
public IActionResult UpdatePersonalUserInfo([FromBody] UserPersonalInfoDto userDto) { try { var email = User.Claims.SingleOrDefault(c => c.Type == "email")?.Value; if (string.IsNullOrEmpty(email)) { return(BadRequest("Authorization failed.")); } _accountService.UpdatePersonalUserInfo(userDto, email); return(Ok()); } catch (Exception e) { return(BadRequest(e.Message)); } }
async Task <IAccountSummaryDto> IUserGrain.SetUserPersonalInfo(UserPersonalInfoDto info) { throw new NotImplementedException(); }