Небольшие изменения
This commit is contained in:
@@ -2,6 +2,7 @@ import json
|
||||
from datetime import datetime
|
||||
from pathlib import Path
|
||||
from typing import Dict, Any, Optional
|
||||
from app.models.replication import ReplicationSchedule
|
||||
from app.repository.replication_metadata_repo import replication_metadata_repo
|
||||
from app.core.logging import migration_logger
|
||||
from app.core.config import settings
|
||||
@@ -31,9 +32,9 @@ class ReplicationState:
|
||||
'tables_count': stats['tables_count']
|
||||
}
|
||||
|
||||
def get_table_last_sync(self, table_name: str) -> Optional[datetime]:
|
||||
def get_table_last_sync(self, metadata_id: int) -> Optional[datetime]:
|
||||
"""Получает время последней синхронизации таблицы"""
|
||||
return self.replication_repo.get_last_sync_time(table_name)
|
||||
return self.replication_repo.get_last_sync_time(metadata_id)
|
||||
|
||||
def get_last_id(self, table_name: str) -> Optional[int]:
|
||||
"""Получает последний обработанный ID для таблицы"""
|
||||
@@ -43,9 +44,9 @@ class ReplicationState:
|
||||
"""Обновляет последний обработанный ID"""
|
||||
self.replication_repo.update_last_id(table_name, last_id)
|
||||
|
||||
def update_table_sync_time(self, table_name: str):
|
||||
def update_table_sync_time(self, schedule_id: int):
|
||||
"""Обновляет время синхронизации таблицы"""
|
||||
self.replication_repo.update_sync_time(table_name)
|
||||
self.replication_repo.update_sync_time(schedule_id)
|
||||
|
||||
def update_table_stats(self, table_name: str, added_rows: int):
|
||||
"""Обновляет статистику таблицы"""
|
||||
@@ -69,15 +70,16 @@ class ReplicationState:
|
||||
|
||||
session = self.replication_repo.get_session()
|
||||
try:
|
||||
metadata = session.query(ReplicationMetadata).filter_by(
|
||||
metadatas = session.query(ReplicationMetadata).filter_by(
|
||||
table_name=table_name
|
||||
).first()
|
||||
).all()
|
||||
|
||||
if metadata:
|
||||
metadata.total_rows = total_rows
|
||||
metadata.updated_at = datetime.now()
|
||||
session.commit()
|
||||
migration_logger.debug(f" Установлено total_rows={total_rows} для {table_name}")
|
||||
if metadatas:
|
||||
for metadata in metadatas:
|
||||
metadata.total_rows = total_rows
|
||||
metadata.updated_at = datetime.now()
|
||||
session.commit()
|
||||
migration_logger.debug(f"Установлено total_rows={total_rows} для {table_name}")
|
||||
else:
|
||||
migration_logger.warning(f"Метаданные для {table_name} не найдены")
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user