public async Task <ApiResult> ModfiyPwdAsync(ModifyPwdInput modifyPwdInput)
        {
            if (modifyPwdInput.Id == 0)
            {
                modifyPwdInput.Id = _currentUserContext.Id;
            }
            if (!modifyPwdInput.ConfirmPassword.Equals(modifyPwdInput.NewPassword))
            {
                throw new ArgumentNullException("两次输入的密码不一致");
            }
            modifyPwdInput.OldPassword = Md5Crypt.Encrypt(modifyPwdInput.OldPassword);
            var model = await GetModelAsync(d => d.Id == modifyPwdInput.Id);

            if (model.Id <= 0)
            {
                throw new ArgumentNullException("用户信息为空");
            }
            if (model.Password == modifyPwdInput.OldPassword)
            {
                throw new ArgumentNullException("旧密码错误!");
            }
            modifyPwdInput.ConfirmPassword = Md5Crypt.Encrypt(modifyPwdInput.ConfirmPassword);
            var i = await UpdateAsync(d => new User()
            {
                Password = modifyPwdInput.ConfirmPassword
            }, d => d.Id == modifyPwdInput.Id);

            return(new ApiResult(i));
        }
示例#2
0
 public async Task <ApiResult> ModfiyPwd([FromBody] ModifyPwdInput modifyPwdInput)
 {
     return(await _userService.ModfiyPwdAsync(modifyPwdInput));
 }