1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

9856 user and circuits base

This commit is contained in:
Arthur
2023-08-24 14:54:24 -07:00
parent eceac90b1c
commit 700f015942
8 changed files with 199 additions and 84 deletions

View File

@ -1,41 +1,26 @@
import graphene
from typing import List
import strawberry
from circuits import models
from netbox.graphql.fields import ObjectField, ObjectListField
from .types import *
from utilities.graphql_optimizer import gql_query_optimizer
class CircuitsQuery(graphene.ObjectType):
circuit = ObjectField(CircuitType)
circuit_list = ObjectListField(CircuitType)
@strawberry.type
class CircuitsQuery:
circuit: CircuitType = strawberry.django.field()
circuit_list: List[CircuitType] = strawberry.django.field()
def resolve_circuit_list(root, info, **kwargs):
return gql_query_optimizer(models.Circuit.objects.all(), info)
circuit_termination: CircuitTerminationType = strawberry.django.field()
circuit_termination_list: List[CircuitTerminationType] = strawberry.django.field()
circuit_termination = ObjectField(CircuitTerminationType)
circuit_termination_list = ObjectListField(CircuitTerminationType)
circuit_type: CircuitTypeType = strawberry.django.field()
circuit_type_list: List[CircuitTypeType] = strawberry.django.field()
def resolve_circuit_termination_list(root, info, **kwargs):
return gql_query_optimizer(models.CircuitTermination.objects.all(), info)
provider: ProviderType = strawberry.django.field()
provider_list: List[ProviderType] = strawberry.django.field()
circuit_type = ObjectField(CircuitTypeType)
circuit_type_list = ObjectListField(CircuitTypeType)
provider_account: ProviderAccountType = strawberry.django.field()
provider_account_list: List[ProviderAccountType] = strawberry.django.field()
def resolve_circuit_type_list(root, info, **kwargs):
return gql_query_optimizer(models.CircuitType.objects.all(), info)
provider = ObjectField(ProviderType)
provider_list = ObjectListField(ProviderType)
def resolve_provider_list(root, info, **kwargs):
return gql_query_optimizer(models.Provider.objects.all(), info)
provider_account = ObjectField(ProviderAccountType)
provider_account_list = ObjectListField(ProviderAccountType)
provider_network = ObjectField(ProviderNetworkType)
provider_network_list = ObjectListField(ProviderNetworkType)
def resolve_provider_network_list(root, info, **kwargs):
return gql_query_optimizer(models.ProviderNetwork.objects.all(), info)
provider_network: ProviderNetworkType = strawberry.django.field()
provider_network_list: List[ProviderNetworkType] = strawberry.django.field()