public async Task <ResponseModel> ResendCodeAsync(Guid userId) { var user = await _userRepository.GetByIdAsync(userId); if (user == null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.NotFound, Message = "User không tồn tại trong hệ thống. Vui lòng kiểm tra lại!" }); } else { var verifyCode = SMSHelper.GenerateVerifyNumber(); user.VerifyCode = verifyCode; await _userRepository.UpdateAsync(user); SMSHelper.SendMessage(verifyCode, user.Mobile); return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.OK, Message = "Đã gửi mã xác nhận tới số điện thoại đăng ký!" }); } }
public async Task <ResponseModel> RegisterAsync(UserRegisterModel userRegisterModel) { var user = await _userRepository.FetchFirstAsync(x => x.Mobile == userRegisterModel.Mobile); if (user != null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.BadRequest, Message = "Số điện thoại đã được đăng kí. Sử dụng chức năng quên mật khẩu để lấy lại!"// TODO: multi language }); } else { user = AutoMapper.Mapper.Map <User>(userRegisterModel); userRegisterModel.Password.GeneratePassword(out string saltKey, out string hashPass); user.Password = hashPass; user.PasswordSalt = saltKey; var verifyCode = SMSHelper.GenerateVerifyNumber(); user.VerifyCode = verifyCode; SMSHelper.SendMessage(verifyCode, user.Mobile); return(await _userRepository.InsertAsync(user)); } }