diff --git a/api/data_workspace/case_views.py b/api/data_workspace/case_views.py index cba10bd4e..0e7a8225a 100644 --- a/api/data_workspace/case_views.py +++ b/api/data_workspace/case_views.py @@ -2,11 +2,12 @@ from rest_framework.pagination import LimitOffsetPagination from api.core.authentication import DataWorkspaceOnlyAuthentication -from api.cases.models import CaseAssignment, CaseAssignmentSla, CaseType, CaseQueue, EcjuQuery +from api.cases.models import CaseAssignment, CaseAssignmentSla, CaseType, CaseQueue, EcjuQuery, DepartmentSLA from api.cases.serializers import ( CaseAssignmentSlaSerializer, CaseTypeSerializer, CaseQueueSerializer, + CaseDepartmentSerializer, ) from api.data_workspace.serializers import ( EcjuQuerySerializer, @@ -42,6 +43,13 @@ class CaseQueueList(viewsets.ReadOnlyModelViewSet): queryset = CaseQueue.objects.all() +class CaseDepartmentList(viewsets.ReadOnlyModelViewSet): + authentication_classes = (DataWorkspaceOnlyAuthentication,) + serializer_class = CaseDepartmentSerializer + pagination_class = LimitOffsetPagination + queryset = DepartmentSLA.objects.all() + + class EcjuQueryList(viewsets.ReadOnlyModelViewSet): authentication_classes = (DataWorkspaceOnlyAuthentication,) serializer_class = EcjuQuerySerializer diff --git a/api/data_workspace/urls.py b/api/data_workspace/urls.py index 5335f7fb3..edc68fa3c 100644 --- a/api/data_workspace/urls.py +++ b/api/data_workspace/urls.py @@ -54,10 +54,12 @@ router_v1.register("parties", views.PartyListView, basename="dw-parties") router_v1.register("queues", views.QueueListView, basename="dw-queues") router_v1.register("teams", views.TeamListView, basename="dw-teams") +router_v1.register("departments", views.DepartmentListView, basename="dw-departments") router_v1.register("case-assignment", case_views.CaseAssignmentList, basename="dw-case-assignment") router_v1.register("case-assignment-slas", case_views.CaseAssignmentSlaList, basename="dw-case-assignment-sla") router_v1.register("case-types", case_views.CaseTypeList, basename="dw-case-type") router_v1.register("case-queues", case_views.CaseQueueList, basename="dw-case-queue") +router_v1.register("case-deparments-sla", case_views.CaseDepartmentList, basename="dw-case-deparments-sla") router_v1.register("ecju-queries", case_views.EcjuQueryList, basename="dw-ecju-query") router_v1.register( "external-data-denials", external_data_views.ExternalDataDenialView, basename="dw-external-data-denial" diff --git a/api/data_workspace/views.py b/api/data_workspace/views.py index 2de3acad8..b6d161f66 100644 --- a/api/data_workspace/views.py +++ b/api/data_workspace/views.py @@ -9,7 +9,7 @@ from api.queues.models import Queue from api.queues.serializers import QueueListSerializer from api.teams.models import Team -from api.teams.serializers import TeamReadOnlySerializer +from api.teams.serializers import TeamReadOnlySerializer, DepartmentSerializer class OrganisationListView(viewsets.ReadOnlyModelViewSet): @@ -38,3 +38,10 @@ class TeamListView(viewsets.ReadOnlyModelViewSet): serializer_class = TeamReadOnlySerializer pagination_class = LimitOffsetPagination queryset = Team.objects.all() + + +class DepartmentListView(viewsets.ReadOnlyModelViewSet): + authentication_classes = (DataWorkspaceOnlyAuthentication,) + serializer_class = DepartmentSerializer + pagination_class = LimitOffsetPagination + queryset = Team.objects.all()