- Added AIModelConfig model to manage AI model configurations in the database. - Created serializers and views for AI model configurations, enabling read-only access via REST API. - Implemented filtering capabilities for model type, provider, and default status in the API. - Seeded initial data for text and image models, including pricing and capabilities. - Updated Django Admin interface for managing AI models with enhanced features and bulk actions. - Added validation methods for model and image size checks. - Comprehensive migration created to establish the AIModelConfig model and seed initial data. - Documented implementation and validation results in summary and report files.
39 lines
1.6 KiB
Python
39 lines
1.6 KiB
Python
"""Billing routes including bank transfer confirmation and credit endpoints."""
|
|
from django.urls import path, include
|
|
from rest_framework.routers import DefaultRouter
|
|
from .views import (
|
|
BillingViewSet,
|
|
InvoiceViewSet,
|
|
PaymentViewSet,
|
|
CreditPackageViewSet,
|
|
AccountPaymentMethodViewSet,
|
|
get_usage_summary,
|
|
)
|
|
from igny8_core.modules.billing.views import (
|
|
CreditBalanceViewSet,
|
|
CreditUsageViewSet,
|
|
CreditTransactionViewSet,
|
|
AIModelConfigViewSet,
|
|
)
|
|
|
|
router = DefaultRouter()
|
|
router.register(r'admin', BillingViewSet, basename='billing-admin')
|
|
# Canonical credits endpoints (unified billing)
|
|
router.register(r'credits/balance', CreditBalanceViewSet, basename='credit-balance')
|
|
router.register(r'credits/usage', CreditUsageViewSet, basename='credit-usage')
|
|
router.register(r'credits/transactions', CreditTransactionViewSet, basename='credit-transactions')
|
|
# AI Models endpoint
|
|
router.register(r'ai/models', AIModelConfigViewSet, basename='ai-models')
|
|
# User-facing billing endpoints
|
|
router.register(r'invoices', InvoiceViewSet, basename='invoices')
|
|
router.register(r'payments', PaymentViewSet, basename='payments')
|
|
router.register(r'credit-packages', CreditPackageViewSet, basename='credit-packages')
|
|
router.register(r'payment-methods', AccountPaymentMethodViewSet, basename='payment-methods')
|
|
router.register(r'payment-configs', BillingViewSet, basename='payment-configs')
|
|
|
|
urlpatterns = [
|
|
path('', include(router.urls)),
|
|
# User-facing usage summary endpoint for plan limits
|
|
path('usage-summary/', get_usage_summary, name='usage-summary'),
|
|
]
|