Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Version 2.2.0 - en cours ...

08/04/2024

  • Vue uncaughtException : ajout du type d'exception
  • Amélioration IHM de Admin < GroupRoles pour le multi-groupes et posixGroupes
  • Fixe : exceptions sur la récupération de groupes ldap (non connus) provoquent simplement des logs en trace

05/04/2024

  • Màj librairies spring et driver postgresql
  • Debug messages via sélection multiple
  • Vérification de la cohérence des messages avec le cycle vie de la carte

  • Ajout possibilité messages ENABLE->RENEWED

28/03/2024

  • API REST : si CSN déjà positionné, une carte peut passer à l'état encodé sans besoin de positionner le CSN au moment de l'appel

25/03/2024

  • API REST : webService pour dépôt CSV CROUS
  • FormService : pas d'encodage (usage simple d'utf-8), plus simple et plus court, et ne semble a priori pas poser de pb (question)  - cf plus bas, modifiez la configuration de FormService dans applicationContext-services.xml pour mettre hashType à HASH si vous voulez conserver l'ancien comportement/encodage des URLs (càd le comportement proposé avant cette 2.4.0).

18/03/2024

  • Log en warn de l'ip / user-agent et remote_user sur les réponses HTTP 403 (forbidden) - facilite la configuration / debug des pbs de droits, et de restriction par IP sur les APIs par exemple.
  • FormService : encodage via simple urlencoder, plus court que hexa - cf plus bas, modifiez la configuration de FormService dans applicationContext-services.xml pour mettre hashType à HASH si vous voulez conserver l'ancien comportement/encodage des URLs.

15/03/2024

  • API REST : optimisation spring-security - les appels à l'API sont moins coûteux et plus rapides

13/03/2024

  • FormService : max nombre de valeurs des champs recherche par filtre : 200->10000
  • FormService : encodage via encodage hexadécimal par défaut et non plus simple hash pour éviter les collisions (régression par rapport au HASH : limite le nombre max de critères utilisables à cause de la limitation de la longueur des urls à 2048 caractères)

Si vous avez besoin de revenir à l'encodage précédent (HASH et non HEXA) pour préserver les urls que vous auriez en favori par exemple, vous pouvez modifier le FormService (applicationContext-services.xml) ainsi 

Bloc de code
languagexml
themeRDark
    <bean id="formService" class="org.esupportail.sgc.services.FormService">
        <property name="nbFields" value="3"/>
        <property name="fieldsValuesNbMax" value="200"/
        <property name="hashType" value="HASH"/>
        <property name="fieldsList">
          <map>
            ...


12/03/2024

  • API REST : possibilité de noter une carte comme encodée en envoyant le CSN

11/03/2024

  • Restriction de l'impression aux ROLE_PRINTER (édition en 2 passes) ou via l'affectation à une imprimante via eppn ou groupe pour l'édition en 1 passe si la configuration PRINTER_ROLE_CONFIG (dans admin < condigurations) est cochée. 

Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande : 

Bloc de code
mvn compile exec:java -Dexec.args="dbupgrade"

Cela vous positionnera la configuration PRINTER_ROLE_CONFIG qu'il faudra adapter - mettez la à true si vous souhaitez resrteindre la possibilité d'impression à certains gestionnaires (MANAGER) via ROLE_PRINTER ou/et l'affectation d'imprimantes depuis admin < imprimantes.

02/02/2024

  • Timeout sur requêtes async / long polling fixé en dur à 20min. - jetty ne permet pas cette config (30 sec. sinon avec jetty) - correspond sous tomcat à asyncTimeout.

Version 2.1.3 - 26/01/2024

26/01/2024

  • Mise à jour librairies spring... supporte JDK 8, 11 et 17 - Tomcat 9 préconisé / Tomcat 10 non supporté.

20/01/2024

  • Vue Denied / amélioration des codes status http d'erreur (404, 500, 403)
  • ROLE_RESTRICTED_CONSULT : permet de réduire les privilèges des gestionnaires : pas de consultation de la fiche détaillée d'un utilisateur/carte
  • WebService POST en /setCardEtat/{cardId} - paramètre printerEppn pour lancer l'édition/impression de la carte par simple Web Service

19/01/2024

18/01/2024

  • Vue Admin/Sessions : classification par userType

17/01/2024

  • Mise à jour de librairies java (spring, spring-security ...)

  • Debug : vue manager pour ROLE_CONSULT_X

Version 2.1.2 - 09/11/2023

09/11/2023

  • Vue Admin/GroupsRoles pour visualisation de la récupération et calcul groupes/rôles

  • Vue Admin/UserInfos pour affichage du temps de calcul de la récupération des UserInfos

  • Fix logs pattern whith no http requests / sessions

24/10/2023

  • Log trace groupes et rôles
  • Page en /user/shib pour affichage/debug headers http
  • Vue admin UserInfos pour affichage/test/debug des userInfosServices

09/10/2023 

  • API CROUS : amélioration log erreur - tentative de modificaition d'un étudiant vers autre statut n'est pas (ne doit pas être) possible côté crous/izly

02/10/2023 

  • Debug API CROUS : activation/désactivation carte CROUS ne se faisait plus systématiquement sur les comptes existants (étudiants) suite au commit précédent - f983e91855076034d

29/09/2023

  • Amélioration algo droits demande de carte par gestionnaire
  • Debug message d'erreur - demande de cartes pour utilisateur sans droit de gestionnaire

  • Pas de synchro si les duedates sont passés

  • ESCR : pas de màj si les expiry date sont antérieures à la date du jour

  • API CROUS/IZLY : pas de màj si les duedate sont antérieures à la date du jour

  • API CROUS/IZLY : étudiants - pas d'update si date de fin locale antérieure à date de fin sur crous/izly

  • Debug : export CSV ok pour manager mais aussi manager d'un type donné, livreur, etc.

Version 2.1.1 - 07/09/2023

01/09/2023

  • API CROUS : un étudiant (IdCompagnyRate=10) ne doit pas changer de IdCompagnyRate - si tentative de modification alors log erreur et pas d'update sur crous/izly pour l'ayant droit (et donc configuration à revoir côté esup-sgc de l'établissement).

Version 2.1.0 - 25/08/2023

25/08/2023

  • Purge des cartes en fonction des userType
  • Page admin - imprimantes : ordre en fonction de la date de connexion

17/07/2023

  • Vue manager - préférences : possibilité de choisir son onglet par défaut

  • Vue manager - debug slim-select sur le bouton + (plus de filtres)

05/07/2023

  • Lien visuel sur vue utilisateur carte dématérialisée pour les cartes en état validé, encodé, activé, désactivé

  • Debug : demande de carte par le manager -> dernière photo en date si dispo

  • Debug : ajustement content-type images dans html b64

Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande : 

Bloc de code
mvn compile exec:java -Dexec.args="dbupgrade"

Cela vous positionnera la configuration BMP_COMMAND_VIRTUAL qu'il faudra adapter - mettez la à vide si vous ne souhaitez pas proposer le lien de la carte en plein écran (~ dématérialisée) à l'utilisateur.

En cliquant sur le lien/bouton Image Addedpuis en recliquant sur la carte "dématérialisée" celle-ci s'affiche en plein écran.

04/07/2023

  • Tri par défaut admin cartes CROUS/Izly CSV
  • Màj & debug suneditor pour configurations html
  • Debug : suppression printer_eppn lors de l'impression sans sélection d'imprimante 1 passe
  • Debug secu : les gestionnaires des cartes extérieures peuvent les importer via le formulaire recherche ldap
  • Demande de carte par un gestionnaire : exception si droits KO

27/02/2023

  • Mise à jour de librairies java : spring, slf4j, commons-fileupload, jackson

Version 2.0.0 - 17/02/2023

Cette version permet l'édition des cartes en 1 passe, cette évolution a été développée dans le cadre de l'Appel À Projets Services Numériques Aux Étudiants ESUP-SGC 2022/2023.

14/02/2023

  • Optimisation récupération images BMP d'une carte (choix arbitraire) dans la vue d'un thème pour l'administrateur (pour impression+encodage en 1 1 passe)
  • Debug P2S / PcPass / AC UniLassalle lors du redémarrage d'esup-sgc

  • cleanup web.xml

13/02/2023

  • Configurations  BMP_COMMAND_COLOR_PRINTER et BMP_COMMAND_BLACK_PRINTER pour impression+encodage en 1 seul passe
    Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande : 
Bloc de code
mvn compile exec:java -Dexec.args="dbupgrade"

          Cela vous positionnera les configurations BMP_COMMAND_COLOR_PRINTER et BMP_COMMAND_BLACK_PRINTER  qu'il faudra adapter si vous souhaitez bénéficier de la possibilité de l'édition (impression + encodage) en 1 seul passe via des imprimantes avec encodeurs (evolis ou zebra). Merci de vous référer à la page wiki Édition en 1 passe pour plus d'information sur cette mise en oeuvre.

  • Possibilité d'envoyer des messages n jours avant le passage de la carte en état 'caduque'.
    • cette fonctionnalité est mise en oeuvre via la tâche planifiée à configurer / commenter dans applicationTasksContext.xml (il est fort probable que suite à un merge vous aurez un confilt à régler dans ce fichier applicationTasksContext.xml).
    • ces messages/mails de ce type peuvent ensuite être configurés dans l'interface web (admin < messages).
  • Salle de badgeage pour marquer les cartes comme détruites

21/11/2022

  • Ajout WebService pour impression+encodage en 1 passe via long poll
  • Màj librairies java

07/11/2022

  • Debug : Utilisation de DateTimeFormatter au lieu de SimpleDateFormat qui n'est pas threadsafe
  • PapercutService : ajout d'un paramètre useReverseCsn (si true, alors c'est le csn inversé qui est envoyé à papercut - valeur par défaut false)
  • API REST : export carte en format HTML (complet, couleur ou noir/blanc) avec images en base64

19/10/2022

  • API REST : export carte en format HTML avec images en base64

Version 1.9.3 - 17/10/2022

17/10/2022

  • Optimisation SQL : amélioration vitesse d'affichage page /manager

  • Fixe LdapUserInfoServiceTest quand 0 ou >1 bean de type LdapUserInfoService

14/10/2022

  • Optimisation SQL : amélioration vitesse d'affichage page /manager, page /user et des synchros

  • Affichage en min/sec/ms des temps de synchro

29/09/2022

  • Debug Contrôle d'accès : si date enabled sur carte à null, carte jamais activée (cas d'une carte encodée devenue caduque)

  • Refactoring / Debugage : si crous activé par défaut : affichage info crous pour l'utilisateur

15/09/2022

  • Debug : affichage bouton (modifier) crous dans la vue utilisateur en fonction de la configuration DISPLAY_FORM_CROUS
  • Possibilité de demander un renouvellement de carte via API

  • Fixe le tri des onglets userTypes

  • Mise à jours librairies dont driver mysql/postgresql

Version 1.9.2 -  07/09/2022

07/09/2022

  • Amélioration du message d'information à l'utilisateur concernant l'erreur crous (avec crous désactivé)

01/09/2022

  • Fixe RNE lors de la récupération dynamique des tarifs
  • Debug Importation cartes extérieures (KO depuis 1.9.0)

  • Authentification OK même si erreurs de synchronisation utilisateur

Version 1.9.1 -  30/08/2022

22/08/2022

  • Debug demande de carte via web service REST pour utilisateur non connu en base
  • Pas d'appel à validateService.invalidate si pas nécessaire(caduc->disabled ou disabled->caduc)

12/07/2022

  • Debug SwitchUser sur utilisateur avec synchro HS (bis)

11/07/2022

  • Debug SwitchUser sur nouvel utilisateur non connu en base

