Example #1
0
        public async Task <SmsSentMessages> UserRegisterationNotificationToTawjeehDepartment(string Number, string Email, string Password)
        {
            string msg = GetContent(GlobalEnum.SMSTempates.TawjeehDepartmentUserRegistration);

            msg = msg.Replace("[[LoginLink]]", BaseURL)
                  .Replace("[[UserName]]", Email)
                  .Replace("[[Password]]", Password);
            return(await _sms.Send(Number, msg));
        }
Example #2
0
        public IActionResult UpdateProfile(ApplicationUser model)
        {
            ApplicationUser US = new ApplicationUser();


            var UserOnDB = db.Users.Where(a => a.UserName == User.Identity.Name).FirstOrDefault();

            UserOnDB.Address           = model.Address;
            UserOnDB.City              = model.City;
            UserOnDB.Country           = model.Country;
            UserOnDB.Province          = model.Province;
            UserOnDB.IrCode            = model.IrCode;
            UserOnDB.PostalCode        = model.PostalCode;
            UserOnDB.PhoneNumber       = model.PhoneNumber;
            UserOnDB.ConformMobileCode = GetrandomCode();
            db.Users.Update(UserOnDB);

            db.SaveChanges();


            _sms.Send(model.PhoneNumber, GetrandomCode());

            return(RedirectToAction("index", "Profile"));
        }
Example #3
0
        public string GetValidateCode(DtoGetValidateCode model)//(string phoneNumber)
        {
            SetJsonHeader();

            if (ConfigHelper.GetAppSetting("smsCodeSenderInTestMode") == "1")
            {
                using (var result = new ResponseResult <object>())
                {
                    result.Entity = "9999";
                    return(JsonHelper.ToJsJson(result));
                }
            }

            var parameters = ModelHelper.GetPropertyDictionary <DtoGetValidateCode>(model);
            //检查手机验证码的发送状态
            var checkSendStateResultObject = PostStandardWithSameControllerAction <object>("Common", "CheckValidateCodeState", parameters);

            var responseResultObject = new ResponseResult <object>();

            //验证该手机上一次验证码发送状态结果
            switch (checkSendStateResultObject.State.Id)
            {
            case 1:
                //手机格式不正确
                responseResultObject.IsSuccess = false;
                responseResultObject.Message   = checkSendStateResultObject.Message;
                return(JsonHelper.ToJsJson(responseResultObject));

            //case 2:
            //    //验证码发送记录不存在

            //    break;
            case 3:
                //验证码未过期
                responseResultObject.IsSuccess = true;
                responseResultObject.Entity    = checkSendStateResultObject.Entity;
                return(JsonHelper.ToJsJson(responseResultObject));
                //case 4:
                //    //验证码已过期

                //    break;
                //case 5:
                //    //验证码发送记录保存失败
                //    break;
                //case 100:
                //    //验证码发送记录保存成功

                //    break;
            }

            //需要发送验证的几个状态(验证码发送记录不存在、验证码已过期)
            var needSendValidateCode = checkSendStateResultObject.State.Id == 2 ||
                                       checkSendStateResultObject.State.Id == 4;

            if (needSendValidateCode)
            {
                //生成随机验证码
                var randomValidateCode      = Rand.Number(4, true);
                var sendValidateCodeSuccess = _smsRepository.Send(model.phoneNumber, randomValidateCode);
                if (sendValidateCodeSuccess)
                {
                    //验证码发送成功,保存验证码发送记录到数据库
                    Dictionary <string, string> saveValidateCodeSendRecordParams = new Dictionary <string, string>()
                    {
                        { "phoneNumber", model.phoneNumber },
                        { "validateCode", randomValidateCode }
                    };

                    //保存状态结果,保存的成功和失败这里不做记录
                    var saveStateResult = PostStandardWithSameControllerAction <object>("Common", "SaveValidateCodeSendRecord", saveValidateCodeSendRecordParams);
                    responseResultObject.IsSuccess = true;
                    responseResultObject.Entity    = randomValidateCode;
                    return(JsonHelper.ToJsJson(responseResultObject));
                }
                else
                {
                    responseResultObject.IsSuccess = false;
                    responseResultObject.Message   = "短信获取失败!";
                    return(JsonHelper.ToJsJson(responseResultObject));
                }
            }

            return(JsonHelper.ToJsJson(responseResultObject));
        }