feat: add new fields in pre-registration and sync with adherent and dotations
This commit is contained in:
+36
-1
@@ -7,7 +7,9 @@ import com.astalange.core.repository.PreInscriptionRepository;
|
||||
import com.astalange.core.repository.TokenPreInscriptionRepository;
|
||||
import com.astalange.core.repository.SaisonRepository;
|
||||
import com.astalange.core.repository.CategorieRepository;
|
||||
import com.astalange.core.repository.EquipementRepository;
|
||||
import com.astalange.core.entity.Categorie;
|
||||
import com.astalange.core.entity.Equipement;
|
||||
import com.astalange.core.service.CaptchaValidationService;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
@@ -20,6 +22,8 @@ import java.time.LocalDate;
|
||||
import java.util.UUID;
|
||||
import java.util.List;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/inscription-public")
|
||||
@@ -30,17 +34,20 @@ public class PublicInscriptionController {
|
||||
private final PreInscriptionRepository preInscriptionRepository;
|
||||
private final SaisonRepository saisonRepository;
|
||||
private final CategorieRepository categorieRepository;
|
||||
private final EquipementRepository equipementRepository;
|
||||
|
||||
public PublicInscriptionController(CaptchaValidationService captchaValidationService,
|
||||
TokenPreInscriptionRepository tokenRepository,
|
||||
PreInscriptionRepository preInscriptionRepository,
|
||||
SaisonRepository saisonRepository,
|
||||
CategorieRepository categorieRepository) {
|
||||
CategorieRepository categorieRepository,
|
||||
EquipementRepository equipementRepository) {
|
||||
this.captchaValidationService = captchaValidationService;
|
||||
this.tokenRepository = tokenRepository;
|
||||
this.preInscriptionRepository = preInscriptionRepository;
|
||||
this.saisonRepository = saisonRepository;
|
||||
this.categorieRepository = categorieRepository;
|
||||
this.equipementRepository = equipementRepository;
|
||||
}
|
||||
|
||||
@Value("${captcha.sitekey:1x00000000000000000000AA}")
|
||||
@@ -97,6 +104,34 @@ public class PublicInscriptionController {
|
||||
|
||||
model.addAttribute("preInscription", new PreInscription());
|
||||
model.addAttribute("tokenUuid", tokenUuid);
|
||||
|
||||
// Fetch tailles and pointures
|
||||
List<Equipement> equipements = equipementRepository.findAll();
|
||||
Set<String> tailles = new TreeSet<>();
|
||||
Set<String> pointures = new TreeSet<>();
|
||||
for (Equipement eq : equipements) {
|
||||
if (activeSaison.equals(eq.getSaison()) && eq.getTaillesDisponibles() != null && !eq.getTaillesDisponibles().trim().isEmpty()) {
|
||||
String[] parts = eq.getTaillesDisponibles().split(",");
|
||||
for (String p : parts) {
|
||||
String val = p.trim();
|
||||
if (!val.isEmpty()) {
|
||||
try {
|
||||
int num = Integer.parseInt(val);
|
||||
if (num >= 25 && num <= 50) {
|
||||
pointures.add(val);
|
||||
} else {
|
||||
tailles.add(val);
|
||||
}
|
||||
} catch (NumberFormatException e) {
|
||||
tailles.add(val);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
model.addAttribute("taillesDisponibles", tailles);
|
||||
model.addAttribute("pointuresDisponibles", pointures);
|
||||
|
||||
return "public/formulaire";
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user