05/07/2022

  • Ajout tâche cron de mise à jour auto des règles de calcul des tarifs CROUS (à décommenter) - cf 279a674e9d0052fb6d - fichier applicationTasksContext.xml

Version 1.9.0 -  05/07/2022

Attention, cette version voit disparaitre l'usage des fichiers ESIST au profit de règles recupérées dynamiquement depuis l'API CROUS.
Lors de votre montée de version sur cette 1.9.0, il faut configurer les règles à récupérer via esup-sgc avant toute synchronisation de vos ayants droits sur l'api crous (sous peine d'un potentiel changement de tarif et envoi de mail par crous/izly).
Pour ce faire,  désactivez/commentez temporairement la tâche de synchronisation totale de vos utilisateurs synchronizeAllUsersInfos dans applicationTasksContext.xml.
Démarrez ainsi votre esup-sgc afin de configurer de suite cette récupération de règles au travers de l'IHM depuis l'onglet "Admin" / Tarifs CROUS.

05/07/2022

  • API CROUS : possibilité pour l'ayant droit de déclôturer son compte CROUS/IZLY

  • API CROUS : gestion des tarifs via l'IHM et synchronisation auto via API CROUS (en lieu et place des fichiers XML ESIST)
  • Attention, suite à un  git merge/pull de cette modification, vous devrez sans doute résoudre un conflit dans src/main/resources/META-INF/spring/applicationContext-crous.xml :
    l'ensemble du bean esistCrousService ne doit plus figurer dans ce fichier - les fichiers ESIST XML ne sont plus utilisés ; voir à ce propos la page Tarifs CROUS
  • UserInfoService : prise en compte de caducIfEmpty même si synchronize à false

  • Authentification / Switch User fonctionnelle même si une erreur de synchro se produit

  • CsvExportAcInsaService : date de fin max à 31/12/2049 pour contrôle accès INSA

12/04/2022

  • Lien 'voir carte' pour l'utilisateur uniquement sur les cartes imprimées.

Version 1.8.5 -  01/04/2022

01/04/2022

  • Mise à jour librairies Spring

  • API CNOUS : ajout de /beforeizly dans l'url - modification config applicationContext-crous.xml
    Attention, suite à un  git merge/pull de cette modification, vous devrez sans doute résoudre un conflit dans src/main/resources/META-INF/spring/applicationContext-crous.xml :
    la propriété weburl de apiCrousService ne doit maintenant plus proposer le suffixe /v1 - en production on aura donc maintenant <property name="webUrl" value="https://api.lescrous.fr" />

  • Ajout d'un test ldap

Version 1.8.4 -  08/03/2022

01/03/2022

  • CROUS : debug commit du 28/02/2022 ...

28/02/2022

  • CROUS : gestion de l'erreur 462 406 'Le compte a un rne prioritaire qui est différent du rne proposé'

Version 1.8.3 -  22/02/2022

19/01/2022

  • Màj librairies aspectj/java : support du JDK 11

  • Possibilité de configurer devRemoteUser=toto@univ-ville.fr pour auth générique sans l'environnement shibbolteh SP (facilite le développement)

  • Message d'erreur lorsque l'entête HTTP remote_user non récupérée via shib

Version 1.8.2 -  12/01/2022

12/01/2022

  • Màj librairies spring, spring-security et jackson-databind

  • user_account.update_date : date de dernière modification/synchronisation de l'utilisateur
    -> affichage date de mise à jour de l'utilisateur

  • log de l'ensemble des champs non égaux lors des synchronisations.

08/12/2021

  • Màj webjars-locator

07/12/2021

  • Cache Control et cache busting

Version 1.8.1 -  07/12/2021

07/12/2021

  • Ajout d'index en BD -> optimisation des synchronisations utilisateurs

  • Possibilité d'annuler les demandes de carte par un gestionnaire

  • Mise à jour librairies spring

Version 1.8.0 -  27/10/2021

