示例#1
0
        public async Task <IRepositoryActionResult> InsertUser(RegisterParameter registerParameter)
        {
            try
            {
                if (registerParameter == null)
                {
                    return(_repositoryActionResult.GetRepositoryActionResult(message: "Invalid Input Data", status: RepositoryActionStatus.Error));
                }
                var user = new ApplicationUser {
                    UserName = registerParameter.UserName, Email = registerParameter.Email, FirstName = registerParameter.FirstName, LastName = registerParameter.LastName, SecurityStamp = new Guid().ToString()
                };

                var result = await _userManager.CreateAsync(user, registerParameter.Password);

                if (result.Succeeded)
                {
                    await _userManager.AddToRoleAsync(user, "User");

                    return(_repositoryActionResult.GetRepositoryActionResult(user.UserName, status: RepositoryActionStatus.Ok, message: "Saved Successfully"));
                }
                return(_repositoryActionResult.GetRepositoryActionResult(status: RepositoryActionStatus.BadRequest, message: "Something went wrong"));
            }
            catch (Exception e)
            {
                return(_repositoryActionResult.GetRepositoryActionResult(exception: e, message: "Something went wrong", status: RepositoryActionStatus.Error));
            }
        }
示例#2
0
        public async Task <IActionResult> Register(RegisterParameter data)
        {
            var userName = data.UserName.ToLower();
            var user     = await repo.UserExists(userName, data.Cell);

            if (user != null)
            {
                if (user.UserName == userName)
                {
                    return(BadRequest("نام کاربری تکراری است."));
                }
                else if (user.Cell == data.Cell)
                {
                    return(BadRequest("شماره همراه تکراری است."));
                }
            }
            user = new User()
            {
                UserName = userName, Cell = data.Cell, Gender = data.Gender, Name = data.Name,
            };
            var createdUser = await repo.Register(user, data.Password);

            // return CreatedAtRoute();
            return(Ok(new AuthResult(user, GenerateJwtToken(user))));
        }
        public async Task <IRepositoryResult> Register(RegisterParameter parameter)
        {
            var repositoryResult = await _accountBusiness.InsertUser(parameter);

            var result = ResponseHandler.GetResult(repositoryResult);

            return(result);
        }
示例#4
0
        public async Task <IActionResult> Register(RegisterParameter data)
        {
            var userName = data.UserName.ToLower();

            if (await repo.UserExists(userName))
            {
                return(BadRequest("User name already exists."));
            }
            var user = new User()
            {
                UserName = userName
            };
            var createdUser = await repo.Register(user, data.Password);

            // return CreatedAtRoute();
            return(StatusCode(201));
        }
示例#5
0
        public async Task <IActionResult> Register(RegisterParameter registerData)
        {
            var user = new User()
            {
                UserName = registerData.UserName,
                Name     = registerData.Name,
                Email    = registerData.Email,
                Gender   = registerData.Gender
            };
            var result = await userManager.CreateAsync(user, registerData.Password);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors));
            }

            await signInManager.CheckPasswordSignInAsync(user, registerData.Password, false);

            return(Ok(new AuthResult(user, GenerateJwtToken(user))));
        }
示例#6
0
        public ServicesResult <UserInfoDto> Register(RegisterParameter parameter)
        {
            var userInfo = new UserInfo {
                UserName   = parameter.UserName,
                Password   = parameter.Password,
                CreateDate = DateTime.Now,
                IsValid    = true
            };

            var id = _userInfoRepository.Insert(userInfo);

            if (id > 0)
            {
                userInfo.Id = id;
                var userDto = Mapper.Map <UserInfoDto> (userInfo);

                return(Success(userDto));
            }

            return(Fail <UserInfoDto> ((int)ApiStatusCode.Account.RegisterFailed));
        }
示例#7
0
        public IActionResult Register([FromForm] RegisterParameter parameter)
        {
            ViewData["Nick"]    = parameter.Nick;
            ViewData["Mail"]    = parameter.Mail;
            ViewData["Pwd"]     = parameter.Password;
            ViewData["Code"]    = parameter.Code;
            ViewData["NickMsg"] = null;
            ViewData["MailMsg"] = null;
            ViewData["PwdMsg"]  = null;
            ViewData["CodeMsg"] = null;
            if (parameter.Nick.Length < 2 || parameter.Nick.Length > 20 || new Regex("[~#^$@%&!*()<>:;'\"{ }【】  ]").IsMatch(parameter.Nick))
            {
                ViewData["NickMsg"] = "长度2-20位,不含特殊符号";
                return(View());
            }
            if (UserServer.ExistNick(parameter.Nick, _usercontext))
            {
                ViewData["NickMsg"] = "该昵称已存在";
                return(View());
            }
            Regex r = new Regex("^\\s*([A-Za-z0-9_-]+(\\.\\w+)*@(\\w+\\.)+\\w{2,5})\\s*$");

            if (r.IsMatch(parameter.Mail))
            {
                if (UserServer.ExistUser(parameter.Mail, _usercontext))
                {
                    ViewData["MailMsg"] = "该邮箱已被使用";
                    return(View());
                }
            }
            else
            {
                ViewData["MailMsg"] = "邮箱格式不正确";
                return(View());
            }
            Regex rePwd = new Regex("^[0-9a-zA-Z]{6,20}$");

            if (!rePwd.IsMatch(parameter.Password))
            {
                ViewData["PwdMsg"] = "密码格式不正确";
                return(View());
            }
            if (!UserServer.CheckVerificationCode(parameter.Code, _usercontext))
            {
                ViewData["CodeMsg"] = "验证码不正确";
                return(View());
            }
            User user = _usercontext.Users.AsEnumerable().FirstOrDefault(u => u.Mail.Equals(parameter.Mail) && u.Birthday < new DateTime(2000, 1, 1));

            if (user != null)
            {
                user.Nick       = parameter.Nick;
                user.CreateDate = DateTime.Now;
                user.Password   = parameter.Password;
                _usercontext.Users.Update(user);
                _usercontext.SaveChanges();
            }
            else
            {
                return(View());
            }
            return(View("Login"));
        }