Improve AI logic
This commit is contained in:
@@ -11,7 +11,7 @@ import structlog
|
||||
|
||||
from shared.database.repository import BaseRepository
|
||||
from shared.database.exceptions import DatabaseError
|
||||
from shared.database.transactions import transactional
|
||||
|
||||
|
||||
logger = structlog.get_logger()
|
||||
|
||||
@@ -56,7 +56,6 @@ class ProductionBaseRepository(BaseRepository):
|
||||
)
|
||||
return await self.get_by_tenant_id(tenant_id, skip, limit)
|
||||
|
||||
@transactional
|
||||
async def get_by_date_range(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -89,7 +88,6 @@ class ProductionBaseRepository(BaseRepository):
|
||||
error=str(e), tenant_id=tenant_id)
|
||||
raise DatabaseError(f"Failed to fetch records by date range: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_active_records(
|
||||
self,
|
||||
tenant_id: str,
|
||||
|
||||
@@ -13,7 +13,7 @@ import structlog
|
||||
from .base import ProductionBaseRepository
|
||||
from app.models.production import ProductionCapacity
|
||||
from shared.database.exceptions import DatabaseError, ValidationError
|
||||
from shared.database.transactions import transactional
|
||||
|
||||
|
||||
logger = structlog.get_logger()
|
||||
|
||||
@@ -25,7 +25,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
# Capacity data changes moderately, medium cache time (10 minutes)
|
||||
super().__init__(ProductionCapacity, session, cache_ttl)
|
||||
|
||||
@transactional
|
||||
async def create_capacity(self, capacity_data: Dict[str, Any]) -> ProductionCapacity:
|
||||
"""Create a new production capacity entry with validation"""
|
||||
try:
|
||||
@@ -68,7 +67,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
logger.error("Error creating production capacity", error=str(e))
|
||||
raise DatabaseError(f"Failed to create production capacity: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_capacity_by_resource(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -101,7 +99,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching capacity by resource", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch capacity by resource: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_available_capacity(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -136,7 +133,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching available capacity", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch available capacity: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def allocate_capacity(
|
||||
self,
|
||||
capacity_id: UUID,
|
||||
@@ -183,7 +179,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
logger.error("Error allocating capacity", error=str(e))
|
||||
raise DatabaseError(f"Failed to allocate capacity: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def release_capacity(
|
||||
self,
|
||||
capacity_id: UUID,
|
||||
@@ -230,7 +225,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
logger.error("Error releasing capacity", error=str(e))
|
||||
raise DatabaseError(f"Failed to release capacity: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_capacity_utilization_summary(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -299,7 +293,6 @@ class ProductionCapacityRepository(ProductionBaseRepository):
|
||||
logger.error("Error calculating capacity utilization summary", error=str(e))
|
||||
raise DatabaseError(f"Failed to calculate capacity utilization summary: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def set_maintenance_mode(
|
||||
self,
|
||||
capacity_id: UUID,
|
||||
|
||||
@@ -13,7 +13,7 @@ import structlog
|
||||
from .base import ProductionBaseRepository
|
||||
from app.models.production import ProductionSchedule
|
||||
from shared.database.exceptions import DatabaseError, ValidationError
|
||||
from shared.database.transactions import transactional
|
||||
|
||||
|
||||
logger = structlog.get_logger()
|
||||
|
||||
@@ -25,7 +25,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
# Schedules are more stable, medium cache time (10 minutes)
|
||||
super().__init__(ProductionSchedule, session, cache_ttl)
|
||||
|
||||
@transactional
|
||||
async def create_schedule(self, schedule_data: Dict[str, Any]) -> ProductionSchedule:
|
||||
"""Create a new production schedule with validation"""
|
||||
try:
|
||||
@@ -71,7 +70,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
logger.error("Error creating production schedule", error=str(e))
|
||||
raise DatabaseError(f"Failed to create production schedule: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_schedule_by_date(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -101,7 +99,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching schedule by date", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch schedule by date: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_schedules_by_date_range(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -131,7 +128,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching schedules by date range", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch schedules by date range: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_active_schedules(self, tenant_id: str) -> List[ProductionSchedule]:
|
||||
"""Get active production schedules for a tenant"""
|
||||
try:
|
||||
@@ -153,7 +149,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching active schedules", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch active schedules: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def finalize_schedule(
|
||||
self,
|
||||
schedule_id: UUID,
|
||||
@@ -188,7 +183,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
logger.error("Error finalizing schedule", error=str(e))
|
||||
raise DatabaseError(f"Failed to finalize schedule: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def update_schedule_metrics(
|
||||
self,
|
||||
schedule_id: UUID,
|
||||
@@ -227,7 +221,6 @@ class ProductionScheduleRepository(ProductionBaseRepository):
|
||||
logger.error("Error updating schedule metrics", error=str(e))
|
||||
raise DatabaseError(f"Failed to update schedule metrics: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_schedule_performance_summary(
|
||||
self,
|
||||
tenant_id: str,
|
||||
|
||||
@@ -13,7 +13,7 @@ import structlog
|
||||
from .base import ProductionBaseRepository
|
||||
from app.models.production import QualityCheck
|
||||
from shared.database.exceptions import DatabaseError, ValidationError
|
||||
from shared.database.transactions import transactional
|
||||
|
||||
|
||||
logger = structlog.get_logger()
|
||||
|
||||
@@ -25,7 +25,6 @@ class QualityCheckRepository(ProductionBaseRepository):
|
||||
# Quality checks are dynamic, short cache time (5 minutes)
|
||||
super().__init__(QualityCheck, session, cache_ttl)
|
||||
|
||||
@transactional
|
||||
async def create_quality_check(self, check_data: Dict[str, Any]) -> QualityCheck:
|
||||
"""Create a new quality check with validation"""
|
||||
try:
|
||||
@@ -69,7 +68,6 @@ class QualityCheckRepository(ProductionBaseRepository):
|
||||
logger.error("Error creating quality check", error=str(e))
|
||||
raise DatabaseError(f"Failed to create quality check: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_checks_by_batch(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -96,7 +94,6 @@ class QualityCheckRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching quality checks by batch", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch quality checks by batch: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_checks_by_date_range(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -136,7 +133,6 @@ class QualityCheckRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching quality checks by date range", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch quality checks by date range: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_failed_checks(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -167,7 +163,6 @@ class QualityCheckRepository(ProductionBaseRepository):
|
||||
logger.error("Error fetching failed quality checks", error=str(e))
|
||||
raise DatabaseError(f"Failed to fetch failed quality checks: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_quality_metrics(
|
||||
self,
|
||||
tenant_id: str,
|
||||
@@ -247,7 +242,6 @@ class QualityCheckRepository(ProductionBaseRepository):
|
||||
logger.error("Error calculating quality metrics", error=str(e))
|
||||
raise DatabaseError(f"Failed to calculate quality metrics: {str(e)}")
|
||||
|
||||
@transactional
|
||||
async def get_quality_trends(
|
||||
self,
|
||||
tenant_id: str,
|
||||
|
||||
Reference in New Issue
Block a user