This commit is contained in:
behruz-dev
2025-09-16 15:53:55 +05:00
parent 2481898dcd
commit ba52ae20d7
2 changed files with 17 additions and 0 deletions

View File

@@ -17,6 +17,7 @@ urlpatterns = [
path('change_folder/', project_views.ChangeProjectFolderApiView.as_view()), path('change_folder/', project_views.ChangeProjectFolderApiView.as_view()),
path('archive/<uuid:id>/', project_views.ArchiveProjectApiView.as_view()), path('archive/<uuid:id>/', project_views.ArchiveProjectApiView.as_view()),
path('<uuid:id>/un_archive/', project_views.UnArchiveProjectApiView.as_view()), path('<uuid:id>/un_archive/', project_views.UnArchiveProjectApiView.as_view()),
path('archived_list/', project_views.ArchivedProjectListApiView.as_view()),
] ]
)), )),
path('project_folder/', include( path('project_folder/', include(

View File

@@ -25,6 +25,22 @@ class ProjectListApiView(generics.ListAPIView):
.exclude(folder__isnull=False) .exclude(folder__isnull=False)
) )
class ArchivedProjectListApiView(generics.ListAPIView):
serializer_class = serializers.ProjectListSerializer
queryset = Project.objects.all()
permission_classes = [HasRolePermission]
required_permissions = ['project']
pagination_class = CustomPageNumberPagination
def get_queryset(self):
return (
Project.objects
.select_related('location')
.exclude(is_archive=False)
)
class ProjectDetailApiView(generics.RetrieveAPIView): class ProjectDetailApiView(generics.RetrieveAPIView):
serializer_class = serializers.ProjectDetailSerialzier serializer_class = serializers.ProjectDetailSerialzier
queryset = Project.objects.select_related('location', 'folder', 'builder').prefetch_related( queryset = Project.objects.select_related('location', 'folder', 'builder').prefetch_related(