mirror of
https://github.com/inventree/InvenTree.git
synced 2025-04-29 20:16:44 +00:00
54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
from rest_framework import generics, permissions
|
|
|
|
from .models import ProjectCategory, Project, ProjectPart
|
|
from .serializers import ProjectSerializer
|
|
from .serializers import ProjectCategoryDetailSerializer
|
|
from .serializers import ProjectPartSerializer
|
|
|
|
|
|
class ProjectDetail(generics.RetrieveUpdateDestroyAPIView):
|
|
""" Project details
|
|
"""
|
|
|
|
queryset = Project.objects.all()
|
|
serializer_class = ProjectSerializer
|
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
|
|
|
|
|
class ProjectList(generics.ListCreateAPIView):
|
|
|
|
queryset = Project.objects.all()
|
|
serializer_class = ProjectSerializer
|
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
|
|
|
|
|
class NewProjectCategory(generics.CreateAPIView):
|
|
""" Create a new Project Category
|
|
"""
|
|
serializer_class = ProjectCategoryDetailSerializer
|
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
|
|
|
|
|
class ProjectCategoryDetail(generics.RetrieveUpdateAPIView):
|
|
|
|
queryset = ProjectCategory.objects.all()
|
|
serializer_class = ProjectCategoryDetailSerializer
|
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
|
|
|
|
|
class ProjectCategoryList(generics.ListCreateAPIView):
|
|
|
|
queryset = ProjectCategory.objects.filter(parent=None)
|
|
serializer_class = ProjectCategoryDetailSerializer
|
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
|
|
|
|
|
class ProjectPartsList(generics.ListCreateAPIView):
|
|
|
|
serializer_class = ProjectPartSerializer
|
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
|
|
|
def get_queryset(self):
|
|
project_id = self.kwargs['pk']
|
|
return ProjectPart.objects.filter(project=project_id)
|