""" Physicians URL Configuration """ from django.urls import path from rest_framework.routers import DefaultRouter from . import api_views, import_views, ui_views, views app_name = "physicians" # API Router router = DefaultRouter() router.register(r"api/physicians", views.PhysicianViewSet, basename="physician") router.register(r"api/physicians/ratings", views.PhysicianMonthlyRatingViewSet, basename="physician-rating") # UI URL patterns urlpatterns = [ # Overview pages path("overview/specialization/", ui_views.specialization_overview, name="specialization_overview"), path("overview/department/", ui_views.department_overview, name="department_overview"), # Physician management path("", ui_views.physician_list, name="physician_list"), path("/", ui_views.physician_detail, name="physician_detail"), # Leaderboard path("leaderboard/", ui_views.leaderboard, name="leaderboard"), # Dashboard path("dashboard/", ui_views.physician_ratings_dashboard, name="physician_ratings_dashboard"), path("api/dashboard/", ui_views.physician_ratings_dashboard_api, name="physician_ratings_dashboard_api"), # Monthly Ratings path("ratings/", ui_views.ratings_list, name="ratings_list"), path("ratings/export/", ui_views.ratings_export, name="ratings_export"), # Individual Ratings & Import path("individual-ratings/", import_views.individual_ratings_list, name="individual_ratings_list"), # Doctor Rating Import (CSV Upload) path("import/", import_views.doctor_rating_import, name="doctor_rating_import"), path("import/review/", import_views.doctor_rating_review, name="doctor_rating_review"), path("import/jobs/", import_views.doctor_rating_job_list, name="doctor_rating_job_list"), path("import/jobs//", import_views.doctor_rating_job_status, name="doctor_rating_job_status"), # API Endpoints for Doctor Rating Import # Single rating import (authenticated) path("api/ratings/import/single/", api_views.import_single_rating, name="api_import_single_rating"), # Bulk rating import (authenticated, background processing) path("api/ratings/import/bulk/", api_views.import_bulk_ratings, name="api_import_bulk_ratings"), # Import job status path("api/ratings/import/jobs/", api_views.import_job_list, name="api_import_job_list"), path("api/ratings/import/jobs//", api_views.import_job_status, name="api_import_job_status"), # HIS-compatible endpoint (for direct HIS integration) path("api/ratings/his/", api_views.his_doctor_rating_handler, name="api_his_doctor_rating"), # Trigger monthly aggregation path("api/ratings/aggregate/", api_views.trigger_monthly_aggregation, name="api_trigger_aggregation"), # AJAX endpoints path("api/jobs//progress/", import_views.api_job_progress, name="api_job_progress"), path("api/match-doctor/", import_views.api_match_doctor, name="api_match_doctor"), ] # Add API routes urlpatterns += router.urls