| 3 |
3 |
# Auteur : Simon-Pierre Boucher |
| 4 |
4 |
# Contact : contact@spboucher.ai |
| 5 |
5 |
# Fichier : jobka/connectors/fnfmb.py |
| 6 |
|
−# Rôle : Connecteur Avocate générale ou avocat général — dayforce (ns='fnfmb', board='CANDIDATEPORTAL') |
|
6 |
+# Rôle : Connecteur Conseil de gestion financière des Premières Nations |
|
7 |
+# (FNFMB) — dayforce (ns='fnfmb', board='CANDIDATEPORTAL') |
| 7 |
8 |
# [généré par scripts/gen_connectors.py, flux vérifié le 2026-08-23] |
| 8 |
|
−# Créé : 2026-08-23 Modifié : 2026-08-23 |
|
9 |
+# Créé : 2026-08-23 Modifié : 2026-08-31 |
| 9 |
10 |
# ============================================================================= |
|
11 |
+from ..schema import JobPosting |
| 10 |
12 |
from .dayforce import DayforceConnector |
| 11 |
13 |
|
| 12 |
14 |
|
| 13 |
15 |
class FnfmbConnector(DayforceConnector): |
| 14 |
16 |
source_id = 'fnfmb' |
| 15 |
|
− EMPLOYER = 'Avocate générale ou avocat général' |
|
17 |
+ EMPLOYER = 'Conseil de gestion financière des Premières Nations (FNFMB)' |
| 16 |
18 |
NS = 'fnfmb' |
| 17 |
19 |
BOARD = 'CANDIDATEPORTAL' |
|
20 |
+ |
|
21 |
+ # La recherche Dayforce filtre par culture : une offre sans version |
|
22 |
+ # française est invisible en fr-CA. Ce tenant ne publie plus de fr-CA |
|
23 |
+ # (constat 2026-08-31 : fr-CA -> 0, en-CA -> 10 offres), donc on |
|
24 |
+ # interroge les deux cultures et on fusionne, version fr-CA prioritaire. |
|
25 |
+ CULTURES = ('fr-CA', 'en-CA') |
|
26 |
+ |
|
27 |
+ def fetch(self) -> list[JobPosting]: |
|
28 |
+ merged: dict[str, JobPosting] = {} |
|
29 |
+ for culture in self.CULTURES: |
|
30 |
+ self.CULTURE = culture |
|
31 |
+ for job in super().fetch(): |
|
32 |
+ merged.setdefault(job.external_id, job) |
|
33 |
+ return list(merged.values()) |
| 18 |
34 |
|