feat: implémentation de la gestion des saisons (UI, service, refactoring sidebar)
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
package com.astalange.web.controller;
|
||||
|
||||
import com.astalange.core.entity.Adherent;
|
||||
import com.astalange.core.entity.Saison;
|
||||
import com.astalange.core.repository.AdherentRepository;
|
||||
import com.astalange.core.repository.CategorieRepository;
|
||||
import com.astalange.core.repository.SaisonRepository;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
@@ -18,17 +20,25 @@ public class AdherentController {
|
||||
private final CategorieRepository categorieRepository;
|
||||
private final com.astalange.core.repository.LicenceRepository licenceRepository;
|
||||
private final com.astalange.core.repository.ModePaiementRepository modePaiementRepository;
|
||||
private final SaisonRepository saisonRepository;
|
||||
|
||||
public AdherentController(AdherentRepository adherentRepository, CategorieRepository categorieRepository, com.astalange.core.repository.LicenceRepository licenceRepository, com.astalange.core.repository.ModePaiementRepository modePaiementRepository) {
|
||||
public AdherentController(AdherentRepository adherentRepository, CategorieRepository categorieRepository, com.astalange.core.repository.LicenceRepository licenceRepository, com.astalange.core.repository.ModePaiementRepository modePaiementRepository, SaisonRepository saisonRepository) {
|
||||
this.adherentRepository = adherentRepository;
|
||||
this.categorieRepository = categorieRepository;
|
||||
this.licenceRepository = licenceRepository;
|
||||
this.modePaiementRepository = modePaiementRepository;
|
||||
this.saisonRepository = saisonRepository;
|
||||
}
|
||||
|
||||
@GetMapping
|
||||
public String listAdherents(Model model) {
|
||||
List<Adherent> adherents = adherentRepository.findAll();
|
||||
public String listAdherents(@org.springframework.web.bind.annotation.RequestParam(required = false) String query, Model model) {
|
||||
List<Adherent> adherents;
|
||||
if (query != null && !query.trim().isEmpty()) {
|
||||
adherents = adherentRepository.searchByQuery(query.trim());
|
||||
model.addAttribute("searchQuery", query.trim());
|
||||
} else {
|
||||
adherents = adherentRepository.findAll();
|
||||
}
|
||||
model.addAttribute("adherents", adherents);
|
||||
return "adherents/list";
|
||||
}
|
||||
@@ -57,8 +67,16 @@ public class AdherentController {
|
||||
public String editAdherent(@org.springframework.web.bind.annotation.PathVariable Long id, Model model) {
|
||||
Adherent adherent = adherentRepository.findById(id)
|
||||
.orElseThrow(() -> new IllegalArgumentException("Adhérent invalide : " + id));
|
||||
|
||||
Saison saisonActive = saisonRepository.findByEstActiveTrue().orElse(null);
|
||||
if (saisonActive != null) {
|
||||
model.addAttribute("categories", categorieRepository.findBySaison(saisonActive));
|
||||
model.addAttribute("saisonActive", saisonActive);
|
||||
} else {
|
||||
model.addAttribute("categories", categorieRepository.findAll());
|
||||
}
|
||||
|
||||
model.addAttribute("adherent", adherent);
|
||||
model.addAttribute("categories", categorieRepository.findAll());
|
||||
model.addAttribute("licences", licenceRepository.findByAdherentId(id));
|
||||
model.addAttribute("modesPaiement", modePaiementRepository.findAll());
|
||||
return "adherents/form";
|
||||
|
||||
Reference in New Issue
Block a user