26/10/2021

  • Debug : fixe 2 entrées en table pour un seul paiement - e0c854948d62

22/10/2021

  • Fixe UserInfoServiceTest quand pas d'utilisateur - 88e59f54092

16/09/2021

  • API ESC : si la validation de la carte côté ESC échoue, on n'annule pas/plus l'activation de la carte
  • RestValidateService : simple log en warn quand not found sur un get

03/09/2021

  • API Crous : on considère la valeur d'un champ (de RightHolder) null et vide comme égaux
  • Logs trace patch invalidate crous card

20/07/2021

  • Fixe org.xml.sax.SAXParseException: Le type d'élément "tiles-definitions" doit être déclaré : diff
    Cette exception peut survenir après authentification suite à un redémarrage d'esup-sgc.

06/07/2021

  • Web Service proposant la création et récupération de la clef DAM selon les spécifications ESC
    esup-sgc implémente cette fonctionnalité sur une clef de base aléatoire, la clef résultante est stockée en base
  • Tests ok si pas de EscDeuInfoService
  • Màj de librairies

Version 1.7.1 - 27/05/2021

27/05/2021

  • Possibilité de ne plus adhérer à ESC
  • Ajout d'un test de validation chaîne deuinfo

06/04/2021

  • DeuInfo : debug de la vérification du certificat : ordre de la chaîne de certification choisi : certificat de l'établissement en dernier.
  • Support DeuInfo multiple picc (permet de prendre en compte le champ picc de l'utilisateur et ainsi avoir des picc différents dans un même SGC (cas d'usage : SGC multi-établissements)
  • Possibilité de pousser ESCN et/ou ESI dans LDAP

  • Modification de la configuration des contrôles accès : on spécifie le chemin d'accès au répertoire/montage de sortie du CSV dans chaque bean de chaque contrôle d'accès.
    Ainsi on peut avoir plusieurs instances de contrôles d'accès d'une même solution différents (pour du multi-établissements, ou multi-sites avec des serveurs P2S non unifiés par exemple).
    Attention, suite à un  git merge/pull de cette modification, vous devrez sans doute résoudre un conflit dans src/main/resources/META-INF/spring/applicationContext-acces-control.xml
    Ainsi, cf le diff sur github, il faut passer, au niveau de src/main/resources/META-INF/spring/applicationContext-acces-control.xml, d'une configuration en 

    Bloc de code
    languagexml
      	<bean class="org.esupportail.sgc.services.ac.CsvExportP2sService"/>
    
      	<bean id="p2sVfsAccessService" class="org.esupportail.sgc.services.fs.VfsAccessService">
          <property name="uri" value="file://tmp/" />
        </bean>

    à la configuration suivante (pour chaque contrôle d'accès, l'id du bean p2sVfsAccessService permettant de définir le répertoire/montage de sortie du CSV est donné en paramètre au bean d'export du contrôle d'accès)

    Bloc de code
    languagexml
      	<bean class="org.esupportail.sgc.services.ac.CsvExportP2sService">
      		<constructor-arg ref="p2sVfsAccessService"/>
      	</bean>
    
      	<bean id="p2sVfsAccessService" class="org.esupportail.sgc.services.fs.VfsAccessService">
          <property name="uri" value="file://tmp/" />
        </bean>


Version 1.7.0 - 19/03/2021

10/03/2021

  • Amélioration de la recherche plein texte : on indexe maintenant tous les recto, verso, INE, numéro de contrôle d'accès, ...
  • Fixe trop de données dans recherche champs libre / plus de filtres
  • API CROUS : pas de post/patch si date de fin de l'utilisateur est passée
  • API CROUS : étudiant - pas de tentative de put si idRate est différent (tarifs 1€)
  • API ESC : cardType fonction de la date d'encodage
  • Nouveau format ESI : urn:schac:personalUniqueCode:int:esi:fr:INE
  • Debug : message new→request_checked ne fonctionnait pas

Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande : 

Bloc de code
mvn compile exec:java -Dexec.args="dbupgrade"

