Skip to content

Commit

Permalink
starmetric de mon recap
Browse files Browse the repository at this point in the history
  • Loading branch information
YannickPassa committed Sep 24, 2024
1 parent c148c29 commit 2706760
Show file tree
Hide file tree
Showing 9 changed files with 111 additions and 0 deletions.
8 changes: 8 additions & 0 deletions dbt/models/monrecap/monrecap_marts/monrecap_starmetric.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
select
{{ pilo_star(ref('stg_commandes_starmetric'),relation_alias="starm") }},
rep.total_answers
from {{ ref('stg_starmetric') }} as starm
left join {{ ref('stg_total_reponses') }} as rep
on
extract(year from starm.derniere_reponse_barometre) = rep.annee
and extract(month from starm.derniere_reponse_barometre) = rep.mois
File renamed without changes.
21 changes: 21 additions & 0 deletions dbt/models/monrecap/monrecap_staging/properties.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
version: 2

models:
- name: stg_commandes_starmetric
description: >
Vue créée afin de récupérer les colonnes de la table commandes nécessaires au calcul de la mesure d'impact de Mon Récap
- name: stg_barometre_starmetric
description: >
Vue créée afin de récupérer les colonnes de la table baromètre nécessaires au calcul de la mesure d'impact de Mon Récap
- name: stg_baro_commandes_starmetric
description: >
Vue créée afin de récupérer les colonnes de la table baromètre,commandes et contacts nécessaires au calcul de la mesure d'impact de Mon Récap
- name: stg_email_departement
description: >
Vue créée afin de récupérer les départements par utilisateurs de la table commandes
- name: stg_total_reponses
description: >
Vue créée afin de récupérer le total de réponses au baromètre par date
- name: stg_starmetric
description: >
Vue créée afin de créer l'indicateur d'impact de Mon Récap. Cette vue est jointe a la vue stg_total_reponses pour la création de l'indicateur final.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
select
{{ pilo_star(ref('stg_commandes_starmetric'),relation_alias="cmd") }},
{{ pilo_star(ref('stg_barometre_starmetric'), relation_alias="baro") }},
contacts."EMAIL" as email,
contacts."STRUCTURE" as structure,
contacts."Date de dernière réponse au baromètre"::DATE as date_de_derniere_reponse_au_barometre,
contacts."Date de dernière commande" as date_de_derniere_commande,
contacts."Date de première commande" as date_de_premiere_commande
from {{ ref('stg_commandes_starmetric') }} as cmd
left join {{ ref('stg_barometre_starmetric') }} as baro
on cmd.email_commande = baro.votre_adresse_mail
left join {{ source('monrecap', 'Contacts') }} as contacts
on cmd.email_commande = contacts."EMAIL"
13 changes: 13 additions & 0 deletions dbt/models/monrecap/monrecap_staging/stg_barometre_starmetric.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
select
"Combien de carnets avez-vous distribués depuis le début de vo" as combien_de_carnets_distribues,
"Parmi ces usagers, combien d'usagers ont perdu le carnet ou ne " as combien_dusagers_ont_perdu_le_carnet,
"Avez-vous constaté une amélioration dans le parcours de vos u" as amelioration_avec_mon_recap,
max("Submitted at"::DATE) as derniere_reponse_barometre,
coalesce("email", "Votre adresse mail ?") as votre_adresse_mail
from {{ source('monrecap', 'barometre') }}
group by
"Combien de carnets avez-vous distribués depuis le début de vo",
"Parmi ces usagers, combien d'usagers ont perdu le carnet ou ne ",
"Avez-vous constaté une amélioration dans le parcours de vos u",
"Votre adresse mail ?",
"email"
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
select
"Email" as email_commande,
sum("Nombre de Carnets") as nombre_total_carnets_commandes
from {{ source('monrecap', 'Commandes') }}
group by
"Email"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
select
"Email" as email_commande,
"Nom Departement" as nom_departement
from {{ source('monrecap', 'Commandes') }}
group by
"Email",
"Nom Departement"
35 changes: 35 additions & 0 deletions dbt/models/monrecap/monrecap_staging/stg_starmetric.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
select
starm.derniere_reponse_barometre,
starm.date_de_derniere_reponse_au_barometre,
starm.email,
starm.email_commande,
starm.structure,
starm.date_de_premiere_commande,
starm.date_de_derniere_commande,
starm.nombre_total_carnets_commandes,
starm.combien_de_carnets_distribues,
starm.combien_dusagers_ont_perdu_le_carnet,
starm.amelioration_avec_mon_recap,
dpt.nom_departement,
0.971 as taux_de_perte,
case
when starm.date_de_derniere_reponse_au_barometre is not null then 'Oui'
else 'Non'
end as reponse_barometre
from {{ ref('stg_baro_commandes_starmetric') }} as starm
left join {{ ref('stg_email_departement') }} as dpt
on starm.email_commande = dpt.email_commande
where (starm.date_de_derniere_reponse_au_barometre = starm.derniere_reponse_barometre or starm.derniere_reponse_barometre is null or starm.date_de_derniere_reponse_au_barometre is null)
group by
starm.derniere_reponse_barometre,
starm.date_de_derniere_reponse_au_barometre,
starm.email,
starm.email_commande,
starm.structure,
starm.date_de_premiere_commande,
starm.date_de_derniere_commande,
starm.nombre_total_carnets_commandes,
starm.combien_de_carnets_distribues,
starm.combien_dusagers_ont_perdu_le_carnet,
starm.amelioration_avec_mon_recap,
dpt.nom_departement
8 changes: 8 additions & 0 deletions dbt/models/monrecap/monrecap_staging/stg_total_reponses.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
select
extract(year from derniere_reponse_barometre) as annee,
extract(month from derniere_reponse_barometre) as mois,
count(*) as total_answers
from
{{ ref('stg_starmetric') }}
group by
annee, mois

0 comments on commit 2706760

Please sign in to comment.