fix(models): correct relationship and import paths for universign models

This commit is contained in:
Fanilo-Nantenaina 2026-01-05 23:48:25 +03:00
parent a68f5af72e
commit 9f5ccb8e7b
3 changed files with 13 additions and 9 deletions

View file

@ -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"
]

View file

@ -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"<SyncLog {self.sync_type} at {self.sync_timestamp}>"

View file

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