Ejemplo n.º 1
0
        public override Task <ResgitrationResponse> RegisterUser(RegistrationRequest request, ServerCallContext context)
        {
            ResgitrationResponse respuesta = new ResgitrationResponse()
            {
                Response = false
            };
            Usuario usuario = new Usuario()
            {
                CorreoElectronico = request.Email,
                NombreDeUsuario   = request.Name,
                Contrasena        = ServiciosDeCifrado.EncriptarCadena(request.Password)
            };

            if (request.UserType == TipoDeUsuario.Artista.ToString())
            {
                usuario.UsuariosArtista = new UsuarioArtista()
                {
                    Descripcion = request.DescripcionDeArtista,
                    Nombre      = request.NombreDeArtista
                };
            }
            else if (request.UserType == TipoDeUsuario.Consumidor.ToString())
            {
                usuario.UsuariosConsumidor = new UsuarioConsumidor();
                usuario.UsuariosConsumidor.FechaDeFinalDeSuscripcion = DateTime.Now.AddDays(30);
            }
            if (usuario.Validar())
            {
                UsuarioDAO.GuardarUsuario(usuario);
                respuesta.Response = true;
            }
            return(Task.FromResult(respuesta));
        }
        public IActionResult RegistrarUsuario([FromBody] Artista usuario)
        {
            IActionResult result = ValidationProblem();
            var           clienteDeAutenticacion = new Authenticator.AuthenticatorClient(ServicioDeAutenticacion);

            try
            {
                if (usuario.TipoDeUsuario == TipoDeUsuario.Artista)
                {
                    RegistrationRequest registrationRequest = new RegistrationRequest
                    {
                        Name                 = usuario.NombreDeusuario,
                        Password             = usuario.Contrasena,
                        Email                = usuario.CorreoElectronico,
                        UserType             = usuario.TipoDeUsuario.ToString(),
                        NombreDeArtista      = usuario.Nombre,
                        DescripcionDeArtista = usuario.Descripcion
                    };
                    ResgitrationResponse respuesta = clienteDeAutenticacion.RegisterUser(registrationRequest);
                    if (respuesta.Response == true)
                    {
                        result = Ok();
                    }
                    else
                    {
                        result = ValidationProblem();
                    }
                }
                else if (usuario.TipoDeUsuario == TipoDeUsuario.Consumidor)
                {
                    RegistrationRequest registrationRequest = new RegistrationRequest
                    {
                        Name     = usuario.NombreDeusuario,
                        Password = usuario.Contrasena,
                        Email    = usuario.CorreoElectronico,
                        UserType = usuario.TipoDeUsuario.ToString()
                    };
                    ResgitrationResponse respuesta = clienteDeAutenticacion.RegisterUser(registrationRequest);
                    if (respuesta.Response == true)
                    {
                        result = Ok();
                    }
                    else
                    {
                        result = ValidationProblem();
                    }
                }
                else
                {
                    result = BadRequest();
                }
            }
            catch (RpcException e)
            {
                result = ValidationProblem();
            }
            catch (HttpRequestException e)
            {
                result = ValidationProblem();
            }
            return(result);
        }