mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-28 23:43:22 +00:00
feat: Rattachement d'un dossier de compétences à une période scolaire
(configuration dans l'établissement) [#16]
This commit is contained in:
@ -26,6 +26,7 @@ from Subscriptions.models import (
|
||||
)
|
||||
from Subscriptions.automate import updateStateMachine
|
||||
from School.models import EstablishmentCompetency
|
||||
from Establishment.models import Establishment
|
||||
|
||||
from N3wtSchool import settings, bdd
|
||||
from django.db.models import Q
|
||||
@ -392,11 +393,28 @@ class RegisterFormWithIdView(APIView):
|
||||
competency__category__domain__cycle=cycle
|
||||
)
|
||||
establishment_competencies = establishment_competencies.distinct()
|
||||
|
||||
establishment = registerForm.establishment
|
||||
evaluation_frequency = establishment.evaluation_frequency # 1=Trimestre, 2=Semestre, 3=Année
|
||||
school_year = registerForm.school_year # ex: "2024_2025"
|
||||
|
||||
establishment_competencies = establishment_competencies.distinct()
|
||||
|
||||
periods = []
|
||||
if evaluation_frequency == 1: # Trimestre
|
||||
periods = [f"T{i+1}_{school_year}" for i in range(3)]
|
||||
elif evaluation_frequency == 2: # Semestre
|
||||
periods = [f"S{i+1}_{school_year}" for i in range(2)]
|
||||
elif evaluation_frequency == 3: # Année
|
||||
periods = [f"A_{school_year}"]
|
||||
|
||||
for ec in establishment_competencies:
|
||||
StudentCompetency.objects.get_or_create(
|
||||
student=student,
|
||||
establishment_competency=ec
|
||||
)
|
||||
for period in periods:
|
||||
StudentCompetency.objects.get_or_create(
|
||||
student=student,
|
||||
establishment_competency=ec,
|
||||
period=period
|
||||
)
|
||||
except Exception as e:
|
||||
logger.error(f"Erreur lors de la valorisation des StudentCompetency: {e}")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user