Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prends uniquement en compte les élèves actifs pour les actions en masse d'une classe #1235

Merged
merged 3 commits into from
Nov 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/controllers/ribs_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ def destroy

def missing
@ribs = @classe
.students
.active_students
.without_ribs
.map { |student| Rib.new(student: student, owner_type: :personal, name: student.full_name) }
end
Expand Down
9 changes: 7 additions & 2 deletions app/facades/classe_facade.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,18 @@ def nb_pending_pfmps
end

def nb_can_transition_to_validated_pfmps
@nb_can_transition_to_validated_pfmps ||= @classe.pfmps.in_state(:completed)
@nb_can_transition_to_validated_pfmps ||= @classe.pfmps
.in_state(:completed)
.filter { |pfmp| pfmp.can_transition_to?(:validated) }
.count
end

def nb_missing_ribs
@nb_missing_ribs ||= @classe.students.without_ribs.count
@nb_missing_ribs ||= @classe.active_students.without_ribs.count
end

def any_active_schoolings?
@any_active_schoolings ||= @classe.active_students.any?
end

def schoolings
Expand Down
5 changes: 3 additions & 2 deletions app/views/classes/show.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
.actions.fr-btns-group.fr-btns-group--inline
- if @classe_facade.nb_missing_ribs > 0
= link_to @classe_facade.missing_ribs_button_text, missing_school_year_class_ribs_path(selected_school_year, @classe), class: 'fr-btn fr-btn--primary'

= link_to 'Saisir une PFMP pour toute la classe', bulk_pfmp_school_year_class_path(selected_school_year, @classe), class: 'fr-btn fr-btn--primary'

- if @classe_facade.any_active_schoolings?
= link_to 'Saisir une PFMP pour toute la classe', bulk_pfmp_school_year_class_path(selected_school_year, @classe), class: 'fr-btn fr-btn--primary'

.actions.fr-btns-group.fr-btns-group--inline
- if @classe_facade.nb_pending_pfmps > 0
Expand Down
3 changes: 2 additions & 1 deletion features/1_gestion_des_scolarités.feature
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@ Fonctionnalité: Gestion des scolarités de l'élève
Et que je clique sur "Confirmer le retrait de l'élève de la classe"
Alors la page contient "L'élève Jean Dupuis a bien été retiré de la classe 1MELEC"
Et je peux voir dans le tableau "Élèves retirés manuellement de la classe"
| Élèves (1) | Réintégration de llève dans la classe |
| Élèves (1) | Réintégration de llève dans la classe |
| Dupuis Jean | Réintégrer Jean Dupuis dans la classe 1MELEC |
Et la page contient "Saisir 9 coordonnées bancaires"
Quand je consulte le profil de "Jean Dupuis" dans la classe de "1MELEC"
Alors la page contient "Retiré(e) manuellement de la classe"
Quand je consulte la classe "1MELEC"
Expand Down
1 change: 1 addition & 0 deletions features/anciens_eleves.feature
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Fonctionnalité: Les anciens élèves sont inclus à part dans l'interface
Alors je peux voir dans le tableau "Élèves sortis de la classe"
| Élèves (1) | Décisions d'attribution | Coordonnées Bancaires (1/1) | PFMPs (0) |
| Dupuis Jean | | Saisies | |
Et la page contient "Saisir 9 coordonnées bancaires"

Scénario: Le personnel peut créer une PFMP pour un ancien élève
Quand je consulte la classe de "1MELEC"
Expand Down