from django.urls import path from rest_framework.routers import DefaultRouter from rest_framework_simplejwt.views import TokenRefreshView from . import views_return_prediction from .views import ( AdminAnalyticsAPIView, AdminChatsAPIView, UserViewSet, AddressViewSet, ProductViewSet, OrderViewSet, OrderDetailViewSet, RegisterAPIView, LoginAPIView, AdminLoginAPIView, CurrentUserAPIView, InferenceAPIView, Inference2APIView, ProcessExchangePickupAPIView, ProcessReturnPickupAPIView, ) router = DefaultRouter() router.register(r'users', UserViewSet, basename='user') router.register(r'addresses', AddressViewSet, basename='address') router.register(r'products', ProductViewSet, basename='product') router.register(r'orders', OrderViewSet, basename='order') router.register(r'order-details', OrderDetailViewSet, basename='orderdetail') urlpatterns = [ path('auth/register/', RegisterAPIView.as_view(), name='auth-register'), path('auth/login/', LoginAPIView.as_view(), name='auth-login'), path('auth/admin-login/', AdminLoginAPIView.as_view(), name='admin-login'), path('auth/user/', CurrentUserAPIView.as_view(), name='auth-user'), path('auth/token/refresh/', TokenRefreshView.as_view(), name='token-refresh'), path('inference/', InferenceAPIView.as_view(), name='inference'), path('inference2/', Inference2APIView.as_view(), name='inference2'), path('exchange/process-pickup/', ProcessExchangePickupAPIView.as_view(), name='process-exchange-pickup'), path('return/process-pickup/', ProcessReturnPickupAPIView.as_view(), name='process-return-pickup'), path('admin/analytics/', AdminAnalyticsAPIView.as_view(), name='admin-analytics'), path('admin/chats/', AdminChatsAPIView.as_view(), name='admin-chats'), path('products/most-likely-return/', views_return_prediction.most_likely_return, name='most_likely_return'), # Get detailed prediction for a specific product path('products//return-prediction/', views_return_prediction.product_return_prediction, name='product_return_prediction'), # Predict return probability for a new order before placing it path('orders/predict-return/', views_return_prediction.predict_return_for_new_order, name='predict_return_for_new_order'), ] # include router URLs urlpatterns += router.urls