public async Task <AjaxResult> UpdateInfo(UserDetailInputDto userDetailDto) { Check.NotNull(userDetailDto, nameof(userDetailDto)); var(result, obj) = await _userCenterContract.UpdateUserDetailAsync(userDetailDto); if (result) { ServiceProvider.GetService <IOnlineUserCache>()?.Remove(User.Identity.Name); return(AjaxResult.CreateSuccess(obj)); } else { return(AjaxResult.CreateError(obj)); } }
public async Task <ValueTuple <bool, string> > UpdateUserDetailAsync(UserDetailInputDto userDetailDto) { var userDetail = await _userDetailRepository.GetAsync(userDetailDto.Id); if (userDetail == null) { return(false, "无法找到该用户的详细信息"); } var user = await _userRepository.GetAsync(userDetail.UserId); if (user == null) { return(false, "无法找到该用户"); } await _userDetailRepository.UnitOfWork.BeginOrUseTransactionAsync(); try { userDetail.Profile = userDetailDto.ToUserDetailJson(); _userDetailRepository.Update(userDetail); user.NickName = userDetailDto.NickName; user.PhoneNumber = userDetailDto.Telephone; await _userRepository.UpdateAsync(user); _userDetailRepository.UnitOfWork.Commit(); return(true, "更新成功"); } catch (Exception ex) { _userDetailRepository.UnitOfWork.Rollback(); var msg = $"更新用户:{user.UserName}信息失败:{ex.GetBaseException().Message}"; _logger.LogError(msg); return(false, msg); } }