Example #1
0
        public async Task <ActionResult> RegistrarUsuario(RegistrarUsuarioDTO registrarUsuario)
        {
            if (!ModelState.IsValid)
            {
                return(CustomizarResponse(ModelState));
            }

            var user = new IdentityUser
            {
                UserName       = registrarUsuario.Email,
                Email          = registrarUsuario.Email,
                EmailConfirmed = true // Para nao mandar email de confirmacao para o usuario
            };

            var result = await _userManager.CreateAsync(user, registrarUsuario.Senha);

            if (result.Succeeded)
            {
                await _signInManager.SignInAsync(user, false); // Ja vai acessar com o usuario, mas nao vai guardar informacoes para o proximo acesso

                return(CustomizarResponse(await GerarToken(user.Email)));
            }

            foreach (var item in result.Errors)
            {
                NotificarErro(item.Description);
            }

            return(CustomizarResponse(registrarUsuario));
        }
Example #2
0
        public Usuario ValidateNullsParameter(Usuario usr, RegistrarUsuarioDTO usuarioEdited)
        {
            usr.Nombre   = usuarioEdited.Nombre != null ? usuarioEdited.Nombre : usr.Nombre;
            usr.Apellido = usuarioEdited.Apellido != null ? usuarioEdited.Apellido : usr.Apellido;
            usr.Dni      = usuarioEdited.Dni != null?int.Parse(usuarioEdited.Dni) : usr.Dni;

            usr.Email    = usuarioEdited.Email != null ? usuarioEdited.Email : usr.Email;
            usr.Password = usuarioEdited.Password != null ? usuarioEdited.Password : usr.Password;
            usr.Telefono = usuarioEdited.Telefono != null ? usuarioEdited.Telefono : usr.Telefono;

            return(usr);
        }
Example #3
0
 public IActionResult PostUsuario(RegistrarUsuarioDTO usuario)
 {
     try
     {
         Usuario usr = usuarioService.RegistrarUsuario(usuario);
         return(Ok(usr));
     }
     catch (ValidationException ve)
     {
         Console.WriteLine(ve);
         return(BadRequest(new ErrorResponse(StatusCodes.Status400BadRequest, ve.Message)));
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         const int code = StatusCodes.Status500InternalServerError;
         return(StatusCode(code, new ErrorResponse(code, e.Message)));
     }
 }
        public Usuario RegistrarUsuario(RegistrarUsuarioDTO usuarioARegistrar)
        {
            var origen = usuarioARegistrar.Origen.HasValue ? usuarioARegistrar.Origen.ToString() : OrigenUsuario.PORTAL.ToString();

            if (higoContext.Usuario.Any(x => x.Email.Equals(usuarioARegistrar.Email) && x.Origen.Equals(origen)))
            {
                throw new ValidationException("El E-mail ya se encuentra registrado anteriormente");
            }

            if (higoContext.Usuario.Any(x => x.Dni.Equals(long.Parse(usuarioARegistrar.Dni))))
            {
                throw new ValidationException("El DNI ya se encuentra registrado anteriormente");
            }

            validator.IsValidatedUser(usuarioARegistrar);

            var usr = new Usuario
            {
                Nombre    = usuarioARegistrar.Nombre,
                Apellido  = usuarioARegistrar.Apellido,
                Dni       = int.Parse(usuarioARegistrar.Dni),
                Email     = usuarioARegistrar.Email,
                Password  = usuarioARegistrar.Password,
                FechaAlta = DateTime.Now,
                IdPerfil  = 2, // TODO Revisar por qué carga el objeto PerfilNavigation al obtener id consultando Perfil por código.
                Origen    = origen,
                Telefono  = usuarioARegistrar.Telefono,

                Latitud   = usuarioARegistrar.Locacion?.Latitud,
                Longitud  = usuarioARegistrar.Locacion?.Longitud,
                Pais      = usuarioARegistrar.Locacion?.Pais,
                Provincia = usuarioARegistrar.Locacion?.Provincia,
                Partido   = usuarioARegistrar.Locacion?.Partido,
                Localidad = usuarioARegistrar.Locacion?.Localidad
            };

            higoContext.Usuario.Add(usr);
            higoContext.SaveChanges();

            return(usr);
        }
Example #5
0
 public void IsValidatedUser(RegistrarUsuarioDTO usr)
 {
     if (usr.Nombre == null || usr.Nombre == "")
     {
         throw new ValidationException("El Nombre es obligatorio");
     }
     if (usr.Apellido == null || usr.Apellido == "")
     {
         throw new ValidationException("El Apellido es obligatorio");
     }
     if (usr.Dni == null || usr.Dni == "")
     {
         throw new ValidationException("El Dni es obligatorio");
     }
     if (usr.Email == null || usr.Email == "")
     {
         throw new ValidationException("El Email es obligatorio");
     }
     if (usr.Password == null || usr.Password == "")
     {
         throw new ValidationException("El Password es obligatorio");
     }
 }
Example #6
0
        public IActionResult PutUsuario(int id, [FromBody] RegistrarUsuarioDTO usuarioEdited)
        {
            try
            {
                var usr = usuarioService.ObtenerUsuarioPorId(id);
                parametrosValidator.IsValidatedUser(usuarioEdited);
                var usuarioValidado = parametrosValidator.ValidateNullsParameter(usr, usuarioEdited);
                usuarioService.ActualizarUsuario(usuarioValidado);

                return(Ok(StatusCodes.Status201Created));
            }
            catch (ValidationException ve)
            {
                Console.WriteLine(ve);
                return(BadRequest(new ErrorResponse(StatusCodes.Status400BadRequest, ve.Message)));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                const int code = StatusCodes.Status500InternalServerError;
                return(StatusCode(code, new ErrorResponse(code, e.Message)));
            }
        }