Небольшие изменения

This commit is contained in:
brusnitsyn
2026-03-13 17:11:39 +09:00
parent c201d36ae6
commit de2dd82fa1
18 changed files with 1140 additions and 491 deletions

View File

@@ -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: