- Add LetzshopVendorCache model to store cached vendor data from Letzshop API - Create LetzshopVendorSyncService for syncing vendor directory - Add Celery task for background vendor sync - Create admin page at /admin/letzshop/vendor-directory with: - Stats dashboard (total, claimed, unclaimed vendors) - Searchable/filterable vendor list - "Sync Now" button to trigger sync - Ability to create platform vendors from Letzshop cache - Add API endpoints for vendor directory management - Add Pydantic schemas for API responses Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
54 lines
1.2 KiB
Python
54 lines
1.2 KiB
Python
# app/services/letzshop/__init__.py
|
|
"""
|
|
Letzshop marketplace integration services.
|
|
|
|
Provides:
|
|
- GraphQL client for API communication
|
|
- Credential management service
|
|
- Order import service
|
|
- Fulfillment sync service
|
|
- Vendor directory sync service
|
|
"""
|
|
|
|
from .client_service import (
|
|
LetzshopAPIError,
|
|
LetzshopAuthError,
|
|
LetzshopClient,
|
|
LetzshopClientError,
|
|
LetzshopConnectionError,
|
|
)
|
|
from .credentials_service import (
|
|
CredentialsError,
|
|
CredentialsNotFoundError,
|
|
LetzshopCredentialsService,
|
|
)
|
|
from .order_service import (
|
|
LetzshopOrderService,
|
|
OrderNotFoundError,
|
|
VendorNotFoundError,
|
|
)
|
|
from .vendor_sync_service import (
|
|
LetzshopVendorSyncService,
|
|
get_vendor_sync_service,
|
|
)
|
|
|
|
__all__ = [
|
|
# Client
|
|
"LetzshopClient",
|
|
"LetzshopClientError",
|
|
"LetzshopAuthError",
|
|
"LetzshopAPIError",
|
|
"LetzshopConnectionError",
|
|
# Credentials
|
|
"LetzshopCredentialsService",
|
|
"CredentialsError",
|
|
"CredentialsNotFoundError",
|
|
# Order Service
|
|
"LetzshopOrderService",
|
|
"OrderNotFoundError",
|
|
"VendorNotFoundError",
|
|
# Vendor Sync Service
|
|
"LetzshopVendorSyncService",
|
|
"get_vendor_sync_service",
|
|
]
|