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
|
||||
|
||||
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])
|
||||
|
||||
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'
|
||||
get 'print' => 'dossiers#print'
|
||||
get 'telecharger_pjs' => 'dossiers#telecharger_pjs'
|
||||
post 'reaffecter_un_dossier'
|
||||
get 'reaffectation'
|
||||
post 'reaffecter'
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -1152,7 +1152,27 @@ describe Instructeurs::DossiersController, type: :controller do
|
|||
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!(:dossier) { create(:dossier, :en_construction, procedure: procedure, groupe_instructeur: procedure.groupe_instructeurs.first) }
|
||||
|
||||
|
|
Loading…
Reference in a new issue