/// <summary> /// 修改用户昵称和头像 /// </summary> /// <param name="userId"></param> /// <param name="nickName"></param> /// <param name="headPic"></param> /// <returns></returns> public async Task <OperationResult> EditUserInfo(int userId, string nickName, string headPic) { UserInfoRepo.UnitOfWork.TransactionEnabled = true; var info = UserInfoRepo.GetByKey(userId); info.HeadPic = headPic; await UserInfoRepo.UpdateAsync(info); var sys = info.SysUser; sys.NickName = nickName; var result = await SysUserRepo.UpdateAsync(sys); await UserInfoRepo.UnitOfWork.SaveChangesAsync(); return(new OperationResult(OperationResultType.Success, "修改成功")); }
/// <summary> /// 更改用户名 /// </summary> /// <param name="userName">原用户名</param> /// <param name="newUserName">新用户名</param> /// <param name="password">登录密码</param> /// <param name="validateCode">验证码</param> /// <returns>业务操作结果</returns> public async Task <OperationResult> ChangeUserName(string userName, string newUserName, string password, string validateCode) { userName.CheckNotNullOrEmpty("userName"); newUserName.CheckNotNullOrEmpty("newUserName"); validateCode.CheckNotNullOrEmpty("validateCode"); //验证码 var severCode = GetValidateCode(newUserName, CodeType.更换手机); if (severCode == null || severCode.Code != validateCode) { return(await Task.FromResult(new OperationResult(OperationResultType.ValidError, "验证码错误"))); } var sUser = await UserManager.FindByNameAsync(userName); if (sUser == null) { return(new OperationResult(OperationResultType.NoChanged, "用户不存在")); } if (!await UserManager.CheckPasswordAsync(sUser, password)) { return(new OperationResult(OperationResultType.ValidError, "登录密码错误", null)); } if (SysUserRepo.CheckExists(p => p.UserName == newUserName, sUser.Id)) { return(new OperationResult(OperationResultType.NoChanged, "该用户名已存在")); } sUser.UserName = userName; if (severCode.ValidateType == ValidateType.手机) { sUser.PhoneNumber = newUserName; sUser.UserName = newUserName; sUser.PhoneNumberConfirmed = true; } else { sUser.Email = newUserName; sUser.EmailConfirmed = true; } await SysUserRepo.UpdateAsync(sUser); return(new OperationResult(OperationResultType.Success, "更改成功")); }
/// <summary> /// 更改手机号 /// </summary> /// <param name="phoneNo">原手机号</param> /// <param name="newPhoneNo">新手机号</param> /// <param name="password">登录密码</param> /// <param name="validateCode">验证码</param> /// <returns>业务操作结果</returns> public async Task <OperationResult> ChangePhoneNo(string phoneNo, string newPhoneNo, string password, string validateCode) { phoneNo.CheckNotNullOrEmpty("phoneNo"); newPhoneNo.CheckNotNullOrEmpty("newPhoneNo"); validateCode.CheckNotNullOrEmpty("validateCode"); //验证码 var severCode = GetValidateCode(newPhoneNo, CodeType.更换手机); if (severCode != validateCode) { return(await Task.FromResult(new OperationResult(OperationResultType.ValidError, "验证码错误"))); } var sUser = await UserManager.FindByNameAsync(phoneNo); if (sUser == null) { return(new OperationResult(OperationResultType.NoChanged, "用户不存在")); } if (!await UserManager.CheckPasswordAsync(sUser, password)) { return(new OperationResult(OperationResultType.ValidError, "登录密码错误", null)); } if (SysUserRepo.CheckExists(p => p.UserName == newPhoneNo || p.PhoneNumber == newPhoneNo, sUser.Id)) { return(new OperationResult(OperationResultType.NoChanged, "该手机号已注册")); } sUser.UserName = newPhoneNo; sUser.PhoneNumber = newPhoneNo; await SysUserRepo.UpdateAsync(sUser); return(new OperationResult(OperationResultType.Success, "手机号更改成功")); }