[Fix #2002] Create missing accuse de reception messages
This commit is contained in:
parent
e91029a25d
commit
44af4e95f1
1 changed files with 29 additions and 0 deletions
29
lib/tasks/2018_05_30_missed_ar_messages.rake
Normal file
29
lib/tasks/2018_05_30_missed_ar_messages.rake
Normal file
|
@ -0,0 +1,29 @@
|
|||
namespace :'2018_05_30_missed_ar_messages' do
|
||||
task restore: :environment do
|
||||
create_commentaires(:en_construction_at, :initiated_mail_template)
|
||||
create_commentaires(:processed_at, :closed_mail_template, Dossier.where(state: 'accepte'))
|
||||
create_commentaires(:processed_at, :refused_mail_template, Dossier.where(state: 'refuse'))
|
||||
create_commentaires(:processed_at, :without_continuation_mail_template, Dossier.where(state: 'sans_suite'))
|
||||
end
|
||||
|
||||
def create_commentaires(date_name, template_name, dossiers = Dossier)
|
||||
error_range = DateTime.new(2018, 05, 28, 13, 33)..DateTime.new(2018, 05, 30, 15, 39)
|
||||
|
||||
dossiers.includes(:procedure).where(date_name => error_range).find_each(batch_size: 100) do |dossier|
|
||||
print "#{dossier.id}\n"
|
||||
create_commentaire(dossier, dossier.procedure.send(template_name), dossier.send(date_name))
|
||||
end
|
||||
end
|
||||
|
||||
def create_commentaire(dossier, template, date)
|
||||
subject = template.subject_for_dossier(dossier)
|
||||
body = template.body_for_dossier(dossier)
|
||||
|
||||
Commentaire.create(
|
||||
dossier: dossier,
|
||||
email: I18n.t("dynamics.contact_email"),
|
||||
body: "[#{subject}]<br><br>#{body}",
|
||||
created_at: date
|
||||
)
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue