Пример #1
0
            public async Task <UserData> Handle(Ejected request, CancellationToken cancellationToken)
            {
                var user = await _userManager.FindByNameAsync(_userSession.GetUserSession());

                return(new UserData
                {
                    name = user.name,
                    last_name = user.las_name,
                    Username = user.UserName,
                    Token = _jwtGenerate.CreateToken(user),
                    Image = null,
                    Email = user.Email
                });
            }
Пример #2
0
            public async Task <UserData> Handle(Ejected request, CancellationToken cancellationToken)
            {
                var exist = await _rebStoreContext.Users.Where(x => x.Email == request.Email).AnyAsync();

                if (exist)
                {
                    throw new HandlerError(HttpStatusCode.BadRequest, new { mensaje = "El email ya esta Registrado" });
                }
                exist = await _rebStoreContext.Users.Where(x => x.UserName == request.username).AnyAsync();

                if (exist)
                {
                    throw new HandlerError(HttpStatusCode.BadRequest, "El nombre de ususario ya esta registrado");
                }

                var user = new User
                {
                    name     = request.name,
                    las_name = request.last_name,
                    Email    = request.Email,
                    UserName = request.username
                };
                var result = await _userManager.CreateAsync(user, request.Password);

                if (result.Succeeded)
                {
                    return(new UserData
                    {
                        name = user.name,
                        last_name = user.las_name,
                        Token = _jwtGenerate.CreateToken(user),
                        Username = user.UserName,
                        Email = user.Email
                    });
                }

                throw new HandlerError(HttpStatusCode.BadRequest);
            }
Пример #3
0
            public async Task <UserData> Handle(Ejected request, CancellationToken cancellationToken)
            {
                var usuario = await _userManager.FindByEmailAsync(request.Email);

                if (usuario == null)
                {
                    throw new HandlerError(HttpStatusCode.Unauthorized);
                }
                var result = await _signInManager.CheckPasswordSignInAsync(usuario, request.password, false);

                if (result.Succeeded)
                {
                    return(new UserData
                    {
                        name = usuario.name,
                        last_name = usuario.las_name,
                        Token = _jwtGenerate.CreateToken(usuario),
                        Email = usuario.Email,
                        Username = usuario.UserName,
                        Image = null
                    });
                }
                throw new HandlerError(HttpStatusCode.Unauthorized);
            }
Пример #4
0
        public async Task <ServiceResult> RegisterUser(RegisterViewModel model)
        {
            var response = new ServiceResult();

            if (string.IsNullOrEmpty(model.Nombre) || string.IsNullOrEmpty(model.Apellidos) ||
                string.IsNullOrEmpty(model.Email) || string.IsNullOrEmpty(model.Password) || string.IsNullOrEmpty(model.Username))
            {
                response.Successfull = false;
                response.Messages.Add("Los Campos son obligatorios");
                return(response);
            }

            var userExist = _context.Where <User>(x => x.Email == model.Email);

            if (userExist.Count() > 0)
            {
                response.Successfull = false;
                response.Messages.Add("Un usuario ya existe con este email");
                return(response);
            }
            var existUsername = _context.Where <User>(x => x.UserName == model.Username);

            if (existUsername.Count() > 0)
            {
                response.Successfull = false;
                response.Messages.Add("Un usuario ya existe con este username");
                return(response);
            }

            var user = new User
            {
                name     = model.Nombre,
                lastName = model.Apellidos,
                Email    = model.Email,
                UserName = model.Username
            };

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


            if (!result.Succeeded)
            {
                response.Successfull = false;
                foreach (var resu in result.Errors)
                {
                    response.Messages.Add(resu.Description);
                }
                return(response);
            }

            var userData = new UserViewModel
            {
                name     = user.name,
                lastName = user.lastName,
                Token    = _jwtGenerate.CreateToken(user),
                Username = user.UserName,
                Email    = user.Email
            };

            response.Successfull = true;
            response.Messages.Add("Usuario Registrado");
            response.Data = userData;

            return(response);
        }