コード例 #1
0
        public async Task <IActionResult> CreateUser(AdminRegisterUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = AutoMapper.Mapper.Map <Users>(model);

                var userResult = await _userRepository.GetByConditionAsync(x => x.UserName == model.UserName);

                var isPhoneNumberExist = await _userRepository.GetByConditionAsync(x => x.PhoneNumber == model.PhoneNumber);

                if (userResult == null)
                {
                    if (isPhoneNumberExist == null)
                    {
                        var resultCreatUser = await _userManager.CreateAsync(user, "liftbazar123");

                        // درصورتیکه کاربر مورد نظر با موفقیت ثبت شد آن را لاگین میکنیم
                        if (resultCreatUser.Succeeded)
                        {
                            TempData.AddResult(SweetAlertExtenstion.Ok());
                            return(RedirectToAction("Index", "UserManage"));
                        }
                        else
                        {
                            if (resultCreatUser.Errors.Any(a => a.Code.Contains("DuplicateEmail")))
                            {
                                ViewBag.ErrorMessages = "ایمیل وارد شده تکراری می باشد";
                            }

                            TempData.AddResult(SweetAlertExtenstion.Error("ایمیل وارد شده تکراری می باشد"));
                            return(View(model));
                        }
                    }
                    else
                    {
                        TempData.AddResult(SweetAlertExtenstion.Error("شماره تلفن وارد شده تکراری می باشد"));
                        return(View(model));
                    }
                }
                else
                {
                    TempData.AddResult(SweetAlertExtenstion.Error("چنین کاربری از قبل وجود دارد"));
                    return(View(model));
                }
            }

            var errorMessage = ModelState.ExpressionsMessages();

            TempData.AddResult(SweetAlertExtenstion.Error(errorMessage));
            return(View(model));
        }
コード例 #2
0
        public async Task <ActionResult <AdminRegisterUserViewModel> > Register([FromBody] AdminRegisterUserViewModel model)
        {
            // awating v3.0.2 to uncomment this
            if (!ModelState.IsValid)
            {
                NotifyModelStateErrors();
                return(ModelStateErrorResponseError());
            }

            await _userAppService.AdminRegister(model);

            model.ClearSensitiveData();
            return(ResponsePost("UserData", "Account", null, model));
        }
コード例 #3
0
        public Task <bool> AdminRegister(AdminRegisterUserViewModel model)
        {
            var registerCommand = _mapper.Map <RegisterNewUserCommand>(model);

            return(Bus.SendCommand(registerCommand));
        }