Fix small bug in assiduite error handling

This commit is contained in:
Emmanuel Viennet 2025-01-29 21:57:07 +01:00
parent c7dc6934cc
commit c983d0ae7f

View File

@ -10,14 +10,14 @@ from flask_login import current_user
from sqlalchemy import desc, or_
from app import models
from app.scodoc.sco_utils import json_error
from app.models import Departement, Identite, Admission
from app.scodoc.sco_exceptions import ScoValueError
from app.scodoc.sco_permissions import Permission
def get_etud(
etudid: int | None = None, nip: str | None = None, ine: str | None = None
) -> models.Identite:
) -> models.Identite | None:
"""
L'instance d'étudiant la plus récente en fonction de l'etudid,
ou du code nip ou code ine.
@ -33,21 +33,16 @@ def get_etud(
if etudid is not None:
try:
etudid = int(etudid)
except ValueError:
return json_error(
404,
message="etudid invalide",
)
except ValueError as exc:
raise ScoValueError("etudid invalide") from exc
query: Identite = Identite.query.filter_by(id=etudid)
elif nip is not None:
query = Identite.query.filter_by(code_nip=nip)
elif ine is not None:
query = Identite.query.filter_by(code_ine=ine)
else:
return json_error(
404,
message="parametre manquant",
)
raise ScoValueError("parametre manquant")
if None not in allowed_depts:
# restreint aux départements autorisés:
query = query.join(Departement).filter(