171 lines
9.5 KiB
Markdown
171 lines
9.5 KiB
Markdown
## Module "Assiduités"
|
||
|
||
Ce module de ScoDoc a pour but de remplacer le module d'Absences présent dans 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.
|
||
|
||
[Vidéo de présentation du module d'assiduités ](#)
|
||
|
||
## Fonctionnalités
|
||
|
||
Le module, intégrée à ScoDoc, fournit pour l'instant:
|
||
|
||
- Gestion des absences/présences/retard
|
||
- 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 numériques.
|
||
- API complète
|
||
|
||
## Guide d'utilisation
|
||
|
||
- [Personnalisation du module](#personnalisation-du-module)
|
||
- [Saisie des Assiduités](#saisie-des-assiduités)
|
||
|
||
### 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**
|
||
|
||
Tout comme l'ancien module, 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 clique 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 clique 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 une 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 à 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**
|
||
(Cela a été mis en place pour facilement corriger les oubli de 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. |