feat(users/dossiers?statut=dossiers-expirant): add dossiers-expirant tab

This commit is contained in:
Martin 2021-11-19 15:14:39 +01:00
parent eecc0c38b6
commit 3d1533dee9
5 changed files with 32 additions and 4 deletions

View file

@ -24,7 +24,8 @@ module Users
.with_dossiers .with_dossiers
.where(email: current_user.email) .where(email: current_user.email)
.page(page) .page(page)
@statut = statut(@user_dossiers, @dossiers_invites, @dossiers_supprimes, @dossier_transfers, params[:statut]) @dossiers_close_to_expiration = current_user.dossiers.close_to_expiration.page(page)
@statut = statut(@user_dossiers, @dossiers_invites, @dossiers_supprimes, @dossier_transfers, @dossiers_close_to_expiration, params[:statut])
end end
def show def show
@ -291,12 +292,13 @@ module Users
# if the status tab is filled, then this tab # if the status tab is filled, then this tab
# else first filled tab # else first filled tab
# else mes-dossiers # else mes-dossiers
def statut(mes_dossiers, dossiers_invites, dossiers_supprimes, dossier_transfers, params_statut) def statut(mes_dossiers, dossiers_invites, dossiers_supprimes, dossier_transfers, dossiers_close_to_expiration, params_statut)
tabs = { tabs = {
'mes-dossiers' => mes_dossiers.present?, 'mes-dossiers' => mes_dossiers.present?,
'dossiers-invites' => dossiers_invites.present?, 'dossiers-invites' => dossiers_invites.present?,
'dossiers-supprimes' => dossiers_supprimes.present?, 'dossiers-supprimes' => dossiers_supprimes.present?,
'dossiers-transferes' => dossier_transfers.present? 'dossiers-transferes' => dossier_transfers.present?,
'dossiers-expirant' => dossiers_close_to_expiration.present?
} }
if tabs[params_statut] if tabs[params_statut]
params_statut params_statut

View file

@ -39,6 +39,12 @@
active: @statut == 'dossiers-transferes', active: @statut == 'dossiers-transferes',
badge: number_with_html_delimiter(@dossier_transfers.count)) badge: number_with_html_delimiter(@dossier_transfers.count))
- if @dossiers_close_to_expiration.count > 0
= tab_item(t('pluralize.dossiers_close_to_expiration', count: @dossiers_close_to_expiration.count),
dossiers_path(statut: 'dossiers-expirant'),
active: @statut == 'dossiers-expirant',
badge: number_with_html_delimiter(@dossiers_close_to_expiration.count))
.container .container
- if @statut == "mes-dossiers" - if @statut == "mes-dossiers"
= render partial: "dossiers_list", locals: { dossiers: @user_dossiers } = render partial: "dossiers_list", locals: { dossiers: @user_dossiers }
@ -48,6 +54,8 @@
- if @statut == "dossiers-supprimes" - if @statut == "dossiers-supprimes"
= render partial: "deleted_dossiers_list", locals: { deleted_dossiers: @dossiers_supprimes } = render partial: "deleted_dossiers_list", locals: { deleted_dossiers: @dossiers_supprimes }
- if @statut == "dossiers-transferes" - if @statut == "dossiers-transferes"
= render partial: "transfered_dossiers_list", locals: { dossier_transfers: @dossier_transfers } = render partial: "transfered_dossiers_list", locals: { dossier_transfers: @dossier_transfers }
- if @statut == "dossiers-expirant"
= render partial: "dossiers_list", locals: { dossiers: @dossiers_close_to_expiration }

View file

@ -339,6 +339,10 @@ en:
zero: transfer request zero: transfer request
one: transfer request one: transfer request
other: transfer requests other: transfer requests
dossiers_close_to_expiration:
zero: expiring file
one: expiring file
other: expiring files
dossier_trouve: dossier_trouve:
zero: 0 file found zero: 0 file found
one: 1 file found one: 1 file found

View file

@ -347,6 +347,10 @@ fr:
zero: demande de transfert zero: demande de transfert
one: demande de transfert one: demande de transfert
other: demandes de transfert other: demandes de transfert
dossiers_close_to_expiration:
zero: dossier expirant
one: dossier expirant
other: dossiers expirant
dossier_trouve: dossier_trouve:
zero: 0 dossier trouvé zero: 0 dossier trouvé
one: 1 dossier trouvé one: 1 dossier trouvé

View file

@ -1125,4 +1125,14 @@ describe Users::DossiersController, type: :controller do
it { is_expected.to be_falsy } it { is_expected.to be_falsy }
end end
end end
describe '#index' do
before do
sign_in(user)
end
it 'works' do
get :index
expect(response).to have_http_status(:ok)
end
end
end end