Spaces:
Running
Running
| #!/usr/bin/env python3 | |
| # -*- coding: utf-8 -*- | |
| """ | |
| Created on Thu Dec 28 10:32:52 2023 | |
| @author: raphael | |
| """ | |
| import json | |
| from typing import List, Optional, Dict | |
| from pydantic import BaseModel, Field, UUID4 | |
| from enum import Enum, unique | |
| class FamilleJugement(str, Enum): | |
| ARRET_APPEL = "Arrêt de la Cour d'Appel" | |
| AVIS_DEPOT = 'Avis de dépôt' | |
| EXTRAIT_JUGEMENT = 'Extrait de jugement' | |
| JUGEMENT_OUVERTURE_ouverture = "Jugement d'ouverture" | |
| JUGEMENT_CLOTURE = 'Jugement de clôture' | |
| JUGEMENT = 'Jugement prononçant' | |
| class NatureJugement(str, Enum): | |
| ARRET_COUR_APPEL_INFIRMANT = "Arrêt de la cour d'appel infirmant une décision soumise à publicité" | |
| AUTRE_ARRET_COUR_APPEL = "Autre arrêt de la Cour d'Appel" | |
| AUTRE_AVIS_DE_DEPOT = "Autre avis de dépôt" | |
| AUTRE_JUGEMENT_OUVERTURE = "Autre jugement d'ouverture" | |
| AUTRE_JUGEMENT_CLOTURE = "Autre jugement de clôture" | |
| AUTRE_JUGEMENT_ORDONNANCE = "Autre jugement et ordonnance" | |
| AUTRE_JUGEMENT_PRONONCANT = "Autre jugement prononçant" | |
| DEPOT_ETAT_COLLOCATION = "Dépôt de l'état de collocation" | |
| DEPOT_ETAT_CREANCES = "Dépôt de l'état des créances" | |
| DEPOT_ETAT_CREANCES_1985 = "Dépôt de l'état des créances Loi de 1985" | |
| DEPOT_PROJET_REPARTITION = "Dépôt du projet de répartition" | |
| JUGEMENT_PLAN_SAUVEGARDE = "Jugement arrêtant le plan de sauvegarde" | |
| JUGEMENT_PLAN_CESSION = "Jugement arrêtant un plan de cession" | |
| EXTENSION_LIQUIDATION_JUDICIAIRE = "Jugement d'extension de liquidation judiciaire" | |
| INTERDICTION_GERER = "Jugement d'interdiction de gérer" | |
| OUVERTURE_PROCEDURE_RESTRUCTURATION = "Jugement d'ouverture d'une procédure de redressement judiciaire" | |
| OUVERTURE_PROCEDURE_SAUVEGARDE = "Jugement d'ouverture d'une procédure de sauvegarde" | |
| OUVERTURE_LIQUIDATION_JUDICIAIRE = "Jugement d'ouverture de liquidation judiciaire" | |
| CLOTURE_PROCEDURE_SAUVEGARDE = "Jugement de clôture de la procédure de sauvegarde" | |
| CLOTURE_EXTINCTION_PASSIF = "Jugement de clôture pour extinction du passif" | |
| CLOTURE_INSUFFISANCE_ACTIF = "Jugement de clôture pour insuffisance d'actif" | |
| CONVERSION_LIQUIDATION_JUDICIAIRE = "Jugement de conversion en liquidation judiciaire" | |
| CONVERSION_LIQUIDATION_SAUVEGARDE = "Jugement de conversion en liquidation judiciaire de la procédure de sauvegarde" | |
| CONVERSION_RESTRUCTURATION_SAUVEGARDE = "Jugement de conversion en redressement judiciaire de la procédure de sauvegarde" | |
| JUGEMENT_FAILLITE_PERSONNELLE = "Jugement de faillite personnelle" | |
| JUGEMENT_PLAN_RESTRUCTURATION = "Jugement de plan de redressement" | |
| REPRISE_PROCEDURE_LIQUIDATION = "Jugement de reprise de la procédure de liquidation judiciaire" | |
| FIN_PROCEDURE_RESTRUCTURATION = "Jugement mettant fin à la procédure de redressement judiciaire" | |
| FIN_PROCEDURE_SAUVEGARDE = "Jugement mettant fin à la procédure de sauvegarde" | |
| MODIFICATION_DATE_CESSATION_PAIEMENTS = "Jugement modifiant la date de cessation des paiements" | |
| MODIFICATION_PLAN_RESTRUCTURATION = "Jugement modifiant le plan de redressement" | |
| MODIFICATION_PLAN_SAUVEGARDE = "Jugement modifiant le plan de sauvegarde" | |
| MODIFICATION_PLAN_TRAITEMENT_SORTIE_CRISE = "Jugement modifiant le plan de traitement de sortie de crise" | |
| RESOLUTION_PLAN_RESTRUCTURATION_LIQUIDATION = "Jugement prononçant la résolution du plan de redressement et la liquidation judiciaire" | |
| RESOLUTION_PLAN_SAUVEGARDE_LIQUIDATION = "Jugement prononçant la résolution du plan de sauvegarde et la liquidation judiciaire" | |
| RESOLUTION_PLAN_SAUVEGARDE_RESTRUCTURATION = "Jugement prononçant la résolution du plan de sauvegarde et le redressement judiciaire" | |
| RESOLUTION_PLAN_SORTIE_CRISE_LIQUIDATION = "Jugement prononçant la résolution du plan de traitement de sortie de crise et la liquidation judiciaire" | |
| LISTE_CREANCES_POST_OUVERTURE_LIQUIDATION = "Liste des créances nées après le jugement d'ouverture d'une procédure de liquidation judiciaire" | |
| LISTE_CREANCES_POST_OUVERTURE_RESTRUCTURATION = "Liste des créances nées après le jugement d'ouverture d'une procédure de redressement judiciaire" | |
| # Méthode pour obtenir l'énumération à partir de la chaîne | |
| def from_string(s): | |
| for member in NatureJugement: | |
| if member.value == s: | |
| return member | |
| raise ValueError(f"{s} n'est pas une valeur valide de TypeJugement") | |
| class Personne(BaseModel): | |
| typePersonne: str | |
| numeroImmatriculation: Optional[Dict] = Field(default=None) | |
| denomination: Optional[str] = Field(default=None) | |
| activite: Optional[str] = Field(default=None) | |
| formeJuridique: Optional[str] = Field(default=None) | |
| adresseSiegeSocial: Optional[Dict] = Field(default=None) | |
| class Jugement(BaseModel): | |
| type:Optional[str] = None | |
| famille:Optional[str] = None | |
| nature:Optional[str] = None | |
| #nature: NatureJugement = None | |
| date: Optional[str] = None | |
| complementJugement: Optional[str] = None | |
| class Annonce(BaseModel): | |
| #uuid: UUID4 | |
| publicationavis: Optional[str] | |
| publicationavis_facette: Optional[str] | |
| parution: Optional[int] | |
| dateparution: Optional[str] | |
| numeroannonce: int | |
| typeavis: Optional[str] | |
| typeavis_lib: Optional[str] | |
| familleavis: Optional[str] | |
| familleavis_lib: Optional[str] | |
| numerodepartement: Optional[str] | |
| departement_nom_officiel: Optional[str] | |
| region_code: int | |
| region_nom_officiel: Optional[str] | |
| tribunal: Optional[str] | |
| commercant: Optional[str] | |
| ville: Optional[str] | |
| registre: Optional[List[str]] # Rendre le champ optionnel | |
| cp: Optional[str] | |
| pdf_parution_subfolder: int | |
| ispdf_unitaire: str | |
| listepersonnes: Optional[List[Personne]] # Liste d'instances de Personne | |
| listeetablissements: Optional[None] | |
| jugement: Optional[Jugement] # JSON string or None | |
| acte: Optional[None] | |
| modificationsgenerales: Optional[None] | |
| radiationaurcs: Optional[None] | |
| depot: Optional[None] | |
| listeprecedentexploitant: Optional[None] | |
| listeprecedentproprietaire: Optional[None] | |
| divers: Optional[None] | |
| parutionavisprecedent: Optional[None] | |