38 lines
1.8 KiB
Python
38 lines
1.8 KiB
Python
"""
|
|
URL configuration for appointments app.
|
|
"""
|
|
|
|
from django.urls import path, include
|
|
from . import views
|
|
|
|
app_name = 'appointments'
|
|
|
|
urlpatterns = [
|
|
# Main views
|
|
path('', views.AppointmentDashboardView.as_view(), name='dashboard'),
|
|
path('list/', views.AppointmentListView.as_view(), name='appointment_list'),
|
|
path('create/', views.AppointmentRequestCreateView.as_view(), name='appointment_create'),
|
|
path('detail/<int:pk>/', views.AppointmentDetailView.as_view(), name='appointment_detail'),
|
|
path('calendar/', views.SchedulingCalendarView.as_view(), name='scheduling_calendar'),
|
|
path('queue/', views.QueueManagementView.as_view(), name='queue_management'),
|
|
path('telemedicine/', views.TelemedicineView.as_view(), name='telemedicine'),
|
|
|
|
# HTMX endpoints
|
|
path('search/', views.appointment_search, name='appointment_search'),
|
|
path('stats/', views.appointment_stats, name='appointment_stats'),
|
|
path('calendar/appointments/', views.calendar_appointments, name='calendar_appointments'),
|
|
path('slots/available/', views.available_slots, name='available_slots'),
|
|
path('queue/<int:queue_id>/status/', views.queue_status, name='queue_status'),
|
|
|
|
# Actions
|
|
path('check-in/<int:appointment_id>/', views.check_in_patient, name='check_in_patient'),
|
|
path('queue/<int:queue_id>/call-next/', views.call_next_patient, name='call_next_patient'),
|
|
path('telemedicine/<uuid:session_id>/start/', views.start_telemedicine_session, name='start_telemedicine_session'),
|
|
path('complete/<int:appointment_id>/', views.complete_appointment, name='complete_appointment'),
|
|
path('reschedule/<int:appointment_id>/', views.reschedule_appointment, name='reschedule_appointment'),
|
|
|
|
# API endpoints
|
|
# path('api/', include('appointments.api.urls')),
|
|
]
|
|
|