Change onglet presentation for gestionnaire.
This commit is contained in:
parent
9c863c7bff
commit
ec4b634f8a
8 changed files with 69 additions and 36 deletions
|
@ -58,6 +58,10 @@ class DossiersListFacades
|
|||
(@liste == 'a_traiter' ? 'active' : '')
|
||||
end
|
||||
|
||||
def fige_class
|
||||
(@liste == 'fige' ? 'active' : '')
|
||||
end
|
||||
|
||||
def en_attente_class
|
||||
(@liste == 'en_attente' ? 'active' : '')
|
||||
end
|
||||
|
@ -103,13 +107,17 @@ class DossiersListFacades
|
|||
end
|
||||
|
||||
def a_traiter_total
|
||||
service.waiting_for_gestionnaire.count
|
||||
service.ouvert.count
|
||||
end
|
||||
|
||||
def en_construction_total
|
||||
service.en_construction.count
|
||||
end
|
||||
|
||||
def fige_total
|
||||
service.fige.count
|
||||
end
|
||||
|
||||
def en_attente_total
|
||||
service.waiting_for_user.count
|
||||
end
|
||||
|
@ -158,6 +166,10 @@ class DossiersListFacades
|
|||
base_url 'a_traiter'
|
||||
end
|
||||
|
||||
def fige_url
|
||||
base_url 'fige'
|
||||
end
|
||||
|
||||
def en_attente_url
|
||||
base_url 'en_attente'
|
||||
end
|
||||
|
|
|
@ -45,6 +45,7 @@ class Dossier < ActiveRecord::Base
|
|||
|
||||
BROUILLON = %w(draft)
|
||||
NOUVEAUX = %w(initiated)
|
||||
OUVERT = %w(updated replied)
|
||||
WAITING_FOR_GESTIONNAIRE = %w(updated)
|
||||
WAITING_FOR_USER = %w(replied validated)
|
||||
EN_CONSTRUCTION = %w(initiated updated replied)
|
||||
|
@ -194,6 +195,10 @@ class Dossier < ActiveRecord::Base
|
|||
EN_CONSTRUCTION.include?(state)
|
||||
end
|
||||
|
||||
def ouvert?
|
||||
OUVERT.include?(state)
|
||||
end
|
||||
|
||||
def deposes?
|
||||
DEPOSES.include?(state)
|
||||
end
|
||||
|
@ -202,6 +207,10 @@ class Dossier < ActiveRecord::Base
|
|||
VALIDES.include?(state)
|
||||
end
|
||||
|
||||
def fige?
|
||||
VALIDES.include?(state)
|
||||
end
|
||||
|
||||
def a_instruire?
|
||||
A_INSTRUIRE.include?(state)
|
||||
end
|
||||
|
@ -238,10 +247,18 @@ class Dossier < ActiveRecord::Base
|
|||
where(state: EN_CONSTRUCTION, archived: false).order("updated_at #{order}")
|
||||
end
|
||||
|
||||
def self.ouvert order = 'ASC'
|
||||
where(state: OUVERT, archived: false).order("updated_at #{order}")
|
||||
end
|
||||
|
||||
def self.valides order = 'ASC'
|
||||
where(state: VALIDES, archived: false).order("updated_at #{order}")
|
||||
end
|
||||
|
||||
def self.fige order = 'ASC'
|
||||
where(state: VALIDES, archived: false).order("updated_at #{order}")
|
||||
end
|
||||
|
||||
def self.deposes order = 'ASC'
|
||||
where(state: DEPOSES, archived: false).order("updated_at #{order}")
|
||||
end
|
||||
|
|
|
@ -7,8 +7,8 @@ class DossiersListGestionnaireService
|
|||
|
||||
def dossiers_to_display
|
||||
{'nouveaux' => nouveaux,
|
||||
'a_traiter' => waiting_for_gestionnaire,
|
||||
'en_attente' => waiting_for_user,
|
||||
'a_traiter' => ouvert,
|
||||
'fige' => fige,
|
||||
'deposes' => deposes,
|
||||
'a_instruire' => a_instruire,
|
||||
'termine' => termine,
|
||||
|
@ -16,7 +16,7 @@ class DossiersListGestionnaireService
|
|||
end
|
||||
|
||||
def self.dossiers_liste_libelle
|
||||
['nouveaux', 'a_traiter', 'en_attente', 'deposes', 'a_instruire', 'termine', 'all_state']
|
||||
['nouveaux', 'a_traiter', 'fige' ,'deposes', 'a_instruire', 'termine', 'all_state']
|
||||
end
|
||||
|
||||
def all_state
|
||||
|
@ -27,12 +27,12 @@ class DossiersListGestionnaireService
|
|||
@nouveaux ||= filter_dossiers.nouveaux
|
||||
end
|
||||
|
||||
def waiting_for_gestionnaire
|
||||
@waiting_for_gestionnaire ||= filter_dossiers.waiting_for_gestionnaire
|
||||
def ouvert
|
||||
@ouvert ||= filter_dossiers.ouvert
|
||||
end
|
||||
|
||||
def waiting_for_user
|
||||
@waiting_for_user ||= filter_dossiers.waiting_for_user
|
||||
def fige
|
||||
@fige ||= filter_dossiers.fige
|
||||
end
|
||||
|
||||
def deposes
|
||||
|
|
|
@ -19,18 +19,18 @@
|
|||
=@dossiers_list_facade.nouveaux_total
|
||||
|
||||
%li{ class: (@dossiers_list_facade.a_traiter_class) }
|
||||
%a{:href => "#{url_for @dossiers_list_facade.a_traiter_url}", 'data-toggle' => :tooltip, title: 'Les dossiers qui requièrent une action de votre part.'}
|
||||
%a{:href => "#{url_for @dossiers_list_facade.a_traiter_url}", 'data-toggle' => :tooltip, title: 'Les dossiers qui ne sont pas encore déclarés complets.'}
|
||||
%h5.text-danger
|
||||
= "Action requise"
|
||||
="Ouverts"
|
||||
.badge.progress-bar-danger
|
||||
=@dossiers_list_facade.a_traiter_total
|
||||
|
||||
%li{ class: (@dossiers_list_facade.en_attente_class) }
|
||||
%a{:href => "#{url_for @dossiers_list_facade.en_attente_url}", 'data-toggle' => :tooltip, title: 'Les dossiers en attentes d\'une action de la part de l\'usager.'}
|
||||
%li{ class: (@dossiers_list_facade.fige_class) }
|
||||
%a{:href => "#{url_for @dossiers_list_facade.fige_url}", 'data-toggle' => :tooltip, title: 'Les dossiers qui sont déclarés complets et donc figés.'}
|
||||
%h5.text-default
|
||||
="Attente usager "
|
||||
="Figés"
|
||||
.badge.progress-bar-default
|
||||
=@dossiers_list_facade.en_attente_total
|
||||
=@dossiers_list_facade.fige_total
|
||||
|
||||
%li{ class: (@dossiers_list_facade.deposes_class) }
|
||||
%a{:href => "#{url_for @dossiers_list_facade.deposes_url}", 'data-toggle' => :tooltip, title: 'Les dossiers qui ont été validés et déposés par les usager qui attendent une réponse de bonne réception avant examen.'}
|
||||
|
|
|
@ -11,12 +11,18 @@
|
|||
n'ont jamais été ouvert par votre service.
|
||||
Il attende une première lecture et intervention de votre part.
|
||||
-elsif dossiers_list_facade.liste == 'a_traiter'
|
||||
Tous les dossiers présents dans cette liste sont ceux qui
|
||||
Tous les dossiers présents dans cette liste sont ceux qui sont
|
||||
%b
|
||||
attendent une action de votre part.
|
||||
Cela peut être par exemple une demande client ou une relecture pour validation de complétude.
|
||||
-elsif dossiers_list_facade.liste == 'en_attente'
|
||||
Tous les dossiers présents dans cette liste sont ceux qui requière une action de la part de l'usager. À priori, vous n'avez donc pas d'intervention particulière à réaliser.
|
||||
en cours de construction avec l'usager.
|
||||
Ils ne sont pas figés et ne sont donc pas complets.
|
||||
-elsif dossiers_list_facade.liste == 'fige'
|
||||
Tous les dossiers présents dans cette liste ont été déclarés
|
||||
%b
|
||||
complets
|
||||
et ne sont
|
||||
%b
|
||||
plus modifiables par l'usager.
|
||||
Ils attendent donc leurs dépots officiels qui doit être effectué par l'usager.
|
||||
-elsif dossiers_list_facade.liste == 'deposes'
|
||||
Tous les dossiers présents dans cette liste ont été
|
||||
%b
|
||||
|
|
|
@ -63,14 +63,14 @@ describe Backoffice::DossiersController, type: :controller do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'GET #en_attente' do
|
||||
describe 'GET #fige' do
|
||||
context 'when gestionnaire is connected' do
|
||||
before do
|
||||
sign_in gestionnaire
|
||||
end
|
||||
|
||||
it 'returns http success' do
|
||||
get :index, liste: :en_attente
|
||||
get :index, liste: :fige
|
||||
expect(response).to have_http_status(200)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -37,7 +37,7 @@ feature 'on click on tabs button' do
|
|||
context 'when he click on tabs a traite' do
|
||||
before do
|
||||
visit backoffice_dossiers_url(liste: :a_traiter)
|
||||
page.click_on 'Action requise 1'
|
||||
page.click_on 'Ouverts 2'
|
||||
end
|
||||
|
||||
scenario 'it redirect to backoffice dossier termine' do
|
||||
|
@ -47,8 +47,8 @@ feature 'on click on tabs button' do
|
|||
|
||||
context 'when he click on tabs en attente' do
|
||||
before do
|
||||
visit backoffice_dossiers_url(liste: :en_attente)
|
||||
page.click_on 'Attente usager 2'
|
||||
visit backoffice_dossiers_url(liste: :figes)
|
||||
page.click_on 'Figés 1'
|
||||
end
|
||||
|
||||
scenario 'it redirect to backoffice dossier en attente' do
|
||||
|
|
|
@ -95,29 +95,27 @@ describe 'backoffice/dossiers/index.html.haml', type: :view do
|
|||
end
|
||||
|
||||
describe 'on tab a_traiter' do
|
||||
let(:total_dossiers) { 1 }
|
||||
let(:total_dossiers) { 2 }
|
||||
let(:active_class) { '.active .text-danger' }
|
||||
let(:dossiers_to_display) { gestionnaire.dossiers.waiting_for_gestionnaire }
|
||||
let(:dossiers_to_display) { gestionnaire.dossiers.ouvert }
|
||||
let(:liste) { 'a_traiter' }
|
||||
|
||||
it_behaves_like 'check_tab_content' do
|
||||
let(:decorate_dossier_at_check) { decorate_dossier_updated }
|
||||
end
|
||||
|
||||
it_behaves_like 'check_tab_content' do
|
||||
let(:decorate_dossier_at_check) { decorate_dossier_replied }
|
||||
end
|
||||
end
|
||||
|
||||
describe 'on tab en_attente' do
|
||||
let(:total_dossiers) { 2 }
|
||||
describe 'on tab figes' do
|
||||
let(:total_dossiers) { 1 }
|
||||
let(:active_class) { '.active .text-default' }
|
||||
let(:dossiers_to_display) { gestionnaire.dossiers.waiting_for_user }
|
||||
let(:liste) { 'en_attente' }
|
||||
let(:dossiers_to_display) { gestionnaire.dossiers.fige }
|
||||
let(:liste) { 'fige' }
|
||||
|
||||
describe 'for state replied' do
|
||||
it_behaves_like 'check_tab_content' do
|
||||
let(:decorate_dossier_at_check) { decorate_dossier_replied }
|
||||
end
|
||||
end
|
||||
|
||||
describe 'for state validated' do
|
||||
it_behaves_like 'check_tab_content' do
|
||||
let(:decorate_dossier_at_check) { decorate_dossier_validated }
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue