fix: resolve all architecture validation warnings
Service layer: - Remove db.commit() calls from credentials_service.py (SVC-006) - Move transaction control to API endpoint level - Rename client.py -> client_service.py (NAM-002) - Rename credentials.py -> credentials_service.py (NAM-002) JavaScript: - Use centralized logger in admin letzshop.js (JS-001) - Replace console.log/error with LogConfig logger Frontend templates: - Use page_header_flex macro for page header (FE-007) - Use error_state macro for error display (FE-003) - Use table_wrapper macro for vendors table (FE-005) - Use modal macro for configuration and orders modals (FE-004) All 31 Letzshop tests pass. Architecture validation: 0 errors, 0 warnings. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -9,14 +9,14 @@ Provides:
|
||||
- Fulfillment sync service
|
||||
"""
|
||||
|
||||
from .client import (
|
||||
from .client_service import (
|
||||
LetzshopAPIError,
|
||||
LetzshopAuthError,
|
||||
LetzshopClient,
|
||||
LetzshopClientError,
|
||||
LetzshopConnectionError,
|
||||
)
|
||||
from .credentials import (
|
||||
from .credentials_service import (
|
||||
CredentialsError,
|
||||
CredentialsNotFoundError,
|
||||
LetzshopCredentialsService,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# app/services/letzshop/client.py
|
||||
# app/services/letzshop/client_service.py
|
||||
"""
|
||||
GraphQL client for Letzshop marketplace API.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# app/services/letzshop/credentials.py
|
||||
# app/services/letzshop/credentials_service.py
|
||||
"""
|
||||
Letzshop credentials management service.
|
||||
|
||||
@@ -13,7 +13,7 @@ from sqlalchemy.orm import Session
|
||||
from app.utils.encryption import decrypt_value, encrypt_value, mask_api_key
|
||||
from models.database.letzshop import VendorLetzshopCredentials
|
||||
|
||||
from .client import LetzshopClient
|
||||
from .client_service import LetzshopClient
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -127,8 +127,7 @@ class LetzshopCredentialsService:
|
||||
)
|
||||
|
||||
self.db.add(credentials)
|
||||
self.db.commit()
|
||||
self.db.refresh(credentials)
|
||||
self.db.flush()
|
||||
|
||||
logger.info(f"Created Letzshop credentials for vendor {vendor_id}")
|
||||
return credentials
|
||||
@@ -168,8 +167,7 @@ class LetzshopCredentialsService:
|
||||
if sync_interval_minutes is not None:
|
||||
credentials.sync_interval_minutes = sync_interval_minutes
|
||||
|
||||
self.db.commit()
|
||||
self.db.refresh(credentials)
|
||||
self.db.flush()
|
||||
|
||||
logger.info(f"Updated Letzshop credentials for vendor {vendor_id}")
|
||||
return credentials
|
||||
@@ -189,7 +187,7 @@ class LetzshopCredentialsService:
|
||||
return False
|
||||
|
||||
self.db.delete(credentials)
|
||||
self.db.commit()
|
||||
self.db.flush()
|
||||
|
||||
logger.info(f"Deleted Letzshop credentials for vendor {vendor_id}")
|
||||
return True
|
||||
@@ -370,8 +368,7 @@ class LetzshopCredentialsService:
|
||||
credentials.last_sync_status = status
|
||||
credentials.last_sync_error = error
|
||||
|
||||
self.db.commit()
|
||||
self.db.refresh(credentials)
|
||||
self.db.flush()
|
||||
|
||||
return credentials
|
||||
|
||||
Reference in New Issue
Block a user