public async Task <ActionResult> ChangePhoneNumber(String NewPhoneNumber, [Bind("NewPhoneNumber")] ChangePhoneNumberModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            AppUser userLoggedIn = await _userManager.FindByNameAsync(User.Identity.Name);

            userLoggedIn.PhoneNumber = NewPhoneNumber;
            _db.SaveChanges();

            IndexViewModel ivm = new IndexViewModel();

            //populate the view model
            ivm.Email       = userLoggedIn.Email;
            ivm.UserName    = userLoggedIn.UserName;
            ivm.HasPassword = true;
            ivm.UserID      = userLoggedIn.Id;
            ivm.FirstName   = userLoggedIn.FirstName;
            ivm.LastName    = userLoggedIn.LastName;
            ivm.PhoneNumber = userLoggedIn.PhoneNumber;
            ivm.Address     = userLoggedIn.StAddress + " , " + userLoggedIn.City + ", " + userLoggedIn.State + " " + userLoggedIn.ZipCode;


            return(View("Index", ivm));
        }
Ejemplo n.º 2
0
        public IActionResult ChangePhoneNumber([FromForm] ChangePhoneNumberModel model)
        {
            var userEmail = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Email).Value;

            _korisnikService.ChangePhoneNumber(userEmail, model);
            return(Ok("Broj telefon uspješno promijenjen!"));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> ChangePhoneNumber(ChangePhoneNumberModel model)
        {
            var member = await HttpContext.GetMemberAsync();

            if (HttpMethods.IsGet(Request.Method))
            {
                ModelState.Clear();
            }
            else if (HttpMethods.IsPost(Request.Method))
            {
                if (ModelState.IsValid)
                {
                    var result = await _userService.SetPhoneNumberAsync(member, model.NewPhoneNumber);

                    if (result.Succeeded)
                    {
                        TempData.AddAlert(AlertMode.Notify, AlertType.Success, $"Phone number was set to {_appSettings.FormatPhoneNumber(model.NewPhoneNumber)}.");
                    }
                    else
                    {
                        ModelState.AddIdentityResult(result);
                    }
                }
            }

            return(PartialView(model));
        }
        public Modeli.Korisnik ChangePhoneNumber(string userEmail, ChangePhoneNumberModel model)
        {
            var user = _context.Korisnici.FirstOrDefault(u => u.Email == userEmail);

            if (user == null)
            {
                throw new UserException("Korisnik nije pronađen!");
            }

            user.Telefon = model.PhoneNumber;

            _context.SaveChanges();
            return(_mapper.Map <Modeli.Korisnik>(user));
        }
Ejemplo n.º 5
0
        public ApiResult ChangePhoneNumber(string id, [FromBody] ChangePhoneNumberModel member)
        {
            Argument.ThrowIfNullOrEmpty(member.PhoneNumber, "旧手机");
            Argument.ThrowIfNullOrEmpty(member.SmsVerifyCode, "旧手机验证码");
            Argument.ThrowIfNullOrEmpty(member.NewPhoneNumber, "新手机");
            Argument.ThrowIfNullOrEmpty(member.NewSmsVerifyCode, "新手机验证码");

            if (!AuthorizedUser.Id.Equals(id, StringComparison.OrdinalIgnoreCase))
            {
                throw new WebApiInnerException("0001", "只允许修改自己手机");
            }

            if (!_smsService.VerifyCode(member.PhoneNumber, member.SmsVerifyCode, MemberCenterModule.Instance, SmsRequestType.ChangePhoneNumber.ToString()))
            {
                throw new WebApiInnerException("0002", "旧手机短信验证码验证失败");
            }

            if (!_smsService.VerifyCode(member.NewPhoneNumber, member.NewSmsVerifyCode, MemberCenterModule.Instance, SmsRequestType.ChangePhoneNumber.ToString()))
            {
                throw new WebApiInnerException("0003", "新手机短信验证码验证失败");
            }

            //判断是否已经存在此手机号
            var testUser = _userContainer.FindUser(member.NewPhoneNumber);

            if (testUser != null)
            {
                throw new WebApiInnerException("0004", "新手机已经注册,无法更改");
            }
            var user = _userManager.FindById(id);

            user.UserName    = member.NewPhoneNumber;
            user.PhoneNumber = member.NewPhoneNumber;

            var identityResult = _userManager.Update(user);

            if (identityResult.Succeeded)
            {
                //更新缓存
                _signals.Trigger(_userContainer.UserChangedSignalName);
                _signals.Trigger($"member_{AuthorizedUser.Id}_changed");
            }
            else
            {
                throw new WebApiInnerException("0005", "手机号修改失败");
            }
            var result = new ApiResult();

            return(result);
        }