sec(licence): restriction de l'option et de la visibilité réduction éducateur aux seuls administrateurs
This commit is contained in:
@@ -77,8 +77,13 @@ public class LicenceController {
|
||||
licence.setTypeDemande(typeDemande);
|
||||
licence.setTypeLicence(typeLicence);
|
||||
licence.setCommentaire(commentaire);
|
||||
licence.setReductionEducateur(Boolean.TRUE.equals(reductionEducateur));
|
||||
licence.setPourcentageReductionEducateur(pourcentageReductionEducateur != null ? pourcentageReductionEducateur : 100);
|
||||
if (isUserAdmin()) {
|
||||
licence.setReductionEducateur(Boolean.TRUE.equals(reductionEducateur));
|
||||
licence.setPourcentageReductionEducateur(pourcentageReductionEducateur != null ? pourcentageReductionEducateur : 100);
|
||||
} else {
|
||||
licence.setReductionEducateur(false);
|
||||
licence.setPourcentageReductionEducateur(100);
|
||||
}
|
||||
|
||||
if (equipeId != null) {
|
||||
Equipe equipe = equipeRepository.findById(equipeId)
|
||||
@@ -120,8 +125,10 @@ public class LicenceController {
|
||||
licence.setTypeDemande(typeDemande);
|
||||
licence.setTypeLicence(typeLicence);
|
||||
licence.setCommentaire(commentaire);
|
||||
licence.setReductionEducateur(Boolean.TRUE.equals(reductionEducateur));
|
||||
licence.setPourcentageReductionEducateur(pourcentageReductionEducateur != null ? pourcentageReductionEducateur : 100);
|
||||
if (isUserAdmin()) {
|
||||
licence.setReductionEducateur(Boolean.TRUE.equals(reductionEducateur));
|
||||
licence.setPourcentageReductionEducateur(pourcentageReductionEducateur != null ? pourcentageReductionEducateur : 100);
|
||||
}
|
||||
|
||||
if (equipeId != null) {
|
||||
Equipe equipe = equipeRepository.findById(equipeId)
|
||||
@@ -270,4 +277,10 @@ public class LicenceController {
|
||||
return cb.and(predicates.toArray(new jakarta.persistence.criteria.Predicate[0]));
|
||||
};
|
||||
}
|
||||
|
||||
private boolean isUserAdmin() {
|
||||
org.springframework.security.core.Authentication auth = org.springframework.security.core.context.SecurityContextHolder.getContext().getAuthentication();
|
||||
return auth != null && auth.getAuthorities().stream()
|
||||
.anyMatch(a -> a.getAuthority().equals("ROLE_ADMIN") || a.getAuthority().equals("ADMIN"));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user