mirc detection
This commit is contained in:
@@ -8,6 +8,23 @@ from enum import Enum
|
||||
from datetime import datetime
|
||||
|
||||
|
||||
class ConversionStatus(str, Enum):
|
||||
"""Statuts possibles pour une conversion de fichier"""
|
||||
SUCCESS = "success"
|
||||
FAILED = "failed"
|
||||
|
||||
|
||||
class ConversionResponse(BaseModel):
|
||||
"""Réponse à une demande de conversion de fichier"""
|
||||
original_filename: str = Field(..., description="Nom du fichier original")
|
||||
original_format: str = Field(..., description="Format du fichier original")
|
||||
converted_filename: Optional[str] = Field(None, description="Nom du fichier converti")
|
||||
converted_format: Optional[str] = Field(None, description="Format du fichier converti")
|
||||
converted_path: Optional[str] = Field(None, description="Chemin vers le fichier converti")
|
||||
status: ConversionStatus = Field(..., description="Statut de la conversion")
|
||||
message: str = Field(..., description="Message d'information ou d'erreur")
|
||||
|
||||
|
||||
class JobStatus(str, Enum):
|
||||
"""Statuts possibles pour une tâche d'extraction"""
|
||||
PENDING = "pending"
|
||||
@@ -37,12 +54,24 @@ class JobStatusResponse(BaseModel):
|
||||
|
||||
class ExtractionResult(BaseModel):
|
||||
"""Résultat de l'extraction d'informations d'un chèque"""
|
||||
montant: Optional[str] = Field(None, description="Montant du chèque")
|
||||
# Champs standards
|
||||
montant: Optional[str] = Field(None, description="Montant du chèque en chiffres")
|
||||
date: Optional[str] = Field(None, description="Date du chèque")
|
||||
beneficiaire: Optional[str] = Field(None, description="Bénéficiaire du chèque")
|
||||
numero_cheque: Optional[str] = Field(None, description="Numéro du chèque")
|
||||
qualite_extraction: Optional[str] = Field(None, description="Qualité de l'extraction (échec, faible, moyenne, bonne)")
|
||||
image_zones: Optional[str] = Field(None, description="Chemin vers l'image avec les zones identifiées")
|
||||
|
||||
# Champs MICR (CMC-7)
|
||||
code_banque: Optional[str] = Field(None, description="Code banque (MICR CMC-7)")
|
||||
code_guichet: Optional[str] = Field(None, description="Code guichet (MICR CMC-7)")
|
||||
numero_compte: Optional[str] = Field(None, description="Numéro de compte (MICR CMC-7)")
|
||||
cle_rib: Optional[str] = Field(None, description="Clé RIB (MICR CMC-7)")
|
||||
sequence_micr: Optional[str] = Field(None, description="Séquence MICR complète")
|
||||
|
||||
# Champs avancés
|
||||
montant_lettres: Optional[str] = Field(None, description="Montant du chèque en lettres")
|
||||
coherence_montants: Optional[bool] = Field(None, description="Cohérence entre montant en chiffres et en lettres")
|
||||
|
||||
|
||||
class JobResult(BaseModel):
|
||||
|
||||
Reference in New Issue
Block a user