diff --git a/app/models/dossier.rb b/app/models/dossier.rb index 07d5e73fc..1b5c2a4f9 100644 --- a/app/models/dossier.rb +++ b/app/models/dossier.rb @@ -475,11 +475,21 @@ class Dossier < ApplicationRecord def spreadsheet_columns columns = [ ['ID', id.to_s], - ['Email', user.email], - ['Civilité', individual&.gender], - ['Nom', individual&.nom], - ['Prénom', individual&.prenom], - ['Date de naissance', individual&.birthdate], + ['Email', user.email] + ] + + if procedure.for_individual? + columns += [ + ['Civilité', individual&.gender], + ['Nom', individual&.nom], + ['Prénom', individual&.prenom], + ['Date de naissance', individual&.birthdate] + ] + else + columns << ['Entreprise raison sociale', etablissement&.entreprise_raison_sociale] + end + + columns += [ ['Archivé', :archived], ['État du dossier', I18n.t(state, scope: [:activerecord, :attributes, :dossier, :state])], ['Dernière mise à jour le', :updated_at], diff --git a/spec/services/procedure_export_v2_service_spec.rb b/spec/services/procedure_export_v2_service_spec.rb index 12a3cf945..5635c0380 100644 --- a/spec/services/procedure_export_v2_service_spec.rb +++ b/spec/services/procedure_export_v2_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' describe ProcedureExportV2Service do describe 'to_data' do - let(:procedure) { create(:procedure, :published, :with_all_champs) } + let(:procedure) { create(:procedure, :published, :for_individual, :with_all_champs) } subject do Tempfile.create do |f| f << ProcedureExportV2Service.new(procedure, procedure.dossiers).to_xlsx @@ -104,12 +104,55 @@ describe ProcedureExportV2Service do end context 'with etablissement' do + let(:procedure) { create(:procedure, :published, :with_all_champs) } let!(:dossier) { create(:dossier, :en_instruction, :with_all_champs, :with_entreprise, procedure: procedure) } let(:dossier_etablissement) { etablissements_sheet.data[1] } let(:champ_etablissement) { etablissements_sheet.data[0] } + let(:nominal_headers) do + [ + "ID", + "Email", + "Entreprise raison sociale", + "Archivé", + "État du dossier", + "Dernière mise à jour le", + "Déposé le", + "Passé en instruction le", + "Traité le", + "Motivation de la décision", + "Instructeurs", + "textarea", + "date", + "datetime", + "number", + "decimal_number", + "integer_number", + "checkbox", + "civilite", + "email", + "phone", + "address", + "yes_no", + "simple_drop_down_list", + "multiple_drop_down_list", + "linked_drop_down_list", + "pays", + "regions", + "departements", + "engagement", + "dossier_link", + "piece_justificative", + "siret", + "carte", + "text" + ] + end + it 'should have headers' do + expect(dossiers_sheet.headers).to match(nominal_headers) + expect(etablissements_sheet.headers).to eq([ "Dossier ID", "Champ",