diff --git a/app/models/procedure.rb b/app/models/procedure.rb index b2e6cb781..7c097252f 100644 --- a/app/models/procedure.rb +++ b/app/models/procedure.rb @@ -1,8 +1,6 @@ require Rails.root.join('lib', 'percentile') class Procedure < ApplicationRecord - self.ignored_columns = [:administrateur_id] - MAX_DUREE_CONSERVATION = 36 has_many :types_de_piece_justificative, -> { ordered }, dependent: :destroy diff --git a/lib/tasks/deployment/20190429103024_add_procedure_administrateur_to_administrateurs_for_hidden_procedures.rake b/lib/tasks/deployment/20190429103024_add_procedure_administrateur_to_administrateurs_for_hidden_procedures.rake new file mode 100644 index 000000000..182387bf4 --- /dev/null +++ b/lib/tasks/deployment/20190429103024_add_procedure_administrateur_to_administrateurs_for_hidden_procedures.rake @@ -0,0 +1,19 @@ +namespace :after_party do + desc 'Deployment task: add_procedure_administrateur_to_administrateurs_for_hidden_procedures' + task add_procedure_administrateur_to_administrateurs_for_hidden_procedures: :environment do + rake_puts "Running deploy task: 'add_procedure_administrateur_to_administrateurs_for_hidden_procedures'" + hidden_procedures = Procedure.unscoped.hidden.includes(:administrateurs) + progress = ProgressReport.new(hidden_procedures.count) + + hidden_procedures.find_each do |procedure| + deprecated_administrateur = Administrateur.find_by(id: procedure.administrateur_id) + if deprecated_administrateur && !procedure.administrateurs.include?(deprecated_administrateur) + procedure.administrateurs << deprecated_administrateur + end + progress.inc + end + + progress.finish + AfterParty::TaskRecord.create version: '20190429103024' + end +end diff --git a/spec/models/dossier_spec.rb b/spec/models/dossier_spec.rb index 0ab8763f5..ea85160af 100644 --- a/spec/models/dossier_spec.rb +++ b/spec/models/dossier_spec.rb @@ -31,7 +31,7 @@ describe Dossier do let(:procedure) { create(:procedure, duree_conservation_dossiers_dans_ds: 6) } let!(:young_dossier) { create(:dossier, procedure: procedure) } let!(:expiring_dossier) { create(:dossier, :en_instruction, en_instruction_at: 170.days.ago, procedure: procedure) } - let!(:just_expired_dossier) { create(:dossier, :en_instruction, en_instruction_at: (6.months + 1.second).ago, procedure: procedure) } + let!(:just_expired_dossier) { create(:dossier, :en_instruction, en_instruction_at: (6.months + 1.hour + 1.second).ago, procedure: procedure) } let!(:long_expired_dossier) { create(:dossier, :en_instruction, en_instruction_at: 1.year.ago, procedure: procedure) } context 'with default delay to end of retention' do