[fix #504] Dossier: closed -> accepte

This commit is contained in:
Simon Lehericey 2017-12-04 18:00:12 +01:00 committed by LeSim
parent 3dda27b281
commit a13256f73d
28 changed files with 78 additions and 58 deletions

View file

@ -18,7 +18,7 @@ class Users::RecapitulatifController < UsersController
def self.route_authorization
{
states: [:en_construction, :en_instruction, :without_continuation, :closed, :refused]
states: [:en_construction, :en_instruction, :without_continuation, :accepte, :refused]
}
end

View file

@ -1,6 +1,6 @@
module DossierHelper
def button_or_label_class(dossier)
if dossier.closed?
if dossier.accepte?
'accepted'
elsif dossier.without_continuation?
'without-continuation'

View file

@ -3,7 +3,7 @@ class Dossier < ActiveRecord::Base
brouillon: 'brouillon',
en_construction: 'en_construction',
en_instruction: 'en_instruction',
closed: 'closed',
accepte: 'accepte',
refused: 'refused',
without_continuation: 'without_continuation'
}
@ -13,7 +13,7 @@ class Dossier < ActiveRecord::Base
EN_CONSTRUCTION = %w(en_construction)
EN_INSTRUCTION = %w(en_instruction)
EN_CONSTRUCTION_OU_INSTRUCTION = EN_CONSTRUCTION + EN_INSTRUCTION
TERMINE = %w(closed refused without_continuation)
TERMINE = %w(accepte refused without_continuation)
has_one :etablissement, dependent: :destroy
has_one :entreprise, dependent: :destroy
@ -168,7 +168,7 @@ class Dossier < ActiveRecord::Base
self.attestation = build_attestation
save
closed!
accepte!
if motivation
self.motivation = motivation
@ -283,7 +283,7 @@ class Dossier < ActiveRecord::Base
end
def read_only?
en_instruction? || closed? || refused? || without_continuation?
en_instruction? || accepte? || refused? || without_continuation?
end
def owner? email
@ -364,7 +364,7 @@ class Dossier < ActiveRecord::Base
end
def statut
if closed?
if accepte?
'accepté'
elsif without_continuation?
'classé sans suite'

View file

@ -41,6 +41,8 @@ class DossierSerializer < ActiveModel::Serializer
'initiated'
when 'en_instruction'
'received'
when 'accepte'
'closed'
else
object.state
end

View file

@ -28,6 +28,8 @@ class DossierTableExportSerializer < ActiveModel::Serializer
'initiated'
when 'en_instruction'
'received'
when 'accepte'
'closed'
else
object.state
end

View file

@ -2,7 +2,7 @@
%span.label.instruction en instruction
- elsif dossier.en_construction?
%span.label.construction en construction
- elsif dossier.closed?
- elsif dossier.accepte?
%span.label.accepted accepté
- elsif dossier.refused?
%span.label.refused refusé

View file

@ -11,7 +11,7 @@ fr:
brouillon: "Brouillon"
en_construction: "En construction"
en_instruction: "En instruction"
closed: "Accepté"
accepte: "Accepté"
refused: "Refusé"
without_continuation: "Sans suite"

View file

@ -10,4 +10,8 @@ namespace :'2017_12_04_translate_dossier_state_to_french' do
task en_instruction: :environment do
Dossier.unscoped.where(state: 'received').update_all(state: 'en_instruction')
end
task accepte: :environment do
Dossier.unscoped.where(state: 'closed').update_all(state: 'accepte')
end
end

View file

@ -302,11 +302,11 @@ describe Backoffice::DossiersController, type: :controller do
subject { post :process_dossier, params: { process_action: "close", dossier_id: dossier_id} }
it 'change state to closed' do
it 'change state to accepte' do
subject
dossier.reload
expect(dossier.state).to eq('closed')
expect(dossier.state).to eq('accepte')
end
context 'when the dossier does not have any attestation' do

View file

@ -177,11 +177,11 @@ describe NewGestionnaire::DossiersController, type: :controller do
subject { post :terminer, params: { process_action: "accepter", procedure_id: procedure.id, dossier_id: dossier.id} }
it 'change state to closed' do
it 'change state to accepte' do
subject
dossier.reload
expect(dossier.state).to eq('closed')
expect(dossier.state).to eq('accepte')
end
context 'when the dossier does not have any attestation' do

View file

@ -143,7 +143,7 @@ describe NewGestionnaire::ProceduresController, type: :controller do
gestionnaire.procedures << procedure2
create(:dossier, :followed, procedure: procedure2, state: "en_construction")
create(:dossier, procedure: procedure2, state: "closed")
create(:dossier, procedure: procedure2, state: "accepte")
gestionnaire.followed_dossiers << create(:dossier, procedure: procedure2, state: "en_instruction")
subject
@ -225,7 +225,7 @@ describe NewGestionnaire::ProceduresController, type: :controller do
end
context 'with a termine dossier with a follower' do
let!(:termine_dossier) { create(:dossier, procedure: procedure, state: 'closed') }
let!(:termine_dossier) { create(:dossier, procedure: procedure, state: 'accepte') }
before do
get :show, params: { procedure_id: procedure.id }
@ -255,7 +255,7 @@ describe NewGestionnaire::ProceduresController, type: :controller do
describe 'statut' do
let!(:a_suivre__dossier) { Timecop.freeze(1.day.ago){ create(:dossier, procedure: procedure, state: 'en_instruction') } }
let!(:new_followed_dossier) { Timecop.freeze(2.day.ago){ create(:dossier, procedure: procedure, state: 'en_instruction') } }
let!(:termine_dossier) { Timecop.freeze(3.day.ago){ create(:dossier, procedure: procedure, state: 'closed') } }
let!(:termine_dossier) { Timecop.freeze(3.day.ago){ create(:dossier, procedure: procedure, state: 'accepte') } }
let!(:archived_dossier) { Timecop.freeze(4.day.ago){ create(:dossier, procedure: procedure, state: 'en_instruction', archived: true) } }
before do

View file

@ -158,7 +158,7 @@ describe StatsController, type: :controller do
:processed_at => 2.month.ago.beginning_of_month + 4.days)
# Write directly in the DB to avoid the before_validation hook
Dossier.update_all(state: "closed")
Dossier.update_all(state: "accepte")
@expected_hash = {
"#{2.months.ago.beginning_of_month}" => 3.0,
@ -210,7 +210,7 @@ describe StatsController, type: :controller do
:processed_at => 2.month.ago.beginning_of_month + 1.day)
# Write directly in the DB to avoid the before_validation hook
Dossier.update_all(state: "closed")
Dossier.update_all(state: "accepte")
@expected_hash = {
"#{2.months.ago.beginning_of_month}" => 30.0,

View file

@ -41,7 +41,7 @@ describe Users::RecapitulatifController, type: :controller do
post :initiate, params: {dossier_id: dossier.id}
end
it 'dossier change his state for closed' do
it 'dossier change his state for accepte' do
dossier.reload
expect(dossier.state).to eq('en_construction')
end

View file

@ -32,8 +32,8 @@ describe DossierDecorator do
expect(subject).to eq('En construction')
end
it 'closed is traité' do
dossier.closed!
it 'accepte is traité' do
dossier.accepte!
expect(subject).to eq('Accepté')
end

View file

@ -29,7 +29,7 @@ feature 'The gestionnaire part' do
end
dossier.reload
expect(dossier.state).to eq('closed')
expect(dossier.state).to eq('accepte')
expect(dossier.motivation).to eq('a good reason')
end

View file

@ -8,7 +8,7 @@ feature 'on click on tabs button' do
before do
create(:dossier, :with_entreprise, user: user, state: 'en_construction')
create(:dossier, :with_entreprise, user: user, state: 'en_instruction')
create(:dossier, :with_entreprise, user: user, state: 'closed')
create(:dossier, :with_entreprise, user: user, state: 'accepte')
create(:dossier, :with_entreprise, user: user, state: 'refused')
create(:dossier, :with_entreprise, user: user, state: 'without_continuation')

View file

@ -23,7 +23,7 @@ RSpec.describe AutoArchiveProcedureJob, type: :job do
let!(:dossier3) { create(:dossier, procedure: procedure_hier, state: 'en_construction', archived: false)}
let!(:dossier4) { create(:dossier, procedure: procedure_hier, state: 'en_construction', archived: false)}
let!(:dossier5) { create(:dossier, procedure: procedure_hier, state: 'en_instruction', archived: false)}
let!(:dossier6) { create(:dossier, procedure: procedure_hier, state: 'closed', archived: false)}
let!(:dossier6) { create(:dossier, procedure: procedure_hier, state: 'accepte', archived: false)}
let!(:dossier7) { create(:dossier, procedure: procedure_hier, state: 'refused', archived: false)}
let!(:dossier8) { create(:dossier, procedure: procedure_hier, state: 'without_continuation', archived: false)}
let!(:dossier9) { create(:dossier, procedure: procedure_aujourdhui, state: 'en_construction', archived: false)}
@ -44,7 +44,7 @@ RSpec.describe AutoArchiveProcedureJob, type: :job do
it { expect(dossier3.state).to eq 'en_instruction' }
it { expect(dossier4.state).to eq 'en_instruction' }
it { expect(dossier5.state).to eq 'en_instruction' }
it { expect(dossier6.state).to eq 'closed' }
it { expect(dossier6.state).to eq 'accepte' }
it { expect(dossier7.state).to eq 'refused' }
it { expect(dossier8.state).to eq 'without_continuation' }
it { expect(dossier9.state).to eq 'en_instruction' }

View file

@ -227,7 +227,7 @@ describe Dossier do
context 'when he closes the dossier' do
let(:action) { 'close' }
it { is_expected.to eq('closed') }
it { is_expected.to eq('accepte') }
end
end
end
@ -284,9 +284,9 @@ describe Dossier do
end
end
context 'when dossier is at state closed' do
context 'when dossier is at state accepte' do
before do
dossier.closed!
dossier.accepte!
end
context 'when user is connect' do
@ -295,7 +295,7 @@ describe Dossier do
context 'when is post a comment' do
let(:action) { 'comment' }
it { is_expected.to eq('closed') }
it { is_expected.to eq('accepte') }
end
end
@ -305,7 +305,7 @@ describe Dossier do
context 'when is post a comment' do
let(:action) { 'comment' }
it { is_expected.to eq('closed') }
it { is_expected.to eq('accepte') }
end
end
end
@ -739,10 +739,10 @@ describe Dossier do
it { expect(dossier.processed_at).to eq(beginning_of_day) }
end
context 'when dossier is closed' do
context 'when dossier is accepte' do
let(:state) { 'en_instruction' }
it_behaves_like 'dossier is processed', 'closed'
it_behaves_like 'dossier is processed', 'accepte'
end
context 'when dossier is refused' do
@ -783,8 +783,8 @@ describe Dossier do
expect(NotificationMailer).to have_received(:send_dossier_received).with(dossier.id)
end
it "does not an email when the dossier becomes closed" do
dossier.closed!
it "does not an email when the dossier becomes accepte" do
dossier.accepte!
expect(NotificationMailer).to_not have_received(:send_dossier_received)
end
end
@ -807,7 +807,7 @@ describe Dossier do
it "does not send an email when the dossier is created with a non brouillon state" do
expect { Dossier.create(procedure: procedure, state: "en_construction", user: user) }.not_to change(ActionMailer::Base.deliveries, :size)
expect { Dossier.create(procedure: procedure, state: "en_instruction", user: user) }.not_to change(ActionMailer::Base.deliveries, :size)
expect { Dossier.create(procedure: procedure, state: "closed", user: user) }.not_to change(ActionMailer::Base.deliveries, :size)
expect { Dossier.create(procedure: procedure, state: "accepte", user: user) }.not_to change(ActionMailer::Base.deliveries, :size)
expect { Dossier.create(procedure: procedure, state: "refused", user: user) }.not_to change(ActionMailer::Base.deliveries, :size)
expect { Dossier.create(procedure: procedure, state: "without_continuation", user: user) }.not_to change(ActionMailer::Base.deliveries, :size)
end

View file

@ -332,7 +332,7 @@ describe Procedure do
context 'when there are some dossiers' do
let!(:dossier){ create(:dossier, procedure: procedure, state: 'en_construction') }
let!(:dossier2){ create(:dossier, procedure: procedure, state: 'closed') }
let!(:dossier2){ create(:dossier, procedure: procedure, state: 'accepte') }
it { expect(subject[:data].size).to eq(2) }
it { expect(subject[:headers]).to eq(dossier.export_headers) }

View file

@ -15,5 +15,11 @@ describe DossierSerializer do
it { is_expected.to include(received_at: dossier.en_instruction_at) }
it { is_expected.to include(state: 'received') }
end
context 'when the dossier is accepte' do
let(:dossier) { create(:dossier, state: :accepte) }
it { is_expected.to include(state: 'closed') }
end
end
end

View file

@ -17,6 +17,12 @@ describe DossierTableExportSerializer do
it { is_expected.to include(received_at: dossier.en_instruction_at) }
it { is_expected.to include(state: 'received') }
end
context 'when the dossier is accepte' do
let(:dossier) { create(:dossier, state: :accepte) }
it { is_expected.to include(state: 'closed') }
end
end
describe '#emails_accompagnateurs' do

View file

@ -350,12 +350,12 @@ describe DossiersListGestionnaireService do
let!(:dossier3) { create(:dossier, procedure: procedure, state: 'en_construction') } #nouveaux
let!(:dossier6) { create(:dossier, procedure: procedure, state: 'en_instruction') } #a_instruire
let!(:dossier7) { create(:dossier, procedure: procedure, state: 'en_instruction') } #a_instruire
let!(:dossier8) { create(:dossier, procedure: procedure, state: 'closed') } #termine
let!(:dossier8) { create(:dossier, procedure: procedure, state: 'accepte') } #termine
let!(:dossier9) { create(:dossier, procedure: procedure, state: 'refused') } #termine
let!(:dossier10) { create(:dossier, procedure: procedure, state: 'without_continuation') } #termine
let!(:dossier11) { create(:dossier, procedure: procedure, state: 'closed') } #termine
let!(:dossier11) { create(:dossier, procedure: procedure, state: 'accepte') } #termine
let!(:dossier12) { create(:dossier, procedure: procedure, state: 'en_construction', archived: true) } #a_traiter #archived
let!(:dossier14) { create(:dossier, procedure: procedure, state: 'closed', archived: true) } #termine #archived
let!(:dossier14) { create(:dossier, procedure: procedure, state: 'accepte', archived: true) } #termine #archived
describe '#termine' do
subject { DossiersListGestionnaireService.new(gestionnaire, liste, procedure).termine }

View file

@ -23,8 +23,8 @@ describe UserRoutesAuthorizationService do
it { is_expected.to be_falsey }
end
describe 'closed' do
let(:state) { 'closed' }
describe 'accepte' do
let(:state) { 'accepte' }
it { is_expected.to be_falsey }
end
end
@ -43,8 +43,8 @@ describe UserRoutesAuthorizationService do
it { is_expected.to be_falsey }
end
describe 'closed' do
let(:state) { 'closed' }
describe 'accepte' do
let(:state) { 'accepte' }
it { is_expected.to be_falsey }
end
end
@ -62,8 +62,8 @@ describe UserRoutesAuthorizationService do
it { is_expected.to be_truthy }
end
describe 'closed' do
let(:state) { 'closed' }
describe 'accepte' do
let(:state) { 'accepte' }
it { is_expected.to be_falsey }
end
end
@ -82,8 +82,8 @@ describe UserRoutesAuthorizationService do
it { is_expected.to be_truthy }
end
describe 'closed' do
let(:state) { 'closed' }
describe 'accepte' do
let(:state) { 'accepte' }
it { is_expected.to be_falsey }
end
end
@ -101,8 +101,8 @@ describe UserRoutesAuthorizationService do
it { is_expected.to be_truthy }
end
describe 'closed' do
let(:state) { 'closed' }
describe 'accepte' do
let(:state) { 'accepte' }
it { is_expected.to be_truthy }
end
end

View file

@ -8,7 +8,7 @@ describe 'backoffice/dossiers/index.html.haml', type: :view do
let!(:decorate_dossier_en_construction) { create(:dossier, :with_entreprise, procedure: procedure, state: 'en_construction').decorate }
let!(:decorate_dossier_en_instruction) { create(:dossier, :with_entreprise, procedure: procedure, state: 'en_instruction').decorate }
let!(:decorate_dossier_closed) { create(:dossier, :with_entreprise, procedure: procedure, state: 'closed').decorate }
let!(:decorate_dossier_accepte) { create(:dossier, :with_entreprise, procedure: procedure, state: 'accepte').decorate }
let!(:decorate_dossier_refused) { create(:dossier, :with_entreprise, procedure: procedure, state: 'refused').decorate }
let!(:decorate_dossier_without_continuation) { create(:dossier, :with_entreprise, procedure: procedure, state: 'without_continuation').decorate }
@ -20,7 +20,7 @@ describe 'backoffice/dossiers/index.html.haml', type: :view do
before do
decorate_dossier_en_instruction.entreprise.update_column(:raison_sociale, 'plup')
decorate_dossier_closed.entreprise.update_column(:raison_sociale, 'plyp')
decorate_dossier_accepte.entreprise.update_column(:raison_sociale, 'plyp')
decorate_dossier_refused.entreprise.update_column(:raison_sociale, 'plzp')
decorate_dossier_without_continuation.entreprise.update_column(:raison_sociale, 'plnp')

View file

@ -2,7 +2,7 @@ require 'spec_helper'
describe 'backoffice/dossiers/show.html.haml', type: :view do
let!(:dossier) { create(:dossier, :with_entreprise, state: state, motivation: "Motivation de décision") }
let(:state) { 'closed' }
let(:state) { 'accepte' }
let(:dossier_id) { dossier.id }
let(:gestionnaire) { create(:gestionnaire) }

View file

@ -56,8 +56,8 @@ describe 'layouts/left_panels/_left_panel_backoffice_dossierscontroller_show.htm
end
end
context 'when dossier have state closed' do
let(:state) { 'closed' }
context 'when dossier have state accepte' do
let(:state) { 'accepte' }
before do
render

View file

@ -20,8 +20,8 @@ describe 'layouts/left_panels/_left_panel_users_recapitulatifcontroller_show.htm
it { expect(rendered).to have_content('En construction') }
end
context 'when dossier state is closed' do
let(:state) { 'closed' }
context 'when dossier state is accepte' do
let(:state) { 'accepte' }
before do
render

View file

@ -5,7 +5,7 @@ describe 'users/dossiers/index.html.haml', type: :view do
let!(:decorate_dossier_en_construction) { create(:dossier, :with_entreprise, user: user, state: 'en_construction').decorate }
let!(:decorate_dossier_en_instruction) { create(:dossier, :with_entreprise, user: user, state: 'en_instruction').decorate }
let!(:decorate_dossier_closed) { create(:dossier, :with_entreprise, user: user, state: 'closed').decorate }
let!(:decorate_dossier_accepte) { create(:dossier, :with_entreprise, user: user, state: 'accepte').decorate }
let!(:decorate_dossier_refused) { create(:dossier, :with_entreprise, user: user, state: 'refused').decorate }
let!(:decorate_dossier_without_continuation) { create(:dossier, :with_entreprise, user: user, state: 'without_continuation').decorate }
let!(:decorate_dossier_invite) { create(:dossier, :with_entreprise, user: create(:user), state: 'en_construction').decorate }
@ -67,7 +67,7 @@ describe 'users/dossiers/index.html.haml', type: :view do
let(:liste) { 'termine' }
it_behaves_like 'check_tab_content' do
let(:decorate_dossier_at_check) { decorate_dossier_closed }
let(:decorate_dossier_at_check) { decorate_dossier_accepte }
end
it_behaves_like 'check_tab_content' do