############################################### Evaluations ########################################################### from flask import jsonify from app import models from app.api import bp from app.api.auth import token_auth from app.api.errors import error_response from app.scodoc.sco_evaluation_db import do_evaluation_get_all_notes @bp.route("/evaluations/", methods=["GET"]) def evaluations(moduleimpl_id: int): """ Retourne la liste des évaluations à partir de l'id d'un moduleimpl moduleimpl_id : l'id d'un moduleimpl """ # Récupération de toutes les évaluations evals = models.Evaluation.query.filter_by(id=moduleimpl_id).all() # Mise en forme des données data = [d.to_dict() for d in evals] return jsonify(data) # return error_response(501, message="Not implemented") @bp.route("/evaluations/eval_notes/", methods=["GET"]) def evaluation_notes(evaluation_id: int): """ Retourne la liste des notes à partir de l'id d'une évaluation donnée evaluation_id : l'id d'une évaluation """ # Fonction utilisée : app.scodoc.sco_evaluation_db.do_evaluation_get_all_notes() try: # Utilisation de la fonction do_evaluation_get_all_notes data = do_evaluation_get_all_notes(evaluation_id) except ValueError: return error_response(409, message="La requête ne peut être traitée en l’état actuel") return jsonify(data) @bp.route("/evaluations/eval_set_notes?eval_id=&etudid=¬e=", methods=["POST"]) @bp.route("/evaluations/eval_set_notes?eval_id=&nip=¬e=", methods=["POST"]) @bp.route("/evaluations/eval_set_notes?eval_id=&ine=¬e=", methods=["POST"]) @token_auth.login_required def evaluation_set_notes(eval_id: int, note: float, etudid: int = None, nip: int = None, ine: int = None): """ Set les notes d'une évaluation pour un étudiant donnée eval_id : l'id d'une évaluation note : la note à attribuer etudid : l'etudid d'un étudiant nip : le code nip d'un étudiant ine : le code ine d'un étudiant """ # Fonction utilisée : app.scodoc.sco_saisie_notes.notes_add() # Qu'est ce qu'un user ??? # notes_add() return error_response(501, message="Not implemented")