diff --git a/app/controllers/manager/administrateurs_controller.rb b/app/controllers/manager/administrateurs_controller.rb index eb69eb473..23b047f96 100644 --- a/app/controllers/manager/administrateurs_controller.rb +++ b/app/controllers/manager/administrateurs_controller.rb @@ -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 diff --git a/app/controllers/manager/instructeurs_controller.rb b/app/controllers/manager/instructeurs_controller.rb index ffe95bc78..4c72a1662 100644 --- a/app/controllers/manager/instructeurs_controller.rb +++ b/app/controllers/manager/instructeurs_controller.rb @@ -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 diff --git a/app/views/manager/administrateurs/data_exports.html.erb b/app/views/manager/administrateurs/data_exports.html.erb index fbe47f6fc..1e3d897cd 100644 --- a/app/views/manager/administrateurs/data_exports.html.erb +++ b/app/views/manager/administrateurs/data_exports.html.erb @@ -1,6 +1,19 @@ -
+
+

+ Export des administrateurs et instructeurs +

+
+ +
+

Pour les invitations aux webinaires

-
+ +

Pour les newsletters

+ + diff --git a/config/routes.rb b/config/routes.rb index 02846ab5b..58fe3255c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -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'