forked from ScoDoc/DocScoDoc
261 lines
11 KiB
Markdown
261 lines
11 KiB
Markdown
# Module "Assiduités"
|
||
|
||
Ce module de ScoDoc remplace l'ancien module de suivi des absences de Scodoc.
|
||
En plus de moderniser l'ancien module, le module assiduités met à disposition une API complète.
|
||
|
||
Ce projet a été développé en 2022-2023, par Matthias Hartmann, apprenti de l'IUT de
|
||
Lannion financé par l'Association ScoDoc.
|
||
|
||
**Ce module est disponible à partir de ScoDoc version 9.6**.
|
||
|
||
[Vidéo de présentation du module d'assiduités ](#) TODO EV à publier sur la chaîne YT
|
||
|
||
## Fonctionnalités
|
||
|
||
Le module fournit:
|
||
|
||
- Gestion des absences/présences/retards
|
||
- Précision des saisies (périodes déterminées par une heure de début et une
|
||
heure de fin au lieu de demi-journées)
|
||
- Gestion et sauvegarde de justificatifs (documents)
|
||
- Une [API complète](ScoDoc9API.md#api-assiduites)
|
||
|
||
## Guide d'utilisation
|
||
|
||
- [Module "Assiduités"](#module-assiduités)
|
||
- [Fonctionnalités](#fonctionnalités)
|
||
- [Guide d'utilisation](#guide-dutilisation)
|
||
- [Migration de l'ancien module](#migration-de-lancien-module)
|
||
- [Personnalisation du module](#personnalisation-du-module)
|
||
- [Saisie des Assiduités](#saisie-des-assiduités)
|
||
- [Saisie d'un groupe](#saisie-dun-groupe)
|
||
- [Saisie Journalière](#saisie-journalière)
|
||
- [Saisie différée](#saisie-différée)
|
||
|
||
### Migration de l'ancien module
|
||
|
||
Afin de favoriser la transition de l'ancien module au nouveau, un script de
|
||
migration a été développé: à l'installation de ScoDoc 9.6, les anciennes
|
||
données d'absences et justificatifs sont traduites pour ce module.
|
||
|
||
Voir détails dans [la documentation d'installation](UpgradeToDeb12Sco96.md) et
|
||
sur la [documentation des commandes de migration des absences](AssiduitesMigration.md).
|
||
|
||
### Personnalisation du module
|
||
|
||
Le module possède deux types de configuration, une générale et une par département/semestre.
|
||
|
||
**La configuration générale permet de configurer la ligne temporelle visible sur certaines pages de saisie d'assiduités.**
|
||
|
||
![Configuration de l'assiduité : Général](screens/config_assiduites_gen.png)
|
||
|
||
Route : `/ScoDoc/config_assiduites`
|
||
|
||
- `Début de la journée` : l'heure de début de la ligne temporelle (par défaut :
|
||
8h00)
|
||
- `L'heure de midi` : l'heure pivot qui sépare la matinée de l'après-midi (par
|
||
défaut : 13h00)
|
||
- `Fin de la journée` : l'heure de fin de la ligne temporelle (par défaut :
|
||
18h00)
|
||
- `Granularité` : La granularité de la ligne temporelle. (par défaut : 15 min)
|
||
|
||
**La configuration par département/semestre permet de configurer certaines actions liés à l'assiduité**
|
||
|
||
![Configuration de l'assiduité : département](screens/config_assiduites_dept.png)
|
||
|
||
Route : `/ScoDoc/<Dept>/Scolarite/edit_preferences`
|
||
|
||
- `Forcer la déclaration du module` : Forcer les utilisateurs de ScoDoc à
|
||
renseigner le module à chaque saisie d'assiduités.
|
||
- `Forcer l'appel des présents` : Force les utilisateurs à noter les
|
||
présences/absences/retard lors d'une saisie.
|
||
- `Durée par défaut d'un créneau` : Détermine la durée classique d'un cours. (Ce
|
||
sera la période préenregistrée sur la ligne temporelle)
|
||
- `Définir l'état par défaut` : Défini l'état par défaut qui sera appliqué aux
|
||
étudiants avant validation d'une saisie d'assiduité.
|
||
- `Jours non travaillés` : Défini les jours sur lesquels la saisie d'assiduités
|
||
ne sera pas possible.
|
||
- `Métrique de l'assiduité` : Défini l'unité de l'assiduité qui sera utilisé par
|
||
les autres modules de ScoDoc.
|
||
- `1/2 J.` : Demi-Journée
|
||
- `J.` : Journées
|
||
- `H.` : Heures
|
||
|
||
### Saisie des Assiduités
|
||
|
||
La saisie se fait soit sur un groupe soit sur un étudiant. Dans tous les cas il
|
||
y a deux façons de saisir l'assiduité. Une saisie `Journalière` et une saisie
|
||
`Différée`.
|
||
|
||
#### Saisie d'un groupe
|
||
|
||
Comme dans l'ancien système, pour saisir l'assiduité d'un groupe il faut se
|
||
rendre sur la page un semestre du département concerné.
|
||
|
||
![Page du semestre concerné](#)
|
||
|
||
Au bas de cette page vous retrouverez la liste des groupes du semestre. Si vous
|
||
avez la permission de modifier l'assiduité, vous observerez 3 boutons
|
||
supplémentaires sur chaque groupe vous permettant de voir ou saisir l'assiduité
|
||
du groupe.
|
||
|
||
#### Saisie Journalière
|
||
|
||
La première chose à faire lorsque vous êtes arrivés sur la page "Saisie
|
||
Journalière" c'est de compléter les informations de la séance :
|
||
|
||
![Capture des sélecteurs](#)
|
||
|
||
- Le ou les groupes sélectionnés (dans la plupart des cas, le groupe est déjà
|
||
présélectionné)
|
||
- Le module concerné (par défaut il n'est pas obligatoire de sélectionner un
|
||
module, cependant une configuration permet de forcer la sélection)
|
||
- La date de la saisie. Attention, seule les dates comprises dans le semestre
|
||
sont valides. (Un message d'erreur vous le signalera si la date n'est pas
|
||
valide)
|
||
|
||
Lorsque vous êtes sûr de vous, appuyer sur le bouton `Valider`.
|
||
|
||
**Attention : La validation est définitive, si vous avez fait une erreur il faudra recharger la page**
|
||
|
||
Après la validation, les champs précédents seront grisés.
|
||
|
||
Explication de l'interface
|
||
|
||
![Capture de l'interface](#)
|
||
|
||
1. La ligne temporelle (Timeline) sert à désigner la période de l'assiduité qui sera saisie.
|
||
|
||
Il est possible de la déplacer en maintenant le clic gauche dessus puis en
|
||
bougeant la souris.
|
||
|
||
Si la période n'est pas de la bonne taille, il est possible de l'agrandir ou
|
||
de la réduire en plaçant sa souris à l'extrémité droite.
|
||
|
||
Votre curseur devrait changer, à partir de ce moment là vous pouvez cliquer
|
||
puis bouger l'extrémité pour modifier la taille de la période.
|
||
|
||
Si la période bouge toujours alors que vous avez lâché le clic gauche,
|
||
cliquer à nouveau.
|
||
|
||
2. Les boutons d'actions de masse `Mettre tout le monde : `. Ces boutons
|
||
définirons le même état pour chaque étudiant sur la période sélectionnée.
|
||
|
||
En cliquant sur un bouton d'état, l'état sera mis pour chaque étudiant, pour
|
||
modifier cet état il faut appuyer sur un autre bouton d'état.
|
||
|
||
Si vous souhaitez retirer les assiduités, il faut cliquer sur le bouton
|
||
d'état ayant le même état que les étudiants.
|
||
|
||
3. Les lignes étudiants sont des lignes montrant les informations d'assiduité de
|
||
chaque étudiant. Chaque ligne est composée de 3 parties :
|
||
|
||
1. Le nom, le prénom et une photo de l'étudiant afin de le reconnaître
|
||
facilement
|
||
|
||
2. Une petite ligne temporelle montrant l'assiduité de l'étudiant sur la
|
||
journée.
|
||
|
||
Le carré au début de la ligne montre la dernière assiduité du jour
|
||
précédent.
|
||
|
||
En passant votre souris au dessus des couleurs, vous aurez accès à plus
|
||
d'informations sur l'assiduité de l'étudiant.
|
||
|
||
Cliquer sur une assiduité positionnera la ligne temporelle globale sur
|
||
la période de l'assiduité.
|
||
|
||
La période globale est représentée par un encadré bleu sur la ligne
|
||
temporelle.
|
||
|
||
Les assiduités justifiées et validés sont représentés par leur couleur
|
||
respective + un hachage bleu
|
||
|
||
Les assiduités justifiées mais non validées sont représentés par leur
|
||
couleur respective + un hachage rouge.
|
||
|
||
3. Les boutons d'assiduités individuels. Ces boutons permettent de déterminer l'état de l'étudiant.
|
||
|
||
Ils fonctionnent de la même façon que les boutons `mettre tout le monde :`.
|
||
|
||
Si la ligne de l'étudiant est rouge, cela signifie que la période
|
||
sélectionnée rentre en conflit avec les assiduités de l'étudiant.
|
||
Cliquer sur un bouton d'assiduité ne modifiera pas l'état de l'étudiant
|
||
mais ouvrira un menu de résolution de conflit.
|
||
|
||
![Résolution de conflit](#)
|
||
|
||
Les assiduités de la page sont enregistrées en temps réel. Lorsque la saisie est
|
||
terminée vous pouvez fermer la page.
|
||
|
||
#### Saisie différée
|
||
|
||
La page saisie différée a pour but de faciliter la saisie d'assiduités avec
|
||
plusieurs périodes.
|
||
|
||
![Page différée](#)
|
||
|
||
La page est composée d'un tableau et d'un bouton valider.
|
||
**Cette page ne sauvegarde pas automatiquement les modifications**
|
||
|
||
Explication du tableau :
|
||
|
||
- La colonne `Noms` : Vous y retrouverez tous les étudiants du groupe
|
||
sélectionné. En cliquant sur le titre de la colonne vous pourrez changer
|
||
l'ordre des étudiants (croissant ou décroissant)
|
||
- Les colonnes `Assiduités` : Lorsque vous arrivez sur la page, une seule
|
||
colonne d'assiduité est présente.
|
||
|
||
Si vous avez besoins d'autres colonnes, appuyer sur le bouton `+`.
|
||
|
||
Si vous souhaitez supprimer une colonne appuyer sur la `croix X` de la
|
||
colonne.
|
||
|
||
Il vous faudra remplir la colonne afin de pouvoir saisir l'assiduité des
|
||
étudiants :
|
||
|
||
1. La date de début : Sur la première colonne, la date par défaut sera la
|
||
date du jour, sur les nouvelles colonnes, la date par défaut sera la date
|
||
de fin de la colonne précédente.
|
||
2. La date de fin : La date de fin n'est pas renseignée par défaut,
|
||
cependant la première fois que vous changer la date de début de la
|
||
colonne, la date de fin sera automatiquement mise à jour de façon à
|
||
prendre la taille d'un créneau classique (configuration du
|
||
semestre/département).
|
||
3. Le module concerné par l'assiduité. Ce sélecteur n'est pas obligatoire
|
||
par défaut (configuration du semestre/département).
|
||
4. `Sélectionner une assiduité` permet de mettre tous les étudiants à un
|
||
certain état. Ce sélecteur n'est pas obligatoire.
|
||
|
||
- Chaque ligne du tableau correspond à un étudiant. Vous pouvez alors
|
||
sélectionner l'état de l'assiduité de chaque étudiant pour chaque colonne.
|
||
|
||
Après avoir rempli le tableau il faudra valider en cliquant sur `valider les assiduités`.
|
||
|
||
Après validation, toutes les colonnes seront désactivées, si besoins vous pouvez
|
||
les réactiver en cliquant sur `Activer` pour chaque colonne.
|
||
|
||
Il est possible que des erreurs apparaissent. Les erreurs sont gérées par
|
||
colonnes puis par étudiant. Cela signifie qu'une erreur de colonne (ex: une
|
||
mauvaise date) désactivera complètement la colonne alors qu'une erreur
|
||
d'étudiant (ex: l'étudiant possède déjà une assiduité sur cette période)
|
||
désactivera uniquement l'envoie de l'assiduité le concernant.
|
||
|
||
Vous pouvez obtenir plus d'informations sur l'erreur en plaçant votre souris au dessus du `ℹ️`.
|
||
|
||
Il est possible de forcer la mise à jour des assiduités : **Attention, cela ne
|
||
fonctionnera que pour les assiduités ayant exactement la même période** (ceci
|
||
permet de corriger facilement les saisies où l'on aurait oublié d'indiquer le
|
||
module).
|
||
|
||
Chaque colonne possède un numéro distinctif qui est visible en laissant la
|
||
souris au dessus de l'entête de la colonne. Ce numéro est utilisé dans les
|
||
messages d'erreurs.
|
||
|
||
!!! note "Voir aussi"
|
||
|
||
- [Migration des absences vers les assiduités](AssiduitesMigration.md)
|
||
- [API](ScoDoc9API.md) : API pour interfaçage avec d'autres applications
|
||
- [FAQ](FAQ.md)
|
||
- [Contacts](Contact.md)
|