From 9f5ccb8e7b32d17f66f822bea909092caad4b8ae Mon Sep 17 00:00:00 2001 From: Fanilo-Nantenaina Date: Mon, 5 Jan 2026 23:48:25 +0300 Subject: [PATCH] fix(models): correct relationship and import paths for universign models --- database/__init__.py | 8 ++++++-- database/models/universign.py | 2 +- services/universign_sync.py | 12 ++++++------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/database/__init__.py b/database/__init__.py index 1a4a9ff..96eb874 100644 --- a/database/__init__.py +++ b/database/__init__.py @@ -24,8 +24,10 @@ from database.models.universign import ( UniversignTransaction, UniversignSigner, UniversignSyncLog, + UniversignTransactionStatus, LocalDocumentStatus, - SageDocumentType, + UniversignSignerStatus, + SageDocumentType ) __all__ = [ @@ -49,6 +51,8 @@ __all__ = [ "UniversignTransaction", "UniversignSigner", "UniversignSyncLog", + "UniversignTransactionStatus", "LocalDocumentStatus", - "SageDocumentType", + "UniversignSignerStatus", + "SageDocumentType" ] diff --git a/database/models/universign.py b/database/models/universign.py index f34a4ae..25f4401 100644 --- a/database/models/universign.py +++ b/database/models/universign.py @@ -278,7 +278,7 @@ class UniversignSyncLog(Base): response_time_ms = Column(Integer, nullable=True) # === RELATION === - transaction = relationship("UniversignSyncLog", back_populates="sync_logs") + transaction = relationship("UniversignTransaction", back_populates="sync_logs") def __repr__(self): return f"" diff --git a/services/universign_sync.py b/services/universign_sync.py index c9af7c9..1abd24b 100644 --- a/services/universign_sync.py +++ b/services/universign_sync.py @@ -12,7 +12,7 @@ from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy import select, and_, or_ from sqlalchemy.orm import selectinload -from database.models.universign_models import ( +from database import ( UniversignTransaction, UniversignSigner, UniversignSyncLog, @@ -20,7 +20,7 @@ from database.models.universign_models import ( LocalDocumentStatus, UniversignSignerStatus, ) -from status_mapping import ( +from utils.universign_status_mapping import ( map_universign_to_local, get_sage_status_code, is_transition_allowed, @@ -279,14 +279,14 @@ class UniversignSyncService: select(UniversignTransaction) .where( and_( - UniversignTransaction.needs_sync == True, + UniversignTransaction.needs_sync, or_( # Transactions non finales ~UniversignTransaction.local_status.in_( [ - LocalDocumentStatus.SIGNE, - LocalDocumentStatus.REFUSE, - LocalDocumentStatus.EXPIRE, + LocalDocumentStatus.SIGNED, + LocalDocumentStatus.REJECTED, + LocalDocumentStatus.EXPIRED, ] ), # OU dernière sync > 1h (vérification finale)