24 lines
738 B
Ruby
24 lines
738 B
Ruby
|
require Rails.root.join("lib", "tasks", "task_helper")
|
||
|
|
||
|
namespace :routing_engine do
|
||
|
desc <<~EOD
|
||
|
Given an id in argument, run the RoutingEngine for a dossier, after having set `forced_groupe_instructeur` field to false.
|
||
|
ex: rails routing_engine:run\[1352684\]
|
||
|
EOD
|
||
|
task :run, [:dossier_id] => :environment do |_t, args|
|
||
|
dossier = Dossier.find_by(id: args[:dossier_id])
|
||
|
|
||
|
if dossier.present?
|
||
|
dossier.update!(forced_groupe_instructeur: false)
|
||
|
|
||
|
dossier.reload
|
||
|
|
||
|
RoutingEngine.compute(dossier)
|
||
|
|
||
|
rake_puts "Dossier #{args[:dossier_id]} routed to groupe instructeur #{dossier.groupe_instructeur.label}"
|
||
|
else
|
||
|
rake_puts "Dossier with id #{args[:dossier_id]} not found in db"
|
||
|
end
|
||
|
end
|
||
|
end
|