public async Task <MessageReport> ForgotPass(UserForgotModel model) { var result = new MessageReport(false, "Có lỗi xảy ra"); try { //Kiểm tra tồn tại var existed = await GetByUsername(model.Email); if (existed == null) { result = new MessageReport(false, "Email này không tồn tại trong hệ thống"); return(await Task.FromResult(result)); } //Kiểm tra mã khớp if (existed.CodeReset != model.Code) { result = new MessageReport(false, "Mã xác nhận không khớp"); return(await Task.FromResult(result)); } //Cập nhật mật khẩu existed.CodeReset = ""; existed.PasswordSalat = Guid.NewGuid().ToString(); existed.Password = CryptoHelper.EncryptPass_User(model.NewPass, existed.PasswordSalat); //Sửa pass var query = new StringBuilder(); query.AppendLine("{"); query.AppendLine("'_id': { '$eq': '" + existed.Id + "' }"); query.AppendLine("}"); result = await _SY_UserRepository.Update(MongoHelper.ConvertQueryStringToDocument(query.ToString()), existed); if (result.isSuccess) { result.Message = "Reset mật khẩu thành công"; } } catch (Exception ex) { result = new MessageReport(false, ex.Message); } return(await Task.FromResult(result)); }
public async Task <MessageReport> CheckEmailExisted(UserForgotModel model) { var result = new MessageReport(false, "Có lỗi xảy ra"); try { // var existed = await GetByUsername(model.Email); if (existed == null) { result = new MessageReport(false, "Email này không tồn tại trong hệ thống"); return(await Task.FromResult(result)); } existed.CodeReset = FunctionHelper.GetRandomNumericCharacters(6); var query = new StringBuilder(); query.AppendLine("{"); query.AppendLine("'_id': { '$eq': '" + existed.Id + "' }"); query.AppendLine("}"); result = await _SY_UserRepository.Update(MongoHelper.ConvertQueryStringToDocument(query.ToString()), existed); if (result.isSuccess) { result.Message = "Gửi mã xác nhận vào email"; sendEmail(existed.Username, existed.CodeReset); } } catch (Exception ex) { result = new MessageReport(false, ex.Message); } return(await Task.FromResult(result)); }
public async Task <MessageReport> changePassword([FromBody] UserForgotModel model) { return(await _AuthService.ForgotPass(model)); }
public async Task <MessageReport> sendRequestChangePassword([FromBody] UserForgotModel model) { return(await _AuthService.CheckEmailExisted(model)); }
public Task <MessageReport> ForgotPass(UserForgotModel model) { throw new NotImplementedException(); }
public Task <MessageReport> CheckEmailExisted(UserForgotModel model) { throw new NotImplementedException(); }