Overhaul storefront URL routing to be platform-aware:
- Dev: /platforms/{code}/storefront/{store_code}/
- Prod: subdomain.platform.lu/ (internally rewritten to /storefront/)
- Add subdomain detection in PlatformContextMiddleware
- Add /storefront/ path rewrite for prod mode (subdomain/custom domain)
- Remove all silent platform fallbacks (platform_id=1)
- Add require_platform dependency for clean endpoint validation
- Update route registration, templates, module definitions, base_url calc
- Update StoreContextMiddleware for /storefront/ path detection
- Remove /stores/ from FrontendDetector STOREFRONT_PATH_PREFIXES
Billing service improvements:
- Add store_platform_sync_service to keep store_platforms in sync
- Make tier lookups platform-aware across billing services
- Add tiers for all platforms in seed data
- Add demo subscriptions to seed
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
69 lines
1.6 KiB
Python
69 lines
1.6 KiB
Python
# app/modules/billing/services/__init__.py
|
|
"""
|
|
Billing module services.
|
|
|
|
Provides subscription management, Stripe integration, and admin operations.
|
|
"""
|
|
|
|
from app.modules.billing.services.admin_subscription_service import (
|
|
AdminSubscriptionService,
|
|
admin_subscription_service,
|
|
)
|
|
from app.modules.billing.services.billing_service import (
|
|
BillingService,
|
|
billing_service,
|
|
)
|
|
from app.modules.billing.services.feature_service import (
|
|
FeatureService,
|
|
feature_service,
|
|
)
|
|
from app.modules.billing.services.platform_pricing_service import (
|
|
PlatformPricingService,
|
|
platform_pricing_service,
|
|
)
|
|
from app.modules.billing.services.store_platform_sync_service import (
|
|
StorePlatformSync,
|
|
store_platform_sync,
|
|
)
|
|
from app.modules.billing.services.stripe_service import (
|
|
StripeService,
|
|
stripe_service,
|
|
)
|
|
from app.modules.billing.services.subscription_service import (
|
|
SubscriptionService,
|
|
subscription_service,
|
|
)
|
|
from app.modules.billing.services.usage_service import (
|
|
LimitCheckData,
|
|
TierInfoData,
|
|
UpgradeTierData,
|
|
UsageData,
|
|
UsageMetricData,
|
|
UsageService,
|
|
usage_service,
|
|
)
|
|
|
|
__all__ = [
|
|
"SubscriptionService",
|
|
"subscription_service",
|
|
"StorePlatformSync",
|
|
"store_platform_sync",
|
|
"StripeService",
|
|
"stripe_service",
|
|
"AdminSubscriptionService",
|
|
"admin_subscription_service",
|
|
"BillingService",
|
|
"billing_service",
|
|
"FeatureService",
|
|
"feature_service",
|
|
"PlatformPricingService",
|
|
"platform_pricing_service",
|
|
"UsageService",
|
|
"usage_service",
|
|
"UsageData",
|
|
"UsageMetricData",
|
|
"TierInfoData",
|
|
"UpgradeTierData",
|
|
"LimitCheckData",
|
|
]
|