Si vous obtenez l'erreur suivante

Bloc de code
Caused by: org.postgresql.util.PSQLException: ERROR: must be owner of function textsearchable_card_trigger

Vous devez modifier le owner de ces fonctions en lançant les commandes suivantes dans votre pbase esupsgc sous postgres (psql) : 

Bloc de code
ALTER function textsearchable_user_account_trigger() owner to esupsgc ;
ALTER function textsearchable_card_trigger() owner to esupsgc ;

23/02/2021

  • Erreur CROUS : proposition de la modification/migration de l'identifiant dans plus de cas
  • Affichage de la date limite user/card à l'utilisateur

Version 1.6.1 - 16/12/2020

16/12/2020

  • API ESC : L'identifiant étudiant européen (ESI) ne peut être modifié : on garde celui qui a été utilisé en premier, même si il a été construit depuis un INE temporaire.

11/12/2020

  • API CROUS : pas d'exception sur récupération compte clôturé crous : même comportement que compte non trouvé - on log une erreur simplement.
  • On permet au gestionnaire de noter comme livrées les cartes caduques, détruites, désativées (et non plus seulement activées) -> permet de débloquer la demande de carte.
    -> après livraison, activation que si la carte était à l'état encodé.
  • On permet la livraison des cartes désativées par l'utilisateur -> permet de débloquer la demande de carte.
  • Affichage de la date de livraison des cartes à l'utilisateur.

10/12/2020

  • API ESC : pas d'exception sur l'échec de la création d'un étudiant ESC dans ESCR si l'INE n'est pas présent, on log une erreur simplement. 

Version 1.6.0 - 07/12/2020

07/12/2020

  • API CROUS : Mise à jour : utilisation de appId/appSecret au lieu de login/password

    La méthode d'authentification via login/password sur l'API CROUS est actuellement dépréciée et ne sera plus disponible/possible à partir de fin janvier 2021.
    Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici récupérer un appId/appSecret depuis https://developers.lescrous.fr - cf Configurations API CROUS
    Si vous utilisez git pour tenir à jour votre esup-sgc, vous aurez logiquement un 'conflit' sur le fichier src/main/resources/META-INF/spring/applicationContext-crous.xml - celui-ci a été modifié pour remplacer les 2 lignes login/password par les 2 lignes appId/appSecret - à vous de modifier le fichier en ce sens.

25/11/2020

  • API CROUS : pas d'update sur les étudiants pour des modifications sur nom/prenom/email/datedenaissance quelque soit l'état du compte :
                          ces infos sont normalement créées par l'import du fichier de la CVEC et l'api ne peut pas les modifier
  • API CROUS : Affichage StatutCompte, StatutBlocage et date de naissance.

  • Contrainte d'unicité eppn sur escr_student.

  • Utilisation des webjars pour libs css/js.

  • Màj librairies css/js.

  • Màj librairies jar.

Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande : 

Bloc de code
mvn compile exec:java -Dexec.args="dbupgrade"

Version 1.5.3 - 03/09/2020

03/09/2020

  • Crous/Izly: récupération en base des tarifs spéciaux étudiants ~boursiers positionnés par le CROUS - cf Tarifs CROUS - jusqu'à la 1.9.0#Etudiants
  • Stats: demandes non éditables par adresse

  • Stats: périodes d'édition des cartes

  • Stats: tarifs CROUS - personnes avec due_date>now() uniquement

  • Stats : dates des prochains comptes caducs

Version 1.5.2 - 09/07/2020

09/07/2020

  • Amélioration du rendu des statistiques (chartjs)

15/04/2020

  • ESC DEUINF0 : implémentation de la partie permettant de signer la deuinfo, intégrer le certificat, valider la deuinfo et proposer un affichage sommaire lors du badgeage d'une carte étudiante européenne.
    (en lien avec implémentation de l'écriture et lecture e la DEUINFO côté esup-nfc-tag-server - modification effectuée ce même jour).

...