Skip to content

Commit

Permalink
ne pas prendre en compte les acteur non actif dans displayedacteur
Browse files Browse the repository at this point in the history
  • Loading branch information
kolok committed Jan 23, 2025
1 parent b42603b commit 486b669
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 9 deletions.
6 changes: 6 additions & 0 deletions dags/compute_acteurs/tasks/business_logic/compute_acteur.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import pandas as pd
import shortuuid
from sources.config import shared_constants as constants


def compute_acteur(df_acteur: pd.DataFrame, df_revisionacteur: pd.DataFrame):
Expand All @@ -24,16 +25,21 @@ def compute_acteur(df_acteur: pd.DataFrame, df_revisionacteur: pd.DataFrame):
.query("parent_id.notnull()")
.drop_duplicates(subset=["parent_id", "identifiant_unique"])
)
df_children = df_children[df_children["statut"] == constants.ACTEUR_ACTIF]
df_children = pd.merge(
df_children[["parent_id", "identifiant_unique"]],
df_acteur_merged[["identifiant_unique", "source_id"]],
on="identifiant_unique",
)

df_acteur_merged = df_acteur_merged[
~df_acteur_merged["identifiant_unique"].isin(
df_children["identifiant_unique"].tolist()
)
].copy()
df_acteur_merged = df_acteur_merged[
df_acteur_merged["statut"] == constants.ACTEUR_ACTIF
]

# Add a new column uuid to make the displayedacteur id without source name in id
df_acteur_merged["uuid"] = df_acteur_merged["identifiant_unique"].apply(
Expand Down
45 changes: 36 additions & 9 deletions dags/compute_acteurs/tasks/business_logic/db_data_write.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,44 @@


def db_data_write(
df_acteur_merged=pd.DataFrame,
df_labels_updated=pd.DataFrame,
df_acteur_services_updated=pd.DataFrame,
df_acteur_sources_updated=pd.DataFrame,
df_propositionservice_merged=pd.DataFrame,
df_propositionservice_sous_categories_merged=pd.DataFrame,
df_acteur_merged: pd.DataFrame,
df_labels_updated: pd.DataFrame,
df_acteur_services_updated: pd.DataFrame,
df_acteur_sources_updated: pd.DataFrame,
df_propositionservice_merged: pd.DataFrame,
df_propositionservice_sous_categories_merged: pd.DataFrame,
):

df_propositionservice_sous_categories_merged.rename(
columns={"propositionservice_id": "displayedpropositionservice_id"},
inplace=True,
df_labels_updated = df_labels_updated[
df_labels_updated["displayedacteur_id"].isin(
df_acteur_merged["identifiant_unique"]
)
]

df_acteur_services_updated = df_acteur_services_updated[
df_acteur_services_updated["displayedacteur_id"].isin(
df_acteur_merged["identifiant_unique"]
)
]

df_acteur_sources_updated = df_acteur_sources_updated[
df_acteur_sources_updated["displayedacteur_id"].isin(
df_acteur_merged["identifiant_unique"]
)
]

df_propositionservice_merged = df_propositionservice_merged[
df_propositionservice_merged["acteur_id"].isin(
df_acteur_merged["identifiant_unique"]
)
]

df_propositionservice_sous_categories_merged = (
df_propositionservice_sous_categories_merged[
df_propositionservice_sous_categories_merged[
"displayedpropositionservice_id"
].isin(df_propositionservice_merged["id"])
]
)

engine = PostgresConnectionManager().engine
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,10 @@ def deduplicate_propositionservices(
[df_ps_sscat, df_parents_ps_sscat],
ignore_index=True,
)
df_ps_sscat.rename(
columns={"propositionservice_id": "displayedpropositionservice_id"},
inplace=True,
)

# suppression des ps des enfants
df_ps = df_ps[~df_ps["acteur_id"].isin(children_ids)]
Expand Down

0 comments on commit 486b669

Please sign in to comment.