from django.urls import include, path from rest_framework.routers import DefaultRouter from api.views import ( AnalysisExportView, AnalysisResultsView, AnalysisStatusView, AnalysisTaskView, ProjectViewSet, DataUploadView, GroupInfoView, ResultsSummaryView, ExportResultsView, ExportStatusView, SelectDataFileView, UpdateDataFileView, DeleteDataFileView, SaveRdsDataView ) from api.views.auth_views import UserInfoView # 创建路由器并注册视图集 router = DefaultRouter() router.register(r'projects', ProjectViewSet, basename='project') urlpatterns = [ # 认证相关接口 # path('token/validate/', TokenValidateView.as_view(), name='token-validate'), path('user/info/', UserInfoView.as_view(), name='user-info'), # 视图集路由 path('', include(router.urls)), # 数据上传和选择接口 path('projects//data/upload/', DataUploadView.as_view(), name='data-upload'), path('projects//data/group_info/', GroupInfoView.as_view(), name='group-info'), path('projects//data/save_rds/', SaveRdsDataView.as_view(), name='save-rds-data'), path('projects//data//select/', SelectDataFileView.as_view(), name='select-data-file'), path('projects//data//update/', UpdateDataFileView.as_view(), name='update-data-file'), path('projects//data//delete/', DeleteDataFileView.as_view(), name='delete-data-file'), # 统一分析接口 path('projects//analysis/status/', AnalysisStatusView.as_view(), name='analysis-status'), path('projects//analysis/', AnalysisTaskView.as_view(), name='analysis-task'), path('projects//analysis/results/', AnalysisResultsView.as_view(), name='analysis-results'), path('projects//analysis/export/', AnalysisExportView.as_view(), name='analysis-export'), # 兼容旧路由 path('projects//preprocessing/status/', AnalysisStatusView.as_view(), name='preprocessing-status'), path('projects//preprocessing/', AnalysisTaskView.as_view(), name='preprocessing-task'), path('projects//preprocessing/results/', AnalysisResultsView.as_view(), name='preprocessing-results'), path('projects//preprocessing/export/', AnalysisExportView.as_view(), name='preprocessing-export'), path('projects//meta-free/status/', AnalysisStatusView.as_view(), name='meta-free-status'), path('projects//meta-free/', AnalysisTaskView.as_view(), name='meta-free-task'), path('projects//meta-free/results/', AnalysisResultsView.as_view(), name='meta-free-results'), path('projects//meta-free/export/', AnalysisExportView.as_view(), name='meta-free-export'), path('projects//meta-based/status/', AnalysisStatusView.as_view(), name='meta-based-status'), path('projects//meta-based/', AnalysisTaskView.as_view(), name='meta-based-task'), path('projects//meta-based/results/', AnalysisResultsView.as_view(), name='meta-based-results'), path('projects//meta-based/export/', AnalysisExportView.as_view(), name='meta-based-export'), # 结果管理接口 path('projects//results/summary/', ResultsSummaryView.as_view(), name='results-summary'), path('projects//results/export/', ExportResultsView.as_view(), name='export-results'), path('projects//results/export//', ExportStatusView.as_view(), name='export-status'), ]