demarches-normaliennes/lib/tasks/clean_services.rake
2024-08-22 09:26:48 +02:00

23 lines
884 B
Ruby

# frozen_string_literal: true
namespace :service do
desc 'remove service without procedure'
task remove_orphans: :environment do
puts "Destroying services without procedure..."
Service.joins('LEFT OUTER JOIN "procedures" ON "procedures"."service_id" = "services"."id"')
.where(procedures: { id: nil })
.destroy_all
puts "Services without procedure destroyed"
end
desc 'email admins with published procedures with service without siret'
task email_no_siret: :environment do
admins = Administrateur.joins(:administrateurs_procedures).where(administrateurs_procedures: { procedure: Procedure.publiees.joins(:service).where(service: { siret: nil }) })
progress = ProgressReport.new(admins.count)
admins.each do |admin|
AdministrateurMailer.notify_service_without_siret(admin.email).deliver_later
progress.inc
end
end
end