示例#1
0
        public ActionResult <ResultVM <AppUserVM> > ForgotPassword(string EmailId)
        {
            var resultVM = new ResultVM <bool>();
            var result   = accountBusiness.GetUserByEmailId(EmailId);

            if (result.Success)
            {
                //string otp = string.Empty;
                //while (userBusiness.CheckIfOTPExists(otp)) { otp = Common.GenerateRandomOTP(); };
                //ResetPasswordModel resetPasswordModel = new ResetPasswordModel()
                //{
                //    UserId = result.Data.Id,
                //    EmailId = result.Data.EmailId,
                //    OTP = otp
                //};
                //userBusiness.SaveResetOTP(resetPasswordModel);

                string subject = "Reset Password";
                string body    = string.Format("Hi,< br />< br /> We got request for reset your account password.Please use below OTP to reset your password"

                                               );
                bool isSent = new Mailer()
                              .Subject(subject)
                              .Body(body)
                              .To(EmailId)
                              .Send();
                resultVM.Success = isSent;
                resultVM.Message = isSent ? Enums.ResetPasswordEmail : Enums.EmailError;
            }
            else
            {
                resultVM.Message = result.Message;
            }
            return(Ok(new { result = result }));
        }