Exemplo n.º 1
0
        public async Task <object> ForgotPassword([FromBody] ForgotPassworDTO model)
        {
            var responseModel = new ForgotPassworDTO();

            responseModel.EmailOrPhone = model.EmailOrPhone;

            if (Util.IsPhoneNumber(model.EmailOrPhone))
            {
                //var modelPhone = $"{model.EmailOrPhone}@hanoma.vn";
                var user = await _userManager.FindByNameAsync(model.EmailOrPhone);

                if (user == null)
                {
                    responseModel.ErrorCode = "ACC008";
                    responseModel.Message   = ConstMessage.GetMsgConst("ACC008");
                    return(responseModel);
                }

                var code = await _userManager.GenerateChangePhoneNumberTokenAsync(user, model.EmailOrPhone);
                await SendCode(Util.IsPhoneNumber(model.EmailOrPhone)? "Phone" : "Email", model.EmailOrPhone, code);

                responseModel.ErrorCode = "00";
                responseModel.Message   = "Đã gửi code xác nhận";
                return(responseModel);
            }
            else
            {
                var user = await _userManager.FindByNameAsync(model.EmailOrPhone);

                if (user == null)
                {
                    responseModel.ErrorCode = "ACC008";
                    responseModel.Message   = ConstMessage.GetMsgConst("ACC008");
                    return(responseModel);
                }
                var codeMail = await _userManager.GenerateChangePhoneNumberTokenAsync(user, model.EmailOrPhone);
                await SendCode(Util.IsPhoneNumber(model.EmailOrPhone)? "Phone" : "Email", model.EmailOrPhone, codeMail);

                //await _emailSender.SendEmailAsync(model.EmailOrPhone, "Mã xác thực lấy lại mật khẩu", $"Mã xác thực của bạn là:{codeMail}",_repositoryWrapper.AspNetUsers.setting());
                //Util.SendMail("",model.EmailOrPhone,"","Xác thực lấy lại mật khẩu",$"Mã xác thực của bạn là:{codeMail}",_repositoryWrapper.AspNetUsers.setting());
                responseModel.ErrorCode = "00";
                responseModel.Message   = "Đã gửi code xác nhận qua email";
                return(responseModel);
            }
        }