forked from ScoDoc/ScoDoc
Améliore présentation page import admission
This commit is contained in:
parent
5336913ba5
commit
01e5d1087e
@ -320,7 +320,7 @@ def formsemestre_status_menubar(formsemestre: FormSemestre | None) -> str:
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"title": "Import/export des données admission",
|
"title": "Import/export des données admission",
|
||||||
"endpoint": "scolar.form_students_import_infos_admissions",
|
"endpoint": "scolar.form_import_infos_admissions",
|
||||||
"args": {"formsemestre_id": formsemestre_id},
|
"args": {"formsemestre_id": formsemestre_id},
|
||||||
"enabled": current_user.has_permission(Permission.ScoView),
|
"enabled": current_user.has_permission(Permission.ScoView),
|
||||||
},
|
},
|
||||||
|
@ -687,7 +687,7 @@ def scolars_import_admission(
|
|||||||
else "colonnes nom et prenom requises"
|
else "colonnes nom et prenom requises"
|
||||||
),
|
),
|
||||||
dest_url=url_for(
|
dest_url=url_for(
|
||||||
"scolar.form_students_import_infos_admissions",
|
"scolar.form_import_infos_admissions",
|
||||||
scodoc_dept=g.scodoc_dept,
|
scodoc_dept=g.scodoc_dept,
|
||||||
formsemestre_id=formsemestre_id,
|
formsemestre_id=formsemestre_id,
|
||||||
),
|
),
|
||||||
@ -732,7 +732,7 @@ def scolars_import_admission(
|
|||||||
f"""scolars_import_admission: valeur invalide, ligne {
|
f"""scolars_import_admission: valeur invalide, ligne {
|
||||||
nline} colonne {field_name}: '{line[idx]}'""",
|
nline} colonne {field_name}: '{line[idx]}'""",
|
||||||
dest_url=url_for(
|
dest_url=url_for(
|
||||||
"scolar.form_students_import_infos_admissions",
|
"scolar.form_import_infos_admissions",
|
||||||
scodoc_dept=g.scodoc_dept,
|
scodoc_dept=g.scodoc_dept,
|
||||||
formsemestre_id=formsemestre_id,
|
formsemestre_id=formsemestre_id,
|
||||||
),
|
),
|
||||||
@ -829,7 +829,7 @@ def adm_get_fields(titles, formsemestre_id: int, use_etudid: bool = False):
|
|||||||
raise ScoFormatError(
|
raise ScoFormatError(
|
||||||
f"""scolars_import_admission: titre "{title}" en double (ligne 1)""",
|
f"""scolars_import_admission: titre "{title}" en double (ligne 1)""",
|
||||||
dest_url=url_for(
|
dest_url=url_for(
|
||||||
"scolar.form_students_import_infos_admissions",
|
"scolar.form_import_infos_admissions",
|
||||||
scodoc_dept=g.scodoc_dept,
|
scodoc_dept=g.scodoc_dept,
|
||||||
formsemestre_id=formsemestre_id,
|
formsemestre_id=formsemestre_id,
|
||||||
),
|
),
|
||||||
|
@ -58,6 +58,11 @@ div.sco-app-content {
|
|||||||
margin-right: 12px;
|
margin-right: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.vspaced {
|
||||||
|
margin-top: 18px !important;
|
||||||
|
margin-bottom: 18px !important;
|
||||||
|
}
|
||||||
|
|
||||||
.space-before-18 {
|
.space-before-18 {
|
||||||
margin-top: 18px !important;
|
margin-top: 18px !important;
|
||||||
}
|
}
|
||||||
|
76
app/templates/formsemestre/form_import_infos_admissions.j2
Normal file
76
app/templates/formsemestre/form_import_infos_admissions.j2
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
{% extends "sco_page.j2" %}
|
||||||
|
{% import 'wtf.j2' as wtf %}
|
||||||
|
|
||||||
|
{% block styles %}
|
||||||
|
{{super()}}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block app_content %}
|
||||||
|
<h2 class="formsemestre">Téléchargement des informations sur les étudiants</h2>
|
||||||
|
|
||||||
|
<div class="scobox help explanation">
|
||||||
|
<p>
|
||||||
|
Cette page peut être utilisé pour exporter ou importer / modfiier les informations
|
||||||
|
concernant les étudiants et leur admission.
|
||||||
|
</p>
|
||||||
|
<p>Ces informations sont facultatives mais souvent utiles pour mieux connaitre les étudiants
|
||||||
|
et aussi pour effectuer des statistiques (résultats suivant le type de bac...).
|
||||||
|
Les données sont affichées sur les fiches individuelles des étudiants.
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>origine des étudiants (lycées, bac, etc);</li>
|
||||||
|
<li>type d'admission (Parcoursup, autre);</li>
|
||||||
|
<li>placement dans les groupes et parcours.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Seuls les étudiants actuellement inscrits dans ce semestre ScoDoc seront affectés,
|
||||||
|
les autres lignes de la feuille seront ignorées.
|
||||||
|
Et seules les colonnes intéressant ScoDoc
|
||||||
|
seront importées: il est inutile d'éliminer les autres.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<em>Seules les données "admission" seront modifiées
|
||||||
|
(et pas l'identité de l'étudiant).</em>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<em>Les colonnes "nom" et "prenom" sont requises,
|
||||||
|
ou bien une colonne "etudid" si la case
|
||||||
|
"Utiliser l'identifiant d'étudiant ScoDoc" est cochée.
|
||||||
|
</em>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="scobox">
|
||||||
|
<div class="scobox-title">Exportation des données</div>
|
||||||
|
Avant d'importer vos données, il est recommandé d'enregistrer
|
||||||
|
les informations actuelles:
|
||||||
|
<div class="vspaced">
|
||||||
|
<a class="stdlink" href="{{
|
||||||
|
url_for('scolar.import_generate_admission_sample',
|
||||||
|
scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id)
|
||||||
|
}}">exporter les données actuelles de ScoDoc</a>
|
||||||
|
</div>
|
||||||
|
(ce fichier peut être ré-importé après d'éventuelles modifications)
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="scobox">
|
||||||
|
<div class="scobox-title">Importation des données</div>
|
||||||
|
|
||||||
|
{{ tf_form | safe }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="scobox explanation">
|
||||||
|
|
||||||
|
Les colonnes importables par cette fonction sont indiquées dans la table ci-dessous.
|
||||||
|
Seule la première feuille du classeur sera utilisée.
|
||||||
|
|
||||||
|
<div id="adm_table_description_format">
|
||||||
|
{{adm_table_description_format|safe}}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% endblock %}
|
@ -2343,11 +2343,11 @@ def import_generate_admission_sample(formsemestre_id):
|
|||||||
|
|
||||||
|
|
||||||
# --- Données admission depuis fichier excel (version nov 2016)
|
# --- Données admission depuis fichier excel (version nov 2016)
|
||||||
@bp.route("/form_students_import_infos_admissions", methods=["GET", "POST"])
|
@bp.route("/form_import_infos_admissions", methods=["GET", "POST"])
|
||||||
@scodoc
|
@scodoc
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
@scodoc7func
|
@scodoc7func
|
||||||
def form_students_import_infos_admissions(formsemestre_id=None):
|
def form_import_infos_admissions(formsemestre_id=None):
|
||||||
"formulaire import xls"
|
"formulaire import xls"
|
||||||
authuser = current_user
|
authuser = current_user
|
||||||
if not authuser.has_permission(Permission.EtudInscrit):
|
if not authuser.has_permission(Permission.EtudInscrit):
|
||||||
@ -2356,8 +2356,8 @@ def form_students_import_infos_admissions(formsemestre_id=None):
|
|||||||
"sco_page.j2",
|
"sco_page.j2",
|
||||||
title="Export données admissions (Parcoursup ou autre)",
|
title="Export données admissions (Parcoursup ou autre)",
|
||||||
content=f"""
|
content=f"""
|
||||||
<h2 class="formsemestre">Téléchargement des informations sur l'admission
|
<h2 class="formsemestre">Téléchargement des informations sur
|
||||||
des étudiants</h2>
|
les étudiants (admission, ...)</h2>
|
||||||
<p>
|
<p>
|
||||||
<a href="{ url_for('scolar.import_generate_admission_sample',
|
<a href="{ url_for('scolar.import_generate_admission_sample',
|
||||||
scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id )
|
scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id )
|
||||||
@ -2369,48 +2369,6 @@ def form_students_import_infos_admissions(formsemestre_id=None):
|
|||||||
)
|
)
|
||||||
|
|
||||||
# On a le droit d'importer:
|
# On a le droit d'importer:
|
||||||
H = [
|
|
||||||
f"""<h2 class="formsemestre">Téléchargement des informations sur l'admission des étudiants
|
|
||||||
depuis feuilles import Parcoursup</h2>
|
|
||||||
<div style="color: red">
|
|
||||||
<p>A utiliser pour renseigner les informations sur l'origine des étudiants (lycées, bac, etc).
|
|
||||||
Ces informations sont facultatives mais souvent utiles pour mieux connaitre les étudiants
|
|
||||||
et aussi pour effectuer des statistiques (résultats suivant le type de bac...).
|
|
||||||
Les données sont affichées sur les fiches individuelles des étudiants.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="help">
|
|
||||||
<p>
|
|
||||||
Vous pouvez importer ici la feuille excel utilisée pour envoyer
|
|
||||||
le classement Parcoursup.
|
|
||||||
Seuls les étudiants actuellement inscrits dans ce semestre ScoDoc seront affectés,
|
|
||||||
les autres lignes de la feuille seront ignorées.
|
|
||||||
Et seules les colonnes intéressant ScoDoc
|
|
||||||
seront importées: il est inutile d'éliminer les autres.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<em>Seules les données "admission" seront modifiées
|
|
||||||
(et pas l'identité de l'étudiant).</em>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<em>Les colonnes "nom" et "prenom" sont requises,
|
|
||||||
ou bien une colonne "etudid" si la case
|
|
||||||
"Utiliser l'identifiant d'étudiant ScoDoc" est cochée.
|
|
||||||
</em>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Avant d'importer vos données, il est recommandé d'enregistrer
|
|
||||||
les informations actuelles:
|
|
||||||
<a class="stdlink" href="{
|
|
||||||
url_for("scolar.import_generate_admission_sample",
|
|
||||||
scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id)
|
|
||||||
}">exporter les données actuelles de ScoDoc</a>
|
|
||||||
(ce fichier peut être ré-importé après d'éventuelles modifications)
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
""",
|
|
||||||
]
|
|
||||||
|
|
||||||
tf = TrivialFormulator(
|
tf = TrivialFormulator(
|
||||||
request.base_url,
|
request.base_url,
|
||||||
scu.get_request_args(),
|
scu.get_request_args(),
|
||||||
@ -2439,26 +2397,17 @@ def form_students_import_infos_admissions(formsemestre_id=None):
|
|||||||
),
|
),
|
||||||
("formsemestre_id", {"input_type": "hidden"}),
|
("formsemestre_id", {"input_type": "hidden"}),
|
||||||
),
|
),
|
||||||
submitlabel="Télécharger",
|
submitlabel="Importer",
|
||||||
)
|
|
||||||
|
|
||||||
help_text = (
|
|
||||||
"""<p>Les colonnes importables par cette fonction sont indiquées
|
|
||||||
dans la table ci-dessous.
|
|
||||||
Seule la première feuille du classeur sera utilisée.
|
|
||||||
<div id="adm_table_description_format">
|
|
||||||
"""
|
|
||||||
+ sco_import_etuds.adm_table_description_format().html()
|
|
||||||
+ """</div>"""
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if tf[0] == 0:
|
if tf[0] == 0:
|
||||||
return render_template(
|
return render_template(
|
||||||
"sco_page.j2",
|
"formsemestre/form_import_infos_admissions.j2",
|
||||||
title="Import données admissions Parcoursup",
|
title="Import données admissions",
|
||||||
content="\n".join(H) + tf[1] + help_text,
|
tf_form=tf[1],
|
||||||
|
adm_table_description_format=sco_import_etuds.adm_table_description_format().html(),
|
||||||
)
|
)
|
||||||
elif tf[0] == -1:
|
if tf[0] == -1:
|
||||||
return flask.redirect(
|
return flask.redirect(
|
||||||
url_for(
|
url_for(
|
||||||
"notes.formsemestre_status",
|
"notes.formsemestre_status",
|
||||||
@ -2466,13 +2415,12 @@ def form_students_import_infos_admissions(formsemestre_id=None):
|
|||||||
formsemestre_id=formsemestre_id,
|
formsemestre_id=formsemestre_id,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
else:
|
return sco_import_etuds.students_import_admission(
|
||||||
return sco_import_etuds.students_import_admission(
|
tf[2]["csvfile"],
|
||||||
tf[2]["csvfile"],
|
type_admission=tf[2]["type_admission"],
|
||||||
type_admission=tf[2]["type_admission"],
|
formsemestre_id=formsemestre_id,
|
||||||
formsemestre_id=formsemestre_id,
|
use_etudid=tf[2]["use_etudid"],
|
||||||
use_etudid=tf[2]["use_etudid"],
|
)
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_import_etud_admission")
|
@bp.route("/formsemestre_import_etud_admission")
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# -*- mode: python -*-
|
# -*- mode: python -*-
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
SCOVERSION = "9.7.14"
|
SCOVERSION = "9.7.15"
|
||||||
|
|
||||||
SCONAME = "ScoDoc"
|
SCONAME = "ScoDoc"
|
||||||
|
|
||||||
|
@ -133,7 +133,7 @@ def test_formsemestre_misc_views(test_client):
|
|||||||
ans = sco_inscr_passage.formsemestre_inscr_passage(formsemestre.id)
|
ans = sco_inscr_passage.formsemestre_inscr_passage(formsemestre.id)
|
||||||
ans = call_view(scolar.form_students_import_excel, formsemestre.id)
|
ans = call_view(scolar.form_students_import_excel, formsemestre.id)
|
||||||
assert isinstance(ans, str)
|
assert isinstance(ans, str)
|
||||||
ans = call_view(scolar.form_students_import_infos_admissions, formsemestre.id)
|
ans = call_view(scolar.form_import_infos_admissions, formsemestre.id)
|
||||||
ans = sco_formsemestre_inscriptions.formsemestre_inscrits_ailleurs(formsemestre.id)
|
ans = sco_formsemestre_inscriptions.formsemestre_inscrits_ailleurs(formsemestre.id)
|
||||||
|
|
||||||
# ----- MENU GROUPES
|
# ----- MENU GROUPES
|
||||||
|
Loading…
Reference in New Issue
Block a user