Liantsoaxx08 commited on
Commit
424ff93
·
1 Parent(s): 0418d8a

correction fiche de renseignement

Browse files
Files changed (1) hide show
  1. app/services/pdf_generator_service.py +24 -60
app/services/pdf_generator_service.py CHANGED
@@ -41,60 +41,32 @@ THIRD_PDF_TEMPLATE = BASE_DIR / "app" / "templates" / "Fiche de renseignements.p
41
  # =====================================================
42
  # PDF FIELD MAPPING
43
  # Correspondance entre les champs du formulaire PDF et les colonnes Airtable
44
- # COLONNES VÉRIFIÉES SUR AIRTABLE LE 20/01/2026
 
45
  # =====================================================
46
 
47
  PDF_MAPPING = {
48
  # =====================================================
49
- # EMPLOYEUR / IDENTIFICATION (Table: Fiche de Renseignement Entreprise)
50
  # =====================================================
51
  "Champ de texte 2": ("entreprise", "Raison sociale"),
52
- # Adresse complète: Numéro + Voie + Nom de la rue + Complément + Code postal + Ville
53
  "Champ de texte 70": ("entreprise", "Lieu dexécution du contrat (si différent du siège)"),
54
- "Champ de texte 79": ("entreprise", "Numéro de téléphone"),
55
- "Champ de texte 80": ("entreprise", "E-mail"),
56
  "Champ de texte 81": ("entreprise", "Numéro SIRET"),
57
  "Champ de texte 82": ("entreprise", "Type demployeur"),
58
- "Champ de texte 83": ("entreprise", "Employeur specifique"),
59
  "Champ de texte 84": ("entreprise", "Effectif salarié de l'entreprise"),
60
- "Champ de texte 85": ("entreprise", "Code APE / NAF"),
61
- "Champ de texte 86": ("entreprise", "Code IDCC"),
62
  "Champ de texte 87": ("entreprise", "Convention collective"),
63
- "Champ de texte 88": ("entreprise", "Caisse de retraite"), # présent dans Airtable
64
- "Champ de texte 89": ("entreprise", "Date de création de lentreprise"), # Non présent dans Airtable
65
-
66
- # # =====================================================
67
- # # REPRÉSENTANT LÉGAL (Table: Fiche de Renseignement Entreprise)
68
- # # =====================================================
69
- # "Champ de texte 91": ("entreprise", "Nom du representant legal"),
70
- # "Champ de texte 92": ("entreprise", "Titre exact du representant legal"),
71
 
72
  # =====================================================
73
- # OPCO (Table: Fiche de Renseignement Entreprise)
74
  # =====================================================
75
- "Champ de texte 93": ("entreprise", "Nom de lOPCO"),
76
- # "Champ de texte 94": ("entreprise", "Téléphone OPCO"), # Non présent - utiliser email
77
- # "Champ de texte 95": ("entreprise", "Contact OPCO"), # Non présent
78
- # "Champ de texte 96": ("entreprise", "E-mail OPCO"), # Non présent
79
- # "Champ de texte 97": ("entreprise", "Adresse OPCO"),
80
-
81
- # # =====================================================
82
- # # FACTURATION (Table: Fiche de Renseignement Entreprise)
83
- # # =====================================================
84
- # "Champ de texte 101": ("entreprise", "Nom contact facturation"), # Non présent
85
- # "Champ de texte 102": ("entreprise", "Adresse facturation"), # Composite: Code postal facturation + Ville facturation
86
- # "Champ de texte 103": ("entreprise", "Téléphone facturation"), # Non présent
87
- # "Champ de texte 104": ("entreprise", "E-mail facturation"), # Non présent
88
- # "Champ de texte 105": ("entreprise", "N de bon de commande"),
89
-
90
- # # =====================================================
91
- # # CONTACT RH (Table: Fiche de Renseignement Entreprise)
92
- # # =====================================================
93
- # "Champ de texte 106": ("entreprise", "Nom et prenom RH"),
94
- # "Champ de texte 107": ("entreprise", "Nom et prenom RH"),
95
- # "Champ de texte 108": ("entreprise", "Fonction RH"),
96
- # "Champ de texte 109": ("entreprise", "Telephone RH"),
97
- # "Champ de texte 1010": ("entreprise", "email RH"),
98
 
99
  # =====================================================
100
  # APPRENTI (Table: Liste des candidats)
@@ -111,23 +83,23 @@ PDF_MAPPING = {
111
  "Champ de texte 121": ("candidat", "Régime social"),
112
  "Champ de texte 122": ("candidat", "Adresse lieu dexécution du contrat"),
113
  "Champ de texte 123": ("candidat", "NOM de naissance"),
114
- "Champ de texte 124": ("candidat", "NOM dusage"),
115
  "Champ de texte 125": ("candidat", "NIR"),
116
  "Champ de texte 126": ("candidat", "Déclare bénéficier de la reconnaissance travailleur handicapé"),
117
  "Champ de texte 127": ("candidat", "Situation avant le contrat"),
118
  "Champ de texte 128": ("candidat", "Dernier diplôme ou titre préparé"),
119
  "Champ de texte 129": ("candidat", "Dernière classe / année suivie"),
120
- "Champ de texte 130": ("candidat", "Intitulé précis du dernier diplôme"), # Non présent
121
- "Champ de texte 131": ("candidat", "Diplôme ou titre le plus élevé obtenu"),
122
  "Champ de texte 132": ("candidat", "Déclare avoir un projet de création ou de reprise dentreprise"),
123
 
124
  # =====================================================
125
- # MAÎTRE D'APPRENTISSAGE (Table: Fiche de Renseignement Entreprise)
126
  # =====================================================
127
  "Champ de texte 133": ("entreprise", "Nom Maître apprentissage"),
128
  "Champ de texte 134": ("entreprise", "Prénom Maître apprentissage"),
129
  "Champ de texte 135": ("entreprise", "Date de naissance Maître apprentissage"),
130
- "Champ de texte 136": ("entreprise", "N° de sécurité sociale Maître apprentissage"),
131
  "Champ de texte 137": ("entreprise", "Fonction Maître apprentissage"),
132
  "Champ de texte 138": ("entreprise", "Diplôme Maître apprentissage"),
133
  "Champ de texte 142": ("entreprise", "Année experience pro Maître apprentissage"),
@@ -135,31 +107,23 @@ PDF_MAPPING = {
135
  "Champ de texte 144": ("entreprise", "Email Maître apprentissage"),
136
 
137
  # =====================================================
138
- # CONTRAT (Table: Fiche de Renseignement Entreprise)
139
  # =====================================================
140
  "Champ de texte 145": ("entreprise", "Type de contrat"),
141
  "Champ de texte 147": ("entreprise", "Type de dérogation"),
142
- # "Champ de texte 151": ("entreprise", "N du contrat précédent"), # Non présent
143
  "Champ de texte 154": ("entreprise", "Date de début exécution"),
144
  "Champ de texte 155": ("entreprise", "Fin du contrat apprentissage"),
145
- "Champ de texte 156": ("entreprise", "Nombre de mois du contrat"),
146
- "Champ de texte 157": ("entreprise", "Durée hebdomadaire du travail"),
147
  "Champ de texte 158": ("entreprise", "Poste occupé"),
148
  "Champ de texte 159": ("entreprise", "Formation de lalternant(e) (pour les missions)"),
149
 
150
  # =====================================================
151
- # SALAIRE (Table: Fiche de Renseignement Entreprise)
152
- # =====================================================
153
- "Champ de texte 160": ("entreprise", "SMIC"),
154
- "Champ de texte 161": ("entreprise", "Salaire brut mensuel"),
155
-
156
  # =====================================================
157
- # CONTACT TAXE APPRENTISSAGE (Table: Fiche de Renseignement Entreprise)
158
- # # =====================================================
159
- # "Champ de texte 162": ("entreprise", "Nom contact taxe dapprentissage"), # Composite
160
- # "Champ de texte 163": ("entreprise", "Fonction contact taxe dapprentissage"),
161
- # "Champ de texte 164": ("entreprise", "Téléphone contact taxe dapprentissage"),
162
- # "Champ de texte 165": ("entreprise", "E-mail contact taxe dapprentissage"),
163
  }
164
 
165
 
 
41
  # =====================================================
42
  # PDF FIELD MAPPING
43
  # Correspondance entre les champs du formulaire PDF et les colonnes Airtable
44
+ # COLONNES VÉRIFIÉES SUR AIRTABLE LE 03/02/2026
45
+ # Tables: "Liste des candidats" et "Fiche entreprise"
46
  # =====================================================
47
 
48
  PDF_MAPPING = {
49
  # =====================================================
50
+ # EMPLOYEUR / IDENTIFICATION (Table: Fiche entreprise)
51
  # =====================================================
52
  "Champ de texte 2": ("entreprise", "Raison sociale"),
53
+ # Adresse complète: construite via _build_adresse_entreprise()
54
  "Champ de texte 70": ("entreprise", "Lieu dexécution du contrat (si différent du siège)"),
55
+ "Champ de texte 79": ("entreprise", "Téléphone entreprise"),
56
+ "Champ de texte 80": ("entreprise", "Email entreprise"),
57
  "Champ de texte 81": ("entreprise", "Numéro SIRET"),
58
  "Champ de texte 82": ("entreprise", "Type demployeur"),
59
+ "Champ de texte 83": ("entreprise", "Employeur specifique"), # Non présent dans Airtable actuel
60
  "Champ de texte 84": ("entreprise", "Effectif salarié de l'entreprise"),
61
+ "Champ de texte 85": ("entreprise", "Code APE/NAF"),
62
+ "Champ de texte 86": ("entreprise", "Code IDCC"), # Non présent - à vérifier
63
  "Champ de texte 87": ("entreprise", "Convention collective"),
64
+ "Champ de texte 88": ("entreprise", "Caisse de retraite"),
 
 
 
 
 
 
 
65
 
66
  # =====================================================
67
+ # OPCO (Table: Fiche entreprise)
68
  # =====================================================
69
+ "Champ de texte 93": ("entreprise", "Nom OPCO"),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
70
 
71
  # =====================================================
72
  # APPRENTI (Table: Liste des candidats)
 
83
  "Champ de texte 121": ("candidat", "Régime social"),
84
  "Champ de texte 122": ("candidat", "Adresse lieu dexécution du contrat"),
85
  "Champ de texte 123": ("candidat", "NOM de naissance"),
86
+ "Champ de texte 124": ("candidat", "NOM dusage"), # Non présent dans Airtable - à ajouter si besoin
87
  "Champ de texte 125": ("candidat", "NIR"),
88
  "Champ de texte 126": ("candidat", "Déclare bénéficier de la reconnaissance travailleur handicapé"),
89
  "Champ de texte 127": ("candidat", "Situation avant le contrat"),
90
  "Champ de texte 128": ("candidat", "Dernier diplôme ou titre préparé"),
91
  "Champ de texte 129": ("candidat", "Dernière classe / année suivie"),
92
+ "Champ de texte 130": ("candidat", "Intitulé précis du dernier diplôme ou titre préparé"),
93
+ "Champ de texte 131": ("candidat", "BAC"), # Utiliser "BAC" au lieu de "Diplôme ou titre le plus élevé obtenu"
94
  "Champ de texte 132": ("candidat", "Déclare avoir un projet de création ou de reprise dentreprise"),
95
 
96
  # =====================================================
97
+ # MAÎTRE D'APPRENTISSAGE (Table: Fiche entreprise)
98
  # =====================================================
99
  "Champ de texte 133": ("entreprise", "Nom Maître apprentissage"),
100
  "Champ de texte 134": ("entreprise", "Prénom Maître apprentissage"),
101
  "Champ de texte 135": ("entreprise", "Date de naissance Maître apprentissage"),
102
+ "Champ de texte 136": ("entreprise", "N de securite sociale maitre dapprentissage"), # Non présent
103
  "Champ de texte 137": ("entreprise", "Fonction Maître apprentissage"),
104
  "Champ de texte 138": ("entreprise", "Diplôme Maître apprentissage"),
105
  "Champ de texte 142": ("entreprise", "Année experience pro Maître apprentissage"),
 
107
  "Champ de texte 144": ("entreprise", "Email Maître apprentissage"),
108
 
109
  # =====================================================
110
+ # CONTRAT (Table: Fiche entreprise)
111
  # =====================================================
112
  "Champ de texte 145": ("entreprise", "Type de contrat"),
113
  "Champ de texte 147": ("entreprise", "Type de dérogation"),
114
+ "Champ de texte 151": ("entreprise", "Numéro DECA de ancien contrat"),
115
  "Champ de texte 154": ("entreprise", "Date de début exécution"),
116
  "Champ de texte 155": ("entreprise", "Fin du contrat apprentissage"),
117
+ "Champ de texte 156": ("entreprise", "Nombre de mois du contrat"), # Non présent - à calculer
118
+ "Champ de texte 157": ("entreprise", "Durée hebdomadaire"),
119
  "Champ de texte 158": ("entreprise", "Poste occupé"),
120
  "Champ de texte 159": ("entreprise", "Formation de lalternant(e) (pour les missions)"),
121
 
122
  # =====================================================
123
+ # SALAIRE (Table: Fiche entreprise)
 
 
 
 
124
  # =====================================================
125
+ "Champ de texte 160": ("entreprise", "Pourcentage du SMIC 1"),
126
+ "Champ de texte 161": ("entreprise", "Salaire brut mensuel 1"),
 
 
 
 
127
  }
128
 
129