feat(manager data exports): add exports for newsletter
This commit is contained in:
parent
7cf81d3e9b
commit
d5de21fac4
4 changed files with 43 additions and 4 deletions
|
@ -49,7 +49,19 @@ module Manager
|
|||
end
|
||||
end
|
||||
|
||||
send_data csv, filename: "administrateurs_#{Date.today.strftime('%d-%m-%Y')}.csv"
|
||||
send_data csv, filename: "administrateurs_recents_#{Date.today.strftime('%d-%m-%Y')}.csv"
|
||||
end
|
||||
|
||||
def export_with_publiee_procedure
|
||||
administrateurs = Administrateur.joins(:user).where.not(users: { email_verified_at: nil }).joins(:procedures).where(procedures: { aasm_state: [:publiee] })
|
||||
csv = CSV.generate(headers: true) do |csv|
|
||||
csv << ['ID', 'Email', 'Date de création']
|
||||
administrateurs.each do |administrateur|
|
||||
csv << [administrateur.id, administrateur.email, administrateur.created_at]
|
||||
end
|
||||
end
|
||||
|
||||
send_data csv, filename: "administrateurs_actifs_#{Date.today.strftime('%d-%m-%Y')}.csv"
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -32,7 +32,19 @@ module Manager
|
|||
end
|
||||
end
|
||||
|
||||
send_data csv, filename: "instructeurs_#{Date.today.strftime('%d-%m-%Y')}.csv"
|
||||
send_data csv, filename: "instructeurs_recents_#{Date.today.strftime('%d-%m-%Y')}.csv"
|
||||
end
|
||||
|
||||
def export_currently_active
|
||||
instructeurs = Instructeur.joins(:user).where(users: { current_sign_in_at: 6.months.ago.. }).where.not(users: { email_verified_at: nil })
|
||||
csv = CSV.generate(headers: true) do |csv|
|
||||
csv << ['ID', 'Email', 'Date de création']
|
||||
instructeurs.each do |instructeur|
|
||||
csv << [instructeur.id, instructeur.email, instructeur.created_at]
|
||||
end
|
||||
end
|
||||
|
||||
send_data csv, filename: "instructeurs_actifs_#{Date.today.strftime('%d-%m-%Y')}.csv"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,6 +1,19 @@
|
|||
<div>
|
||||
<header class="main-content__header">
|
||||
<h1 class="main-content__page-title">
|
||||
Export des administrateurs et instructeurs
|
||||
</h1>
|
||||
</header>
|
||||
|
||||
<section class="main-content__body">
|
||||
<h2>Pour les invitations aux webinaires</h2>
|
||||
<ul>
|
||||
<li><a href="/manager/exports/administrateurs/last_half_year">Export des administrateurs créés dans les 6 derniers mois</a></li>
|
||||
<li><a href="/manager/exports/instructeurs/last_half_year">Export des instructeurs créés dans les 6 derniers mois</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2>Pour les newsletters</h2>
|
||||
<ul>
|
||||
<li><a href="/manager/exports/administrateurs/with_publiee_procedure">Export des administrateurs avec au moins une démarche publiée</a></li>
|
||||
<li><a href="/manager/exports/instructeurs/currently_active">Export des instructeurs qui se sont connectés dans les 6 derniers mois</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
|
|
|
@ -117,6 +117,8 @@ Rails.application.routes.draw do
|
|||
get 'data_exports' => 'administrateurs#data_exports'
|
||||
get 'exports/administrateurs/last_half_year' => 'administrateurs#export_last_half_year'
|
||||
get 'exports/instructeurs/last_half_year' => 'instructeurs#export_last_half_year'
|
||||
get 'exports/administrateurs/with_publiee_procedure' => 'administrateurs#export_with_publiee_procedure'
|
||||
get 'exports/instructeurs/currently_active' => 'instructeurs#export_currently_active'
|
||||
|
||||
get 'import_procedure_tags' => 'procedures#import_data'
|
||||
post 'import_tags' => 'procedures#import_tags'
|
||||
|
|
Loading…
Reference in a new issue