feat(dossier): add dossier transfers UI
This commit is contained in:
parent
5985755229
commit
3235f42a63
12 changed files with 135 additions and 8 deletions
|
@ -1,7 +1,8 @@
|
|||
- has_edit_action = !dossier.read_only?
|
||||
- has_delete_action = dossier.can_be_deleted_by_user?
|
||||
- has_new_dossier_action = dossier.procedure.accepts_new_dossiers?
|
||||
|
||||
- has_actions = has_delete_action || has_new_dossier_action
|
||||
- has_transfer_action = dossier.user == current_user
|
||||
- has_actions = has_edit_action || has_delete_action || has_new_dossier_action || has_transfer_action
|
||||
|
||||
- if has_actions
|
||||
.dropdown.user-dossier-actions
|
||||
|
@ -9,7 +10,7 @@
|
|||
= t('views.users.dossiers.dossier_action.actions')
|
||||
#actions-menu.dropdown-content.fade-in-down
|
||||
%ul.dropdown-items
|
||||
- if !dossier.read_only?
|
||||
- if has_edit_action
|
||||
- if dossier.brouillon?
|
||||
%li
|
||||
= link_to(url_for_dossier(dossier)) do
|
||||
|
@ -23,6 +24,13 @@
|
|||
.dropdown-description
|
||||
= t('views.users.dossiers.dossier_action.edit_dossier')
|
||||
|
||||
- if has_transfer_action
|
||||
%li
|
||||
= link_to transferer_dossier_path(dossier) do
|
||||
%span.icon.person
|
||||
.dropdown-description
|
||||
= t('views.users.dossiers.dossier_action.transfer_dossier')
|
||||
|
||||
- if has_new_dossier_action
|
||||
%li
|
||||
= link_to procedure_lien(dossier.procedure) do
|
||||
|
|
32
app/views/users/dossiers/_transfered_dossiers_list.html.haml
Normal file
32
app/views/users/dossiers/_transfered_dossiers_list.html.haml
Normal file
|
@ -0,0 +1,32 @@
|
|||
- if dossier_transfers.present?
|
||||
%ul.dossiers-transfers.mb-2
|
||||
- dossier_transfers.each do |transfer|
|
||||
%li.mb-4
|
||||
.transfer-details.mb-2
|
||||
Demande de transfert Nº #{transfer.id} envoyé par #{transfer.dossiers.first.user.email}
|
||||
%table.table.dossiers-table.hoverable
|
||||
%thead
|
||||
%tr
|
||||
%th.number-col= t('views.users.dossiers.dossiers_list.n_dossier')
|
||||
%th= t('views.users.dossiers.dossiers_list.procedure')
|
||||
%th= t('views.users.dossiers.dossiers_list.status')
|
||||
%th Date de dépot
|
||||
%tbody
|
||||
- transfer.dossiers.each do |dossier|
|
||||
%tr{ data: { 'transfer-id': transfer.id } }
|
||||
%td.number-col
|
||||
%span.icon.folder
|
||||
= dossier.id
|
||||
%td= dossier.procedure.libelle
|
||||
%td= status_badge(dossier.state)
|
||||
%td{ style: 'padding: 18px;' }= (dossier.en_construction_at || dossier.created_at).strftime('%d/%m/%Y')
|
||||
|
||||
.transfer-actions.mt-4
|
||||
= link_to "Accepter", transfer_path(transfer), class: "button primary", method: :put
|
||||
= link_to "Rejeter", transfer_path(transfer), class: "button danger", method: :delete
|
||||
|
||||
= paginate(dossier_transfers)
|
||||
|
||||
- else
|
||||
.blank-tab
|
||||
%h2.empty-text Aucune demande de transfert de dossiers ne vous a été adressée.
|
|
@ -33,6 +33,11 @@
|
|||
active: @statut == 'dossiers-supprimes',
|
||||
badge: number_with_html_delimiter(@dossiers_supprimes.count))
|
||||
|
||||
- if @dossier_transfers.count > 0
|
||||
= tab_item(t('pluralize.dossiers_transferes', count: @dossier_transfers.count),
|
||||
dossiers_path(statut: 'dossiers-transferes'),
|
||||
active: @statut == 'dossiers-transferes',
|
||||
badge: number_with_html_delimiter(@dossier_transfers.count))
|
||||
|
||||
.container
|
||||
- if @statut == "mes-dossiers"
|
||||
|
@ -43,3 +48,6 @@
|
|||
|
||||
- if @statut == "dossiers-supprimes"
|
||||
= render partial: "deleted_dossiers_list", locals: { deleted_dossiers: @dossiers_supprimes }
|
||||
|
||||
- if @statut == "dossiers-transferes"
|
||||
= render partial: "transfered_dossiers_list", locals: { dossier_transfers: @dossier_transfers }
|
||||
|
|
9
app/views/users/dossiers/transferer.html.haml
Normal file
9
app/views/users/dossiers/transferer.html.haml
Normal file
|
@ -0,0 +1,9 @@
|
|||
.container.mt-4
|
||||
- dossier = @transfer.dossiers.first
|
||||
Transferer le dossier #{dossier_display_state(dossier.state, lower: true)} nº #{@dossier.id} déposé par #{demandeur_dossier(dossier)} le #{try_format_date(dossier.created_at)} vers le compte d‘un autre usager :
|
||||
|
||||
= form_for @transfer, url: transfers_path, html: { class: 'form mt-2' } do |f|
|
||||
= f.label :email, 'Email du compte destinataire'
|
||||
= f.email_field :email
|
||||
= f.hidden_field :dossiers, value: dossier.id
|
||||
= f.submit "Envoyer la demande de transfert", class: 'button primary'
|
7
app/views/users/dossiers/transferer_all.html.haml
Normal file
7
app/views/users/dossiers/transferer_all.html.haml
Normal file
|
@ -0,0 +1,7 @@
|
|||
.container.mt-4
|
||||
Transferer les #{@transfer.dossiers.size} dossiers de votre compte vers le compte d‘un autre usager :
|
||||
|
||||
= form_for @transfer, url: transfers_path, html: { class: 'form mt-2' } do |f|
|
||||
= f.label :email, 'Email du compte destinataire'
|
||||
= f.email_field :email
|
||||
= f.submit "Envoyer la demande de transfert", class: 'button primary'
|
Loading…
Add table
Add a link
Reference in a new issue