Exemple #1
0
        public IHttpActionResult ExternalLogin(ExternalLoginDTO login)
        {
            try
            {
                if (login.Validacion == Direcciones.PassLoginExterno)
                {
                    if (login == null)
                    {
                        throw new HttpResponseException(HttpStatusCode.BadRequest);
                    }

                    BLUsuario blusuario = new BLUsuario();
                    SUsuario  usuario   = blusuario.externalLogin(new SUsuario()
                    {
                        Email = login.Email
                    });
                    if (usuario != null)
                    {
                        dynamic res = new ExpandoObject();
                        res.Token = TokenGenerator.GenerateTokenJwt(login.Email);;
                        res.Email = usuario.Email;
                        res.Rol   = usuario.Rol;
                        res.Id    = usuario.Id;
                        return(Ok(res));
                    }
                    throw new ECompartida("Esto no debería haber llegado a este punto");
                }
                throw new ECompartida("La clave de validación no es correcta");
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
        }