50 lines
2.4 KiB
Python
50 lines
2.4 KiB
Python
from django.urls import include, path
|
|
from rest_framework.routers import DefaultRouter
|
|
|
|
from .views import ComplaintAttachmentViewSet, ComplaintViewSet, InquiryViewSet
|
|
from . import ui_views
|
|
|
|
app_name = 'complaints'
|
|
|
|
router = DefaultRouter()
|
|
router.register(r'api/complaints', ComplaintViewSet, basename='complaint-api')
|
|
router.register(r'api/attachments', ComplaintAttachmentViewSet, basename='complaint-attachment-api')
|
|
router.register(r'api/inquiries', InquiryViewSet, basename='inquiry-api')
|
|
|
|
urlpatterns = [
|
|
# Complaints UI Views
|
|
path('', ui_views.complaint_list, name='complaint_list'),
|
|
path('new/', ui_views.complaint_create, name='complaint_create'),
|
|
path('<uuid:pk>/', ui_views.complaint_detail, name='complaint_detail'),
|
|
path('<uuid:pk>/assign/', ui_views.complaint_assign, name='complaint_assign'),
|
|
path('<uuid:pk>/change-status/', ui_views.complaint_change_status, name='complaint_change_status'),
|
|
path('<uuid:pk>/add-note/', ui_views.complaint_add_note, name='complaint_add_note'),
|
|
path('<uuid:pk>/escalate/', ui_views.complaint_escalate, name='complaint_escalate'),
|
|
|
|
# Export Views
|
|
path('export/csv/', ui_views.complaint_export_csv, name='complaint_export_csv'),
|
|
path('export/excel/', ui_views.complaint_export_excel, name='complaint_export_excel'),
|
|
|
|
# Bulk Actions
|
|
path('bulk/assign/', ui_views.complaint_bulk_assign, name='complaint_bulk_assign'),
|
|
path('bulk/status/', ui_views.complaint_bulk_status, name='complaint_bulk_status'),
|
|
path('bulk/escalate/', ui_views.complaint_bulk_escalate, name='complaint_bulk_escalate'),
|
|
|
|
# Inquiries UI Views
|
|
path('inquiries/', ui_views.inquiry_list, name='inquiry_list'),
|
|
path('inquiries/new/', ui_views.inquiry_create, name='inquiry_create'),
|
|
path('inquiries/<uuid:pk>/', ui_views.inquiry_detail, name='inquiry_detail'),
|
|
path('inquiries/<uuid:pk>/respond/', ui_views.inquiry_respond, name='inquiry_respond'),
|
|
|
|
# Analytics
|
|
path('analytics/', ui_views.complaints_analytics, name='complaints_analytics'),
|
|
|
|
# AJAX Helpers
|
|
path('ajax/departments/', ui_views.get_departments_by_hospital, name='get_departments_by_hospital'),
|
|
path('ajax/physicians/', ui_views.get_physicians_by_department, name='get_physicians_by_department'),
|
|
path('ajax/search-patients/', ui_views.search_patients, name='search_patients'),
|
|
|
|
# API Routes
|
|
path('', include(router.urls)),
|
|
]
|