feat(routing): add view for dossier a reaffecter
This commit is contained in:
parent
e7e702a574
commit
18054fe346
4 changed files with 58 additions and 3 deletions
|
@ -331,7 +331,17 @@ module Instructeurs
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def reaffecter_un_dossier
|
def reaffectation
|
||||||
|
@dossier = current_instructeur.dossiers.find(params[:dossier_id])
|
||||||
|
|
||||||
|
@groupe_instructeur = @dossier.groupe_instructeur
|
||||||
|
|
||||||
|
@groupes_instructeurs = Kaminari.paginate_array(@groupe_instructeur.other_groupe_instructeurs)
|
||||||
|
.page(params[:page])
|
||||||
|
.per(ITEMS_PER_PAGE)
|
||||||
|
end
|
||||||
|
|
||||||
|
def reaffecter
|
||||||
dossier = current_instructeur.dossiers.find(params[:dossier_id])
|
dossier = current_instructeur.dossiers.find(params[:dossier_id])
|
||||||
|
|
||||||
new_group = dossier
|
new_group = dossier
|
||||||
|
|
24
app/views/instructeurs/dossiers/reaffectation.html.haml
Normal file
24
app/views/instructeurs/dossiers/reaffectation.html.haml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
- content_for(:title, "Réaffectation · Dossier nº #{@dossier.id} (#{@dossier.owner_name})")
|
||||||
|
|
||||||
|
= render partial: "header", locals: { dossier: @dossier }
|
||||||
|
|
||||||
|
.container.groupe-instructeur
|
||||||
|
|
||||||
|
.card
|
||||||
|
.card-title Réaffectation du dossier nº #{@dossier.id} du groupe « #{@groupe_instructeur.label} »
|
||||||
|
%p
|
||||||
|
Vous pouvez réaffecter le dossier nº #{@dossier.id} à l'un des groupes d'instructeurs suivants.
|
||||||
|
%table.table.mt-2
|
||||||
|
%thead
|
||||||
|
%tr
|
||||||
|
%th{ colspan: 2 }= t("instructeurs.dossiers.existing_groupe", count: @groupes_instructeurs.total_count)
|
||||||
|
%tbody
|
||||||
|
- @groupes_instructeurs.each do |group|
|
||||||
|
%tr
|
||||||
|
%td= group.label
|
||||||
|
%td.actions= button_to 'Réaffecter le dossier à ce groupe',
|
||||||
|
reaffecter_instructeur_dossier_path(procedure_id: @dossier.procedure.id, dossier_id: @dossier.id, groupe_instructeur_id: group.id),
|
||||||
|
{ class: 'button',
|
||||||
|
data: { confirm: "Êtes-vous sûr de vouloir réaffecter le dossier nº #{@dossier.id} du groupe « #{@groupe_instructeur.label} » vers le groupe « #{group.label} » ?" } }
|
||||||
|
|
||||||
|
= paginate @groupes_instructeurs, views_prefix: 'shared'
|
|
@ -450,7 +450,8 @@ Rails.application.routes.draw do
|
||||||
post 'avis' => 'dossiers#create_avis'
|
post 'avis' => 'dossiers#create_avis'
|
||||||
get 'print' => 'dossiers#print'
|
get 'print' => 'dossiers#print'
|
||||||
get 'telecharger_pjs' => 'dossiers#telecharger_pjs'
|
get 'telecharger_pjs' => 'dossiers#telecharger_pjs'
|
||||||
post 'reaffecter_un_dossier'
|
get 'reaffectation'
|
||||||
|
post 'reaffecter'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1152,7 +1152,27 @@ describe Instructeurs::DossiersController, type: :controller do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '#reaffecter_un_dossier' do
|
describe '#reaffectation' do
|
||||||
|
let!(:gi_2) { GroupeInstructeur.create(label: 'deuxième groupe', procedure: procedure) }
|
||||||
|
let!(:gi_3) { GroupeInstructeur.create(label: 'troisième groupe', procedure: procedure) }
|
||||||
|
let!(:dossier) { create(:dossier, :en_construction, procedure: procedure, groupe_instructeur: procedure.groupe_instructeurs.first) }
|
||||||
|
|
||||||
|
before do
|
||||||
|
post :reaffectation,
|
||||||
|
params: {
|
||||||
|
procedure_id: procedure.id,
|
||||||
|
dossier_id: dossier.id
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
it do
|
||||||
|
expect(response).to have_http_status(:ok)
|
||||||
|
expect(response.body).to include("Vous pouvez réaffecter le dossier nº #{dossier.id} à l'un des groupes d'instructeurs suivants.")
|
||||||
|
expect(response.body).to include('2 groupes existent')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '#reaffecter' do
|
||||||
let!(:gi_2) { GroupeInstructeur.create(label: 'deuxième groupe', procedure: procedure) }
|
let!(:gi_2) { GroupeInstructeur.create(label: 'deuxième groupe', procedure: procedure) }
|
||||||
let!(:dossier) { create(:dossier, :en_construction, procedure: procedure, groupe_instructeur: procedure.groupe_instructeurs.first) }
|
let!(:dossier) { create(:dossier, :en_construction, procedure: procedure, groupe_instructeur: procedure.groupe_instructeurs.first) }
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue