[fix #4058] instructeur peut passer accepte → instruction
This commit is contained in:
parent
e0a8aff393
commit
053cc5cfc5
3 changed files with 12 additions and 17 deletions
|
@ -112,12 +112,8 @@ module Instructeurs
|
||||||
if dossier.en_instruction?
|
if dossier.en_instruction?
|
||||||
flash.notice = 'Le dossier est déjà en instruction.'
|
flash.notice = 'Le dossier est déjà en instruction.'
|
||||||
else
|
else
|
||||||
if dossier.accepte?
|
flash.notice = "Le dossier #{dossier.id} a été repassé en instruction."
|
||||||
flash.notice = 'Il n’est pas possible de repasser un dossier accepté en instruction.'
|
dossier.repasser_en_instruction!(current_instructeur)
|
||||||
else
|
|
||||||
flash.notice = "Le dossier #{dossier.id} a été repassé en instruction."
|
|
||||||
dossier.repasser_en_instruction!(current_instructeur)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
render partial: 'state_button_refresh', locals: { dossier: dossier }
|
render partial: 'state_button_refresh', locals: { dossier: dossier }
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
- if dossier.en_construction? || dossier.en_instruction?
|
- if dossier.en_construction? || dossier.en_instruction? || dossier.accepte?
|
||||||
%span.dropdown
|
%span.dropdown
|
||||||
%button.button.primary.dropdown-button
|
%button.button.primary.dropdown-button
|
||||||
= dossier_display_state dossier
|
= dossier_display_state dossier
|
||||||
|
@ -17,6 +17,13 @@
|
||||||
%h4 Passer en instruction
|
%h4 Passer en instruction
|
||||||
L'usager ne pourra plus modifier le formulaire
|
L'usager ne pourra plus modifier le formulaire
|
||||||
|
|
||||||
|
- if dossier.accepte?
|
||||||
|
%li
|
||||||
|
= link_to repasser_en_instruction_instructeur_dossier_path(dossier.procedure, dossier), method: :post, data: { remote: true, confirm: "Confirmez-vous le passage en instruction de ce dossier ?" } do
|
||||||
|
%span.icon.in-progress
|
||||||
|
.dropdown-description
|
||||||
|
%h4 Passer en instruction
|
||||||
|
L'usager ne pourra plus modifier le formulaire
|
||||||
- if dossier.en_instruction?
|
- if dossier.en_instruction?
|
||||||
%li
|
%li
|
||||||
= link_to repasser_en_construction_instructeur_dossier_path(dossier.procedure, dossier), method: :post, data: { remote:true, confirm: "Confirmez-vous le passage en construction de ce dossier ?" } do
|
= link_to repasser_en_construction_instructeur_dossier_path(dossier.procedure, dossier), method: :post, data: { remote:true, confirm: "Confirmez-vous le passage en construction de ce dossier ?" } do
|
||||||
|
|
|
@ -169,18 +169,10 @@ describe Instructeurs::DossiersController, type: :controller do
|
||||||
context 'when the dossier is accepte' do
|
context 'when the dossier is accepte' do
|
||||||
let(:dossier) { create(:dossier, :accepte, procedure: procedure) }
|
let(:dossier) { create(:dossier, :accepte, procedure: procedure) }
|
||||||
|
|
||||||
it 'it is not possible to go back to en_instruction as instructeur' do
|
it 'it is possible to go back to en_instruction as instructeur' do
|
||||||
expect(dossier.reload.state).to eq(Dossier.states.fetch(:accepte))
|
expect(dossier.reload.state).to eq(Dossier.states.fetch(:en_instruction))
|
||||||
expect(response).to have_http_status(:ok)
|
expect(response).to have_http_status(:ok)
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'as superadmin' do
|
|
||||||
let (:current_user) { administration }
|
|
||||||
it 'it is not possible to go back to en_instruction' do
|
|
||||||
expect(dossier.reload.state).to eq(Dossier.states.fetch(:accepte))
|
|
||||||
expect(response).to have_http_status(:ok)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue