simplifie tabs supprimes and reduce to one

This commit is contained in:
Lisa Durand 2024-07-18 14:15:29 +02:00
parent e4d460965f
commit ab483a8959
No known key found for this signature in database
GPG key ID: 0DF91F2CA1E8B816
26 changed files with 76 additions and 73 deletions

View file

@ -7,7 +7,7 @@ class Dossiers::BatchOperationComponent < ApplicationComponent
end end
def render? def render?
['a-suivre', 'traites', 'suivis', 'archives', 'supprimes_recemment', 'expirant'].include?(@statut) ['a-suivre', 'traites', 'suivis', 'archives', 'supprimes', 'expirant'].include?(@statut)
end end
def operations_for_dossier(dossier) def operations_for_dossier(dossier)
@ -81,7 +81,7 @@ class Dossiers::BatchOperationComponent < ApplicationComponent
} }
] ]
} }
when 'supprimes_recemment' then when 'supprimes' then
{ {
options: options:
[ [

View file

@ -36,7 +36,7 @@ module Instructeurs
@dossiers_archived_count_per_procedure = dossiers.by_statut('archives').group('groupe_instructeurs.procedure_id').count @dossiers_archived_count_per_procedure = dossiers.by_statut('archives').group('groupe_instructeurs.procedure_id').count
@dossiers_termines_count_per_procedure = dossiers.by_statut('traites').group('groupe_instructeurs.procedure_id').reorder(nil).count @dossiers_termines_count_per_procedure = dossiers.by_statut('traites').group('groupe_instructeurs.procedure_id').reorder(nil).count
@dossiers_expirant_count_per_procedure = dossiers.by_statut('expirant').group('groupe_instructeurs.procedure_id').count @dossiers_expirant_count_per_procedure = dossiers.by_statut('expirant').group('groupe_instructeurs.procedure_id').count
@dossiers_supprimes_recemment_count_per_procedure = dossiers.by_statut('supprimes_recemment').group('groupe_instructeurs.procedure_id').reorder(nil).count @dossiers_supprimes_count_per_procedure = dossiers.by_statut('supprimes').group('groupe_instructeurs.procedure_id').reorder(nil).count
groupe_ids = current_instructeur.groupe_instructeurs.pluck(:id) groupe_ids = current_instructeur.groupe_instructeurs.pluck(:id)
@followed_dossiers_count_per_procedure = current_instructeur @followed_dossiers_count_per_procedure = current_instructeur
@ -56,7 +56,7 @@ module Instructeurs
t('.all') => @dossiers_count_per_procedure.sum { |_, v| v }, t('.all') => @dossiers_count_per_procedure.sum { |_, v| v },
t('.dossiers_close_to_expiration') => @dossiers_expirant_count_per_procedure.sum { |_, v| v }, t('.dossiers_close_to_expiration') => @dossiers_expirant_count_per_procedure.sum { |_, v| v },
t('.archived') => @dossiers_archived_count_per_procedure.sum { |_, v| v }, t('.archived') => @dossiers_archived_count_per_procedure.sum { |_, v| v },
t('.dossiers_supprimes_recemment') => @dossiers_supprimes_recemment_count_per_procedure.sum { |_, v| v } t('.dossiers_supprimes') => @dossiers_supprimes_count_per_procedure.sum { |_, v| v }
} }
@procedure_ids_en_cours_with_notifications = current_instructeur.procedure_ids_with_notifications(:en_cours) @procedure_ids_en_cours_with_notifications = current_instructeur.procedure_ids_with_notifications(:en_cours)
@ -120,9 +120,9 @@ module Instructeurs
.order(:dossier_id) .order(:dossier_id)
.page params[:page] .page params[:page]
@a_suivre_count, @suivis_count, @traites_count, @tous_count, @archives_count, @supprimes_recemment_count, @expirant_count = current_instructeur @a_suivre_count, @suivis_count, @traites_count, @tous_count, @archives_count, @supprimes_count, @expirant_count = current_instructeur
.dossiers_count_summary(groupe_instructeur_ids) .dossiers_count_summary(groupe_instructeur_ids)
.fetch_values('a_suivre', 'suivis', 'traites', 'tous', 'archives', 'supprimes_recemment', 'expirant') .fetch_values('a_suivre', 'suivis', 'traites', 'tous', 'archives', 'supprimes', 'expirant')
@can_download_dossiers = (@tous_count + @archives_count) > 0 && !instructeur_as_manager? @can_download_dossiers = (@tous_count + @archives_count) > 0 && !instructeur_as_manager?
notifications = current_instructeur.notifications_for_groupe_instructeurs(groupe_instructeur_ids) notifications = current_instructeur.notifications_for_groupe_instructeurs(groupe_instructeur_ids)

View file

@ -57,12 +57,12 @@ module Users
@user_dossiers = current_user.dossiers.state_not_termine.merge(@dossiers_visibles) @user_dossiers = current_user.dossiers.state_not_termine.merge(@dossiers_visibles)
@dossiers_traites = current_user.dossiers.state_termine.merge(@dossiers_visibles) @dossiers_traites = current_user.dossiers.state_termine.merge(@dossiers_visibles)
@dossiers_invites = current_user.dossiers_invites.merge(@dossiers_visibles) @dossiers_invites = current_user.dossiers_invites.merge(@dossiers_visibles)
@dossiers_supprimes_recemment = (current_user.dossiers.hidden_by_user.or(current_user.dossiers.hidden_by_expired)).merge(ordered_dossiers) @dossiers_supprimes = (current_user.dossiers.hidden_by_user.or(current_user.dossiers.hidden_by_expired)).merge(ordered_dossiers)
@dossier_transferes = @dossiers_visibles.where(dossier_transfer_id: DossierTransfer.for_email(current_user.email)) @dossier_transferes = @dossiers_visibles.where(dossier_transfer_id: DossierTransfer.for_email(current_user.email))
@dossiers_close_to_expiration = current_user.dossiers.close_to_expiration.merge(@dossiers_visibles) @dossiers_close_to_expiration = current_user.dossiers.close_to_expiration.merge(@dossiers_visibles)
@dossiers_supprimes_definitivement = deleted_dossiers @dossiers_historique = deleted_dossiers
@statut = statut(@user_dossiers, @dossiers_traites, @dossiers_invites, @dossiers_supprimes_recemment, @dossiers_supprimes_definitivement, @dossier_transferes, @dossiers_close_to_expiration, params[:statut]) @statut = statut(@user_dossiers, @dossiers_traites, @dossiers_invites, @dossiers_supprimes, @dossier_transferes, @dossiers_close_to_expiration, params[:statut])
@dossiers = case @statut @dossiers = case @statut
when 'en-cours' when 'en-cours'
@ -71,10 +71,8 @@ module Users
@dossiers_traites @dossiers_traites
when 'dossiers-invites' when 'dossiers-invites'
@dossiers_invites @dossiers_invites
when 'dossiers-supprimes-recemment' when 'dossiers-supprimes'
@dossiers_supprimes_recemment @dossiers_supprimes
when 'dossiers-supprimes-definitivement'
@dossiers_supprimes_definitivement
when 'dossiers-transferes' when 'dossiers-transferes'
@dossier_transferes @dossier_transferes
when 'dossiers-expirant' when 'dossiers-expirant'
@ -436,13 +434,12 @@ 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 en-cours # else en-cours
def statut(mes_dossiers, dossiers_traites, dossiers_invites, dossiers_supprimes_recemment, dossiers_supprimes_definitivement, dossier_transferes, dossiers_close_to_expiration, params_statut) def statut(mes_dossiers, dossiers_traites, dossiers_invites, dossiers_supprimes, dossier_transferes, dossiers_close_to_expiration, params_statut)
tabs = { tabs = {
'en-cours' => mes_dossiers, 'en-cours' => mes_dossiers,
'traites' => dossiers_traites, 'traites' => dossiers_traites,
'dossiers-invites' => dossiers_invites, 'dossiers-invites' => dossiers_invites,
'dossiers-supprimes-recemment' => dossiers_supprimes_recemment, 'dossiers-supprimes' => dossiers_supprimes,
'dossiers-supprimes-definitivement' => dossiers_supprimes_definitivement,
'dossiers-transferes' => dossier_transferes, 'dossiers-transferes' => dossier_transferes,
'dossiers-expirant' => dossiers_close_to_expiration 'dossiers-expirant' => dossiers_close_to_expiration
} }

View file

@ -9,8 +9,8 @@ module TabsHelper
'pluralize.processed' 'pluralize.processed'
when 'tous' when 'tous'
'views.instructeurs.dossiers.tab_steps.total' # i18n-tasks-use t('views.instructeurs.dossiers.tab_steps.total') 'views.instructeurs.dossiers.tab_steps.total' # i18n-tasks-use t('views.instructeurs.dossiers.tab_steps.total')
when 'supprimes_recemment' when 'supprimes'
'pluralize.dossiers_supprimes_recemment' 'pluralize.dossiers_supprimes'
when 'expirant' when 'expirant'
'pluralize.dossiers_close_to_expiration' 'pluralize.dossiers_close_to_expiration'
when 'archives' when 'archives'

View file

@ -416,7 +416,7 @@ class Dossier < ApplicationRecord
visible_by_administration.termine visible_by_administration.termine
when 'tous' when 'tous'
visible_by_administration.all_state visible_by_administration.all_state
when 'supprimes_recemment' when 'supprimes'
hidden_by_administration.state_termine.or(hidden_by_expired) hidden_by_administration.state_termine.or(hidden_by_expired)
when 'archives' when 'archives'
visible_by_administration.archived visible_by_administration.archived

View file

@ -22,7 +22,7 @@ class Export < ApplicationRecord
suivis: 'suivis', suivis: 'suivis',
traites: 'traites', traites: 'traites',
tous: 'tous', tous: 'tous',
supprimes_recemment: 'supprimes_recemment', supprimes: 'supprimes',
archives: 'archives', archives: 'archives',
expirant: 'expirant' expirant: 'expirant'
} }

View file

@ -232,7 +232,7 @@ class Instructeur < ApplicationRecord
COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND not archived AND dossiers.state in ('accepte', 'refuse', 'sans_suite')) AS traites, COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND not archived AND dossiers.state in ('accepte', 'refuse', 'sans_suite')) AS traites,
COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND not archived) AS tous, COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND not archived) AS tous,
COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND archived) AS archives, COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND archived) AS archives,
COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NOT NULL AND not archived OR dossiers.hidden_by_expired_at IS NOT NULL) AS supprimes_recemment, COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NOT NULL AND not archived OR dossiers.hidden_by_expired_at IS NOT NULL) AS supprimes,
COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND procedures.procedure_expires_when_termine_enabled COUNT(DISTINCT dossiers.id) FILTER (where dossiers.hidden_by_administration_at IS NULL AND dossiers.hidden_by_expired_at IS NULL AND procedures.procedure_expires_when_termine_enabled
AND ( AND (
dossiers.state in ('accepte', 'refuse', 'sans_suite') dossiers.state in ('accepte', 'refuse', 'sans_suite')

View file

@ -50,12 +50,12 @@
%li %li
%object %object
= link_to(instructeur_procedure_path(p, statut: 'supprimes_recemment')) do = link_to(instructeur_procedure_path(p, statut: 'supprimes')) do
- dossier_count = dossiers_supprimes_recemment_count_per_procedure[p.id] || 0 - dossier_count = dossiers_supprimes_count_per_procedure[p.id] || 0
.stats-number .stats-number
= number_with_html_delimiter(dossier_count) = number_with_html_delimiter(dossier_count)
.stats-legend .stats-legend
= t('pluralize.dossiers_supprimes_recemment', count: dossier_count) = t('pluralize.dossiers_supprimes', count: dossier_count)
- if p.procedure_expires_when_termine_enabled - if p.procedure_expires_when_termine_enabled
%li %li

View file

@ -22,10 +22,10 @@
active: statut == 'tous', active: statut == 'tous',
badge: number_with_html_delimiter(tous_count)) badge: number_with_html_delimiter(tous_count))
= tab_item(t(tab_i18n_key_from_status('supprimes_recemment'), count: supprimes_recemment_count), = tab_item(t(tab_i18n_key_from_status('supprimes'), count: supprimes_count),
instructeur_procedure_path(procedure, statut: 'supprimes_recemment'), instructeur_procedure_path(procedure, statut: 'supprimes'),
active: statut == 'supprimes_recemment', active: statut == 'supprimes',
badge: number_with_html_delimiter(supprimes_recemment_count)) badge: number_with_html_delimiter(supprimes_count))
- if procedure.procedure_expires_when_termine_enabled - if procedure.procedure_expires_when_termine_enabled
= tab_item(t(tab_i18n_key_from_status('expirant'), count: expirant_count), = tab_item(t(tab_i18n_key_from_status('expirant'), count: expirant_count),

View file

@ -19,7 +19,7 @@
suivis_count: @suivis_count, suivis_count: @suivis_count,
traites_count: @traites_count, traites_count: @traites_count,
tous_count: @tous_count, tous_count: @tous_count,
supprimes_recemment_count: @supprimes_recemment_count, supprimes_count: @supprimes_count,
archives_count: @archives_count, archives_count: @archives_count,
expirant_count: @expirant_count, expirant_count: @expirant_count,
has_en_cours_notifications: @has_en_cours_notifications, has_en_cours_notifications: @has_en_cours_notifications,

View file

@ -41,7 +41,7 @@
dossiers_archived_count_per_procedure: @dossiers_archived_count_per_procedure, dossiers_archived_count_per_procedure: @dossiers_archived_count_per_procedure,
dossiers_termines_count_per_procedure: @dossiers_termines_count_per_procedure, dossiers_termines_count_per_procedure: @dossiers_termines_count_per_procedure,
dossiers_expirant_count_per_procedure: @dossiers_expirant_count_per_procedure, dossiers_expirant_count_per_procedure: @dossiers_expirant_count_per_procedure,
dossiers_supprimes_recemment_count_per_procedure: @dossiers_supprimes_recemment_count_per_procedure, dossiers_supprimes_count_per_procedure: @dossiers_supprimes_count_per_procedure,
followed_dossiers_count_per_procedure: @followed_dossiers_count_per_procedure, followed_dossiers_count_per_procedure: @followed_dossiers_count_per_procedure,
procedure_ids_en_cours_with_notifications: @procedure_ids_en_cours_with_notifications, procedure_ids_en_cours_with_notifications: @procedure_ids_en_cours_with_notifications,
procedure_ids_termines_with_notifications: @procedure_ids_termines_with_notifications } procedure_ids_termines_with_notifications: @procedure_ids_termines_with_notifications }

View file

@ -19,7 +19,7 @@
suivis_count: @counts[:suivis], suivis_count: @counts[:suivis],
traites_count: @counts[:traites], traites_count: @counts[:traites],
tous_count: @counts[:tous], tous_count: @counts[:tous],
supprimes_recemment_count: @counts[:supprimes_recemment], supprimes_count: @counts[:supprimes],
archives_count: @counts[:archives], archives_count: @counts[:archives],
expirant_count: @counts[:expirant], expirant_count: @counts[:expirant],
has_en_cours_notifications: @has_en_cours_notifications, has_en_cours_notifications: @has_en_cours_notifications,
@ -41,9 +41,9 @@
= t('views.instructeurs.dossiers.tab_explainations.tous_with_routing') = t('views.instructeurs.dossiers.tab_explainations.tous_with_routing')
- else - else
= t('views.instructeurs.dossiers.tab_explainations.tous') = t('views.instructeurs.dossiers.tab_explainations.tous')
- if @statut == 'supprimes_recemment' - if @statut == 'supprimes'
%p %p
= t('views.instructeurs.dossiers.tab_explainations.supprimes_recemment').html_safe = t('views.instructeurs.dossiers.tab_explainations.supprimes').html_safe
- if @statut == 'archives' - if @statut == 'archives'
%p %p
= t('views.instructeurs.dossiers.tab_explainations.archives') = t('views.instructeurs.dossiers.tab_explainations.archives')
@ -167,7 +167,7 @@
archived: p.archived, archived: p.archived,
dossier_is_followed: @followed_dossiers_id.include?(p.dossier_id), dossier_is_followed: @followed_dossiers_id.include?(p.dossier_id),
close_to_expiration: @statut == 'expirant', close_to_expiration: @statut == 'expirant',
hidden_by_administration: @statut == 'supprimes_recemment', hidden_by_administration: @statut == 'supprimes',
hidden_by_expired: p.hidden_by_reason == 'expired', hidden_by_expired: p.hidden_by_reason == 'expired',
sva_svr: @procedure.sva_svr_enabled?, sva_svr: @procedure.sva_svr_enabled?,
has_blocking_pending_correction: @procedure.feature_enabled?(:blocking_pending_correction) && p.pending_correction?, has_blocking_pending_correction: @procedure.feature_enabled?(:blocking_pending_correction) && p.pending_correction?,

View file

@ -7,7 +7,7 @@
.flex.justify-between .flex.justify-between
%div %div
%h3.card-title %h3.card-title
- if ["dossiers-transferes", "dossiers-supprimes-recemment"].exclude?(@statut) - if ["dossiers-transferes", "dossiers-supprimes"].exclude?(@statut)
= link_to(url_for_dossier(dossier), class: 'cell-link') do = link_to(url_for_dossier(dossier), class: 'cell-link') do
= dossier.procedure.libelle = dossier.procedure.libelle
- else - else
@ -43,7 +43,11 @@
= t('views.users.dossiers.dossiers_list.n_dossier') = t('views.users.dossiers.dossiers_list.n_dossier')
= number_with_html_delimiter(dossier.id) = number_with_html_delimiter(dossier.id)
= status_badge_user(dossier, 'fr-mb-1w') - if @statut == "dossiers-supprimes"
%span.fr-badge.fr-badge--sm.fr-badge--warning
= t('views.users.dossiers.dossiers_list.deleted_badge')
- else
= status_badge_user(dossier, 'fr-mb-1w')
- if dossier.pending_correction? - if dossier.pending_correction?
%br %br
@ -96,11 +100,11 @@
= link_to t('views.users.dossiers.transfers.revoke'), transfer_path(dossier.transfer), class: 'fr-link', method: :delete = link_to t('views.users.dossiers.transfers.revoke'), transfer_path(dossier.transfer), class: 'fr-link', method: :delete
- if ["dossiers-transferes", "dossiers-supprimes-recemment"].exclude?(@statut) - if ["dossiers-transferes", "dossiers-supprimes"].exclude?(@statut)
.flex.justify-end .flex.justify-end
= render partial: 'dossier_actions', locals: { dossier: dossier } = render partial: 'dossier_actions', locals: { dossier: dossier }
- if @statut == "dossiers-supprimes-recemment" - if @statut == "dossiers-supprimes"
.flex.justify-end .flex.justify-end
- if dossier.hidden_by_reason != 'expired' - if dossier.hidden_by_reason != 'expired'
= link_to restore_dossier_path(dossier.id), method: :patch, class: "fr-btn fr-btn--sm" do = link_to restore_dossier_path(dossier.id), method: :patch, class: "fr-btn fr-btn--sm" do

View file

@ -50,17 +50,11 @@
active: @statut == 'dossiers-expirant', active: @statut == 'dossiers-expirant',
badge: number_with_html_delimiter(@dossiers_close_to_expiration.count)) badge: number_with_html_delimiter(@dossiers_close_to_expiration.count))
- if @dossiers_supprimes_recemment.present? - if @dossiers_supprimes.present?
= tab_item(t('pluralize.dossiers_supprimes_recemment', count: @dossiers_supprimes_recemment.count), = tab_item(t('pluralize.dossiers_supprimes', count: @dossiers_supprimes.count),
dossiers_path(statut: 'dossiers-supprimes-recemment', procedure_id: params[:procedure_id]), dossiers_path(statut: 'dossiers-supprimes', procedure_id: params[:procedure_id]),
active: @statut == 'dossiers-supprimes-recemment', active: @statut == 'dossiers-supprimes',
badge: number_with_html_delimiter(@dossiers_supprimes_recemment.count)) badge: number_with_html_delimiter(@dossiers_supprimes.count))
- if @dossiers_supprimes_definitivement.present?
= tab_item(t('pluralize.dossiers_supprimes_definitivement', count: @dossiers_supprimes_definitivement.count),
dossiers_path(statut: 'dossiers-supprimes-definitivement', procedure_id: params[:procedure_id]),
active: @statut == 'dossiers-supprimes-definitivement',
badge: number_with_html_delimiter(@dossiers_supprimes_definitivement.count))
- if @dossier_transferes.present? - if @dossier_transferes.present?
= tab_item(t('pluralize.dossiers_transferes', count: @dossier_transferes.count), = tab_item(t('pluralize.dossiers_transferes', count: @dossier_transferes.count),

View file

@ -150,7 +150,6 @@ en:
subtitle_two: "Additional notes" subtitle_two: "Additional notes"
content_html: "<p class=\"fr-mb-2w\">The documentation pages are managed by a third-party tool. They are not fully accessible.</p> content_html: "<p class=\"fr-mb-2w\">The documentation pages are managed by a third-party tool. They are not fully accessible.</p>
<p class=\"fr-mb-2w\">FAQ management was delegated to a third-party tool. It was reintegrated into the platform in May 2024 and has not yet been audited.</p>" <p class=\"fr-mb-2w\">FAQ management was delegated to a third-party tool. It was reintegrated into the platform in May 2024 and has not yet been audited.</p>"
preparation: preparation:
title: "Preparation of this accessibility declaration" title: "Preparation of this accessibility declaration"
intro: "This declaration was drawn up on 27 April 2022. It was updated on 14 June 2024." intro: "This declaration was drawn up on 27 April 2022. It was updated on 14 June 2024."
@ -395,7 +394,7 @@ en:
traites_html: "The files in this tab are finished: they have been accepted, refused or closed without follow-up. You can <a href=%{archives_path}>download</a> the zip archives of finished files and their attachments." traites_html: "The files in this tab are finished: they have been accepted, refused or closed without follow-up. You can <a href=%{archives_path}>download</a> the zip archives of finished files and their attachments."
tous: All the files that have been submitted on this approach, included files to be follow and files followed by you or other instructors. tous: All the files that have been submitted on this approach, included files to be follow and files followed by you or other instructors.
tous_with_routing: All the files that have been submitted on this approach, and assigned to your instructors groups. tous_with_routing: All the files that have been submitted on this approach, and assigned to your instructors groups.
supprimes_recemment: All files not <strong>archive</strong>, <strong>completed</strong> and <strong>deleted by the instructors</strong> on this approach. supprimes: All files not <strong>archive</strong>, <strong>completed</strong> and <strong>deleted by the instructors</strong> on this approach.
archives: "The files in this tab are archived: you can no longer reply to them, and requesters can no longer modify them." archives: "The files in this tab are archived: you can no longer reply to them, and requesters can no longer modify them."
expirant: Records will not expire prior to the data retention period. expirant: Records will not expire prior to the data retention period.
archived_dossier: "This file will be kept for an additional month" archived_dossier: "This file will be kept for an additional month"
@ -789,7 +788,7 @@ en:
dossiers_invites: dossiers_invites:
one: guest file one: guest file
other: guest files other: guest files
dossiers_supprimes_recemment: dossiers_supprimes:
one: recently deleted file one: recently deleted file
other: recently deleted files other: recently deleted files
dossiers_supprimes_definitivement: dossiers_supprimes_definitivement:

View file

@ -395,7 +395,7 @@ fr:
traites_html: "Les dossiers dans cet onglet sont terminés : ils ont été acceptés, refusés ou classés sans suite. Vous pouvez <a href=%{archives_path}>télécharger</a> les archives au format zip des dossiers terminés et leurs pièces jointes." traites_html: "Les dossiers dans cet onglet sont terminés : ils ont été acceptés, refusés ou classés sans suite. Vous pouvez <a href=%{archives_path}>télécharger</a> les archives au format zip des dossiers terminés et leurs pièces jointes."
tous: Tous les dossiers déposés sur cette démarche, qu'ils soient à suivre, suivis par vous ou suivis par d'autres instructeurs. tous: Tous les dossiers déposés sur cette démarche, qu'ils soient à suivre, suivis par vous ou suivis par d'autres instructeurs.
tous_with_routing: Tous les dossiers déposés sur cette démarche et attribués aux groupes d'instructeurs dont vous faites partie. tous_with_routing: Tous les dossiers déposés sur cette démarche et attribués aux groupes d'instructeurs dont vous faites partie.
supprimes_recemment: Tous les dossiers <strong>non archivés</strong>, <strong>terminés</strong> et <strong>supprimés par les instructeurs</strong> sur cette démarche supprimes: Tous les dossiers <strong>non archivés</strong>, <strong>terminés</strong> et <strong>supprimés par les instructeurs</strong> sur cette démarche
archives: "Les dossiers de cet onglet sont archivés : vous ne pouvez plus y répondre, et les demandeurs ne peuvent plus les modifier." archives: "Les dossiers de cet onglet sont archivés : vous ne pouvez plus y répondre, et les demandeurs ne peuvent plus les modifier."
expirant: Les dossiers nexpireront pas avant la période de conservation des données. expirant: Les dossiers nexpireront pas avant la période de conservation des données.
archived_dossier: "Le dossier sera conservé 1 mois supplémentaire" archived_dossier: "Le dossier sera conservé 1 mois supplémentaire"
@ -802,10 +802,10 @@ fr:
dossiers_invites: dossiers_invites:
one: dossier invité one: dossier invité
other: dossiers invités other: dossiers invités
dossiers_supprimes_recemment: dossiers_supprimes:
one: supprimé récemment one: supprimé
other: supprimés récemment other: supprimés
dossiers_supprimes_definitivement: dossiers_historique:
one: supprimé définitivement one: supprimé définitivement
other: supprimés définitivement other: supprimés définitivement
dossiers_transferes: dossiers_transferes:

View file

@ -11,7 +11,7 @@ en:
all: files all: files
archived: archived archived: archived
dossiers_close_to_expiration: expiring dossiers_close_to_expiration: expiring
dossiers_supprimes_recemment: recently deleted dossiers_supprimes: recently deleted
copy_link_button: Copy the procedure link to clipboard copy_link_button: Copy the procedure link to clipboard
email_usagers: email_usagers:
contact_users: Contact users (draft) contact_users: Contact users (draft)

View file

@ -11,7 +11,7 @@ fr:
all: dossiers all: dossiers
archived: archivés archived: archivés
dossiers_close_to_expiration: expirant dossiers_close_to_expiration: expirant
dossiers_supprimes_recemment: supprimés dossiers_supprimes: supprimés
copy_link_button: Copier le lien de la démarche dans le presse-papiers copy_link_button: Copier le lien de la démarche dans le presse-papiers
email_usagers: email_usagers:
contact_users: Contacter les usagers (brouillon) contact_users: Contacter les usagers (brouillon)

View file

@ -0,0 +1,10 @@
class RenameSupprimesRecemmentFromProcedurePresentation < ActiveRecord::Migration[7.0]
def up
ProcedurePresentation.update_all(%Q(filters = filters || '{"supprimes": []}'))
change_column_default :procedure_presentations, :filters, { "tous" => [], "suivis" => [], "traites" => [], "a-suivre" => [], "archives" => [], "supprimes" => [], "expirant": [] }
end
def down
change_column_default :procedure_presentations, :filters, { "tous" => [], "suivis" => [], "traites" => [], "a-suivre" => [], "archives" => [], "supprimes_recemment" => [], "expirant": [] }
end
end

View file

@ -862,7 +862,7 @@ ActiveRecord::Schema[7.0].define(version: 2024_07_29_160650) do
t.integer "assign_to_id" t.integer "assign_to_id"
t.datetime "created_at", precision: nil t.datetime "created_at", precision: nil
t.jsonb "displayed_fields", default: [{"label"=>"Demandeur", "table"=>"user", "column"=>"email"}], null: false t.jsonb "displayed_fields", default: [{"label"=>"Demandeur", "table"=>"user", "column"=>"email"}], null: false
t.jsonb "filters", default: {"tous"=>[], "suivis"=>[], "traites"=>[], "a-suivre"=>[], "archives"=>[], "expirant"=>[], "supprimes_recemment"=>[]}, null: false t.jsonb "filters", default: {"tous"=>[], "suivis"=>[], "traites"=>[], "a-suivre"=>[], "archives"=>[], "expirant"=>[], "supprimes"=>[]}, null: false
t.jsonb "sort", default: {"order"=>"desc", "table"=>"notifications", "column"=>"notifications"}, null: false t.jsonb "sort", default: {"order"=>"desc", "table"=>"notifications", "column"=>"notifications"}, null: false
t.datetime "updated_at", precision: nil t.datetime "updated_at", precision: nil
t.index ["assign_to_id"], name: "index_procedure_presentations_on_assign_to_id", unique: true t.index ["assign_to_id"], name: "index_procedure_presentations_on_assign_to_id", unique: true

View file

@ -3,7 +3,7 @@ category: "instructeur"
subcategory: "instruction" subcategory: "instruction"
slug: "a-quoi-correspondent-les-differentes-categories-de-dossiers" slug: "a-quoi-correspondent-les-differentes-categories-de-dossiers"
locale: "fr" locale: "fr"
keywords: "catégories dossiers, à suivre, suivi, traités, supprimé récemment, archivés" keywords: "catégories dossiers, à suivre, suivi, traités, supprimés, archivés"
title: "À quoi correspondent les différentes catégories de dossiers ?" title: "À quoi correspondent les différentes catégories de dossiers ?"
--- ---
@ -14,7 +14,7 @@ Pour chaque démarche, les dossiers sont répartis dans plusieurs onglets :
- **À suivre** : regroupe lensemble des dossiers qui ne sont suivis par aucun instructeur. - **À suivre** : regroupe lensemble des dossiers qui ne sont suivis par aucun instructeur.
- **Suivis** : naffiche que les dossiers que *vous* suivez. Elle ne prend donc pas en compte les dossiers suivis par les autres instructeurs de la démarche. - **Suivis** : naffiche que les dossiers que *vous* suivez. Elle ne prend donc pas en compte les dossiers suivis par les autres instructeurs de la démarche.
- **Traités** : regroupe les dossiers dont le statut est *accepté*, *refusé* ou *classé sans suite* et qui nont pas été archivés. - **Traités** : regroupe les dossiers dont le statut est *accepté*, *refusé* ou *classé sans suite* et qui nont pas été archivés.
- **Supprimé récemment** : regroupe lensemble des dossiers non archivés, terminés et supprimés par les instructeurs de la démarche. - **Supprimés** : regroupe lensemble des dossiers non archivés, terminés et supprimés par les instructeurs de la démarche.
- **Expirant** : les dossiers *en construction* ou *traités*, (archivés ou non), dont le délai dexpiration approche (moins dun mois). À lissue de ce délai, le dossier sera supprimé de la plateforme. - **Expirant** : les dossiers *en construction* ou *traités*, (archivés ou non), dont le délai dexpiration approche (moins dun mois). À lissue de ce délai, le dossier sera supprimé de la plateforme.
- **Archivés** : regroupe lensemble des dossiers archivés. Les instructeurs ne peuvent plus y répondre, et les demandeurs ne peuvent plus les modifier. La messagerie est désactivée. Ces dossiers seront supprimés lorsque leur délai de conservation sur %{application_name} sera expiré. - **Archivés** : regroupe lensemble des dossiers archivés. Les instructeurs ne peuvent plus y répondre, et les demandeurs ne peuvent plus les modifier. La messagerie est désactivée. Ces dossiers seront supprimés lorsque leur délai de conservation sur %{application_name} sera expiré.

View file

@ -48,9 +48,9 @@ describe Dossier, type: :model do
end end
end end
context 'supprimes_recemment' do context 'supprimes' do
it do it do
expect(procedure.dossiers.by_statut('supprimes_recemment')).to match_array([dossier_accepte_deleted, dossier_accepte_archive_deleted]) expect(procedure.dossiers.by_statut('supprimes')).to match_array([dossier_accepte_deleted, dossier_accepte_archive_deleted])
end end
end end

View file

@ -177,17 +177,17 @@ RSpec.describe Export, type: :model do
end end
end end
context 'with procedure_presentation and statut supprimes_recemment' do context 'with procedure_presentation and statut supprimes' do
let(:statut) { 'supprimes_recemment' } let(:statut) { 'supprimes' }
let(:procedure_presentation) do let(:procedure_presentation) do
create(:procedure_presentation, create(:procedure_presentation,
procedure: procedure, procedure: procedure,
assign_to: procedure.groupe_instructeurs.first.assign_tos.first) assign_to: procedure.groupe_instructeurs.first.assign_tos.first)
end end
let!(:dossier_recemment_supprime) { create(:dossier, :accepte, procedure: procedure, hidden_by_administration_at: 2.days.ago) } let!(:dossier_supprime) { create(:dossier, :accepte, procedure: procedure, hidden_by_administration_at: 2.days.ago) }
it 'includes supprimes_recemment' do it 'includes supprimes' do
expect(export.send(:dossiers_for_export)).to include(dossier_recemment_supprime) expect(export.send(:dossiers_for_export)).to include(dossier_supprime)
end end
end end
end end

View file

@ -8,7 +8,7 @@ describe 'instructeurs/procedures/_list', type: :view do
dossiers_a_suivre_count_per_procedure: 2, dossiers_a_suivre_count_per_procedure: 2,
dossiers_archived_count_per_procedure: 1, dossiers_archived_count_per_procedure: 1,
dossiers_termines_count_per_procedure: 1, dossiers_termines_count_per_procedure: 1,
dossiers_supprimes_recemment_count_per_procedure: 0, dossiers_supprimes_count_per_procedure: 0,
dossiers_expirant_count_per_procedure: 0, dossiers_expirant_count_per_procedure: 0,
followed_dossiers_count_per_procedure: 0, followed_dossiers_count_per_procedure: 0,
procedure_ids_en_cours_with_notifications: [], procedure_ids_en_cours_with_notifications: [],

View file

@ -11,7 +11,7 @@ describe 'instructeurs/procedures/_tabs', type: :view do
suivis_count: 0, suivis_count: 0,
traites_count: 0, traites_count: 0,
tous_count: 0, tous_count: 0,
supprimes_recemment_count: 0, supprimes_count: 0,
archives_count: 0, archives_count: 0,
expirant_count: 0, expirant_count: 0,
has_en_cours_notifications: false, has_en_cours_notifications: false,

View file

@ -16,8 +16,7 @@ describe 'users/dossiers/index', type: :view do
allow(controller).to receive(:current_user) { user } allow(controller).to receive(:current_user) { user }
assign(:user_dossiers, user_dossiers) assign(:user_dossiers, user_dossiers)
assign(:dossiers_invites, Kaminari.paginate_array(dossiers_invites).page(1)) assign(:dossiers_invites, Kaminari.paginate_array(dossiers_invites).page(1))
assign(:dossiers_supprimes_recemment, Kaminari.paginate_array(user_dossiers).page(1)) assign(:dossiers_supprimes, Kaminari.paginate_array(user_dossiers).page(1))
assign(:dossiers_supprimes_definitivement, Kaminari.paginate_array(user_dossiers).page(1))
assign(:dossiers_traites, Kaminari.paginate_array(user_dossiers).page(1)) assign(:dossiers_traites, Kaminari.paginate_array(user_dossiers).page(1))
assign(:dossier_transferes, Kaminari.paginate_array([]).page(1)) assign(:dossier_transferes, Kaminari.paginate_array([]).page(1))
assign(:dossiers_close_to_expiration, Kaminari.paginate_array([]).page(1)) assign(:dossiers_close_to_expiration, Kaminari.paginate_array([]).page(1))