Version 2.4.1 - en cours...
03/12/2024
- ESC : fixe Post/PUT pour màj carte existante
- applicationContext-crous.xml par défaut - typo : ApiEscrService->ApiEscService
Version 2.4.0 - 02/12/2024
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
Attention, suite à un git merge/pull sur cette version, vous devrez sans doute résoudre un conflit dans src/main/resources/META-INF/spring/applicationContext-crous.xml pour la partie ESC (Carte Etudiante Européenne):
le bean europeanStudentCardService doit être reconfiguré suite à la migration de l'usage de l'API ESC-R V1 à V2.
Merci de vous référer à la configuration par défaut de ce bloc ainsi qu'à la documentation à jour : Carte étudiante européenne
02/12/2024
- ESC-R : Migration ESCR API v1 -> API v2
- LdapValidateService : ajout de enabled_date, due_date, etat_date et etat suite sollicitation UHA
- freeField1->freeField7 depuis Card pour éventuel récupération/affichage dans listing carte
- Debug prise en compte de ENABLE_EUROPEAN_CARD
- Tableau manager amélioration responsive / breakpoints
- Màj libs JS
- Debug apostrophe simple - Fixes #36
- slim-select : upgrade to 2.9.2
- Critères de recherche préservés lors de changement d'état en masse
- Lien onglet/userType préserve les critères de recherche
08/10/2024
- Affichage du CSN en décimal
Version 2.3.1 - 08/10/2024
08/10/2024
- Possibilité de marquer comme détruite une carte encodée.
- Possibilité de renouveler une carte marquée comme détruite.
- Màj spring/spring-security
- Si 2 cartes avec le même qrcode en cours d'impression -> exception
07/10/2024
- CROUS : màj statut, ajout de ctr, hb2, hb3, hb4, hb5, hb6, po, rtr
- Vue manager : date de fin dans le tableau du listing
10/09/2024
- Ajout de BashValidateService - cf la documentation à ce propos
30/08/2024
- Optimisation requête eppns pour synchronisation totale
- Admin < printers : affichage jusqu'à 512 caractères pour maintenanceInfo et listes eppns/groupes
28/08/2024
- Datasource postgresql : pool de connexions : 8->50
- Admin : vue javaperf : ram, pools, threads
- Fix /manager/ldapUserForm vs /manager/{id} GET/POST
09/07/2024
- Listing de toutes les sessions HTTP dans /admin/currentsessions :
- permet d'identifier l'ensemble des sessions (un utilisateur peut avoir plusieurs sessions)
- si une session n'est pas liée à un utilisateur, la session est surlignée en rouge ; le code esup-sgc est alors à optimiser.
- Optimisation des créations de sessions; objectif : pas de session pour les appels REST.
08/07/2024
- Horoquartz P2S : date max est maintenant à 2099/12/31
Version 2.3.0 - 03/07/2024
03/07/2024
- Log trace getPrinters
27/06/024
- Page Admin < NfcLocations permettant de visualiser les salles de badgeage (ESUP-SGC àdestination d'ESUP-NFC) d'un utilisateur
25/06/024
- LdapValidateService: export CSN en decimal via %csn_dec% et %reverse_csn_dec%
- Ajout des champs freeField4, freeField5, freeField6, freeField7
15/05/2024
- Support de l'impression en Recto/Verso - par défaut, les thèmes de carte sont configurés pour impression en recto simplement, le support du verso se fait via l'édition du thème par un administrateur dans l'interface web.
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
13/05/2024
- Debug : prise en compte de 'Printer Users' dans 'Admin < Imprimantes'
Version 2.2.0 - 03/05/2024
29/04/2024
- Optimisations vue /manager
10/04/2024
- Debug NullPointerException sur GroupsRolesController
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 - 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
<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 :
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
WS REST : cardRequest (POST /wsrest/api) renvoie l'id de la carte en cas de succès
Nouveau WebService POST en /setCardEtat/{cardId} permet de changer l'état d'une carte
Cf la question de la FAQ "Comment passer la carte d'un état à un autre via web-service ?"
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 :
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 puis 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 :
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
462406 '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'utilisateurlog 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<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)
<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 :
mvn compile exec:java -Dexec.args="dbupgrade"
Si vous obtenez l'erreur suivante
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) :
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 :
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).
06/03/2020
Amélioration statistiques : statistiques supplémentaires et par année universitaire
Version 1.5.1 - 25/02/2020
25/02/2020
- Calcul et persistence de idCompagnyRate/idRate même si crous non demandé
- Synchronisation UserInfo - logs moins verbeux, plus pertinent et en debug (en non plus en trace)
- Synchronisation UserInfo - améliorations (null équivalent à empty)
- API CROUS - vérification des valeurs avant PUT ne tient plus compte des accents
- API REST Photo : photo par défaut 'not found' en body du 404
- Ajouts et améliorations des tests junit
22/01/2020
- AsyncRestValidateService : permet de notifier un service REST de la validation/invalidation d'une carte sans blocage, et avec la possibilité de définir un delay en ms pour l'appel REST.
- Fixe messages i18n
08/01/2020
- RestTemplateClientCertBuilder pour appel REST avec certif P12
Export CSV: nom, prénom, date de naissance, ine, date limite
Debug externalCard - dueDate CADUC
Log authToken
Version 1.5.0 - 26/11/2019
26/11/2019
- Configuration via IHM des Apps clientes proposées dans la barre de navigation du haut - pensez à adapter les configurations de Admin > NavBarApp après cette mise à jour !
- ws /wsrest/nfc/generateAuthToken pour esup-nfc-tag-server
- màj jackson-databind
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
Suite à cette mise à jour, vous pouvez reconfigurer les liens sur les clients eusp-sgc/esup-nfc proposés dans la barre de navigation, ce via la page Admin > NavBarApp.
Pour pouvoir proposer effectivements ces applications clientes, vous pouvez maintenant :
- les générer depuis https://esup-sgc-client-web-installer.univ-rouen.fr
- et pour l'application Android, proposer directement le esup-nfc-tag-droid officiel : https://play.google.com/store/apps/details?id=org.esupportail.esupnfctagdroid
12/11/2019
- Debug validation CROUS sur carte déjà activée
SVG workflow - textes plus lisibles
Filtres operation/bloquant dans erreurs crous
Invalidation ESCR : log uniquement en erreur, mais pas/plus d'exception
23/10/2019
- API WS NFC /wsrest/nfc/getUserField?fieldName=email pour récupération champs quelconque depuis csn
22/10/2019
- Récupération email par badgeage 'secondaryId'
- Api Crous : amélioration logs erreur sur GET
- Paybox : vérification signature
Version 1.4.1 - 18/10/2019
18/10/2019
- Lien vers la page d'erreurs crous du wiki ESUP depuis l'onglet 'admin' > 'erreurs crous'
17/10/2019
- Meilleure log/affichage lors d'une erreur d'activation/désactivation de la carte
- Debug : l'activation crous par l'utilisateur procède maintenant à l'activation du CROUS de manière synchronisée
15/10/2019
- API CROUS : modification de la date de fin pour un étudiant uniquement si la nouvelle date de fin est supérieure à la date de fin actuelle CROUS.
Màj librairie jackson-databind -> 2.9.10
Show crousErrorLog : meilleur gestion des exceptions lors du GET
Debug order getting one card for user : ENABLED order first and date order n
Version 1.4.0 - 30/09/2019
30/09/2019
- Ajout lien esupsgcclient-installer.exe dans barre navigation → installateur disponible depuis esup-sgc-client-2.1 !
25/09/2019
- API Crous : prise en compte du cas où crousIdentifier renseigné mais en 404 côté API CROUS
- correspond au cas où crousIdentifier a été renseigné à eppn (lors d'une migration) alors qu'aucun compte crous n'existe avec cet identifiant eppn
→ résoud la grande majorité des erreurs CROUS "Ayant droit inconnu" et "Unknown RightHolder"
- correspond au cas où crousIdentifier a été renseigné à eppn (lors d'une migration) alors qu'aucun compte crous n'existe avec cet identifiant eppn
24/09/2019
- Erreurs CROUS : affichage recherche sur ine (en plus de eppn et email)
- Erreurs CROUS - export CSV : ajout ine, operation crous, operation sgc, url crous
- Erreurs CROUS : log de crousOperation, esupSgcOperation, url crous
- Appels REST : user-agent ESUP-SGC
- Ajout colonne userType dans le listing des messages (admin)
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
Suite à cette mise à jour, pensez à renseigner la nouvelle configuration disponible "ESUP_SGC_ETABLISSEMENT_NAME" pour présenter le nom de votre établissement dans les appels REST.
13/09/2019
- API CROUS : amélioration gestion des erreurs
Ajout verso6 et verso7 affichage verso depuis esup-nfc-tag
05/09/2019
- Crous/Izly : affichage erreur crous pour l'utilisateur et possibilité de désactivation crous en cas d'erreur
- Debug auth/su qd synchronisation impossible
- Fixe bug table stats
04/09/2019
API CROUS : erreur 'Client inconnu' non bloquant
Export CSV logs CROUS
Bouton de purge des logs crous
28/08/2019
- AI Crous : erreur -117 sur un post d'ayant droit considérée comme non bloquant - cf la page wiki 'Erreurs CROUS'
- log.error un peu moins verbeux sur erreurs notFound / spring-security firewall
- SgcNotFoundException -> resourceNotFound
Version 1.3.1 - 26/07/2019
24/07/2019
- Photo : PHOTO_MAX_SIZE trop restrictif - on tente un comportement plus permissif
- Api Crous: client anonymisé n'est pas une erreur bloquante
- Màj version mineure jackson-databind
17/07/2019
- Màj version mineure de spring-security
- Debug récupération jpegphoto quand utilisateur non encore en base et demande faite par un manager
- Filtrage par regexp sur eppn pour les validateService (et accessControlService)
- MultiGroupService : permet la récupération de groupes via plusieurs 'groupservice' (plusieurs ldap, règles spel)
28/06/2019
- Api CROUS : comparaison des champs insensible à la casse
- Api CROUS : tolérance 5 minutes sur comparaison date de fin
- Admin > Tools : possibilité de forcer la mise à jour de tous les comptes CROUS
19/06/2019
- Ajout tests unitaires esup-nfc→sgc : getLocations, getVersoText ...
- Amélioration patch identifier ine/eppn ...
13/06/2019
- Debug utilisation de crous_identifier en premier (et non eppn ou ine) si non vide
Implémentation de la validation/invalidation d'une carte dans l'outil papercut - https://www.papercut.com - cf PapercutValidateService
Fixe ROLE_CONSULT_ / ROLE_MANAGER_ (les ROLE_MANAGER_xxx n'avaient pas la possibilité d'utiliser la nouvelle version de l'encodeur notamment).
22/05/2019
- Debug demande de carte de la part d'un Manager
17/05/2019
- Fixe tools < modification eppn / crousIdentifier
Version 1.3.0 - 16/05/2019
16/05/2019
- URL SU accessible aux personnes ayant le ROLE_SWITCH_USER (en plus des personnes ayant le ROLE_ADMIN).
10/05/2019
- API CROUS : fixe cas où le compte pré-existe dans crous/izly
09/05/2019
- Implémentation d'ESUP-SGC comme ESC Remote Service
- Amélioration implémentation API ESCR
- API Crous : usage de l'INE (supannCodeINE) comme identifiant cours/izly (si disponible)
- jpegPhoto : champ utilisateur 'UserInfo' pour récupérer la photo par défaut de l'utilisateur depuis le SI de l'établissement
- Debug droit synchronisation
- Debug date de fin cartes
- Mises à jour mineures des librairies spring / spring-security
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
06/03/2019
Debug import carte externe par un gestionnaire
28/02/2019
Debug stats
Version 1.2.0 - 28/02/2019
28/02/2019
Statistiques :
nombre de cartes par état
- usage du plugin https://chartjs-plugin-datalabels.netlify.com/
27/02/2019
Fixe pb de sécurité : sécurisation par défaut de tout /wsrest via filtrage IP
14/02/2019
Demande de carte par gestionnaires possible
- Accès à la recherche ldap pour les gestionnaires
- Purge des cartes / utilisateurs : indication du nombre de cartes / utilisateurs avant la purge
- Ajout d'API REST : replayValidationOrInvalidation et csvSearch
01/02/2019
Debug Paybox (pb depuis dernier commit du 28/01) - bis
31/01/2019
Debug Paybox (pb depuis dernier commit du 28/01)
Ajout d'une interface pour purger les cartes et utilisateurs
Optimisation et debug du calcul des rôles depuis les groupes ldap
28/01/2019
Rôle ROLE_SWITCH_USER
Envoi d'un mail à une adresse à chaque paiement paybox (si configuré)
Paiement paybox : configuration du formattage du numéro de commande possible
Version 1.1.1 - 23/01/2019
23/01/2019
- Fixe DTD tiles et fixe version 1.1.x dans import.sql
10/01/2019
- Changement d'état des cartes même si flag 'synchronize' à false pour l'utilisateur
- Fixe : on avait laissé une marge de 30H00 en dur dans le code pour le changement d'état des cartes par rapport à la date schacExpiryDate récupérée depuis le SI -> marge supprimée maintenant
- Fixe : pas de synchros si utilisateur caduque et cartes caduques ou annulées ou détruites
- Fixe trim recherche texte libre
- Fixe logs affichage qrcode
- Màj librairies jackson-databind et logback
17/12/2018
Debug récupération des adresses pour l'onglet All
LdapGroupBaseService pour (éventuelle) optimisation de la recherche des utilisateurs d'un groupe
7/12/2018
Debug pagination / filtres sur page par défaut (bug apparu suite aux modifications du 29/11/2018)
5/12/2018
Debug màj secondary_id dans ldap lorsqu'on rejoue la validation/invalidation totale ldap sur toutes les cartes
Prévisualisation carte : usage de rectoxPrinted si imprimée
29/11/2018
Nouveaux champs userInfo : externalAddress, freeField1, freeField2, freeField3 - cf Configurations ESUP-SGC et ESUP-NFC-TAG-SERVER#SGCetESUP-NFC-TAG-SERVER-UserInfo:
Améliorations sécurité : vérification des droits des ROLE_MANAGER_xx lors de l'accès aux fiches
Améliorations autorisations (autorisations et restrictions) sur les onglets, cases à cocher.
Un manager peut livrer la carte via l'IHM.
Màj esupsgcclient : debug pour java sous linux avec la version JDK 1.8 191, 192 et ... (l'appli java plantait lorsque un son tente d'être émis)
23/11/2018
API ESUP-SGC : getCrousRightHolder : curl 'https://esup-sgc.univ-ville.fr/wsrest/api/getCrousRightHolder?eppnOrEmail=toto@univ-ville.fr'
Refactoring champs de recherche libre - Attention : dans applicationContext-services.xml 'fieldsList' de formService change, c'est maintenant une map et on ajoute user_account. ou card. pour indiquer la table user_account ou card sur laquelle le champ est présent - cf le diff de la configuration par défaut
Forcer la validation cartes crous/escr lors de l'activation crous/escr
Tools > ESCR : envoi des cartes éventuellement manquantes
Fixes bordereau (limitation à 500 cartes)
Encart danger, cartes en cours d'impression
Envoi de rneEtablissement comme rneOrgCode sur API CROUS
Champ academicLevel pour API ESCR - cf Configurations ESUP-SGC et ESUP-NFC-TAG-SERVER#SGCetESUP-NFC-TAG-SERVER-UserInfo:
16/11/2018
Fixe bug (introduit en 1.1.0 par la màj de spring-security) retouche d'images/photos par lot
13/11/2018
API : récupération des ids de photos, modification formattage des dates json
Version 1.1.0 - 12/11/2018
12/11/2018 - esup-sgc-1.1.0
Améliorations interactions avec API CROUS ; majorité des erreurs passées en non bloquantes ; stockage libellé dernière erreur crous dans la fiche utilisateur/carte.
Mise à jour des librairies, notamment spring (3.2->4.3) et spring-security (3.2->4.2), Hibernate, ...
Formulaire pour modifier l'identifiant utilisateur eppn en base et côté CROUS.
Possibilité de configurer un message/mail à destination d'une adresse mail (plutôt qu'à destination de l'adresse mail de l'utilisateur final)
ESIST-etd.xml : règles crous par défaut pour tous les étudiants
Debugage calcul des groupes (avec rôles multiples séparés par des ;)
Petit message d'attente lors de l'activation/désactivation de la carte.
Améliorations statistiques
Version 1.0.0 - 11/10/2018
11/10/2018 - esup-sgc-1.0.0
Affichage du CSN dans la vue utilisateur.
UserInfoServiceTest : usage possible de la configuration test.userinfo.eppn2test via fichier src/test/resources/META-INF/spring/esup-sgc-test.properties
Debug export statistiques en CSV
Debug mise à jour erreur crous
Fixe statistiques selon les user_types
- Debug : bouton 'Accepter' la demande sur une fiche n'apparaissait plus
01/10/2018
Màj jar esupsgcclient - certificat signature -> Nov 2020
Logs sur LdapValidateService
PhotoResizeService (non utilisé)
27/09/2018
Retouchage des photos par lot
Demande annulée aussi qd demande rejetée (et fin de droits dépassée) -> ie pas uniquement pour nouvelles demandes
CsvExportUniLaSalleService
Stat demande en cours
Debug collapse - bouton 'magique'
Debug schacExpiryDate à null posait pb à la synchro
24/09/2018
- Nouveau champ de recherche 'demande en cours' - nécessite dbupgrade
Champ 'synchronize' dans userInfoServices pour forcer la non-synchronisation : Doc sur le champ synchronize dans applicationContext-services.xml
Debug ShibUserInfoService : pas de suppression d'element si null
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
17/09/2018
- Correction terminologique : "Restauration Crous" -> "Services Crous"
14/09/2018
- Fixe bug + de filtres multivaleurs - export CSV
- LdapValidateService : ajout variables %secondary_id% et %eppn%
Affichage ESCR uniquement si carte étudiante eutopéenne
CsvExportAcInsaService
- Fixe bug multiform bouton
04/09/2018
- validation auto lors des sélections de critères de recherche
- stats
- livraison possible sur carte encodée (si carte encodée, ça l'active)
- modif ws rest photo etats
- accès aux clients esup-nfc-tag ROLE_LIVREUR ROLE_UPDATER ROLE_VERSO
- fixe autocomplétion eppn (distinct eppn)
27/08/2018
Debug lien photo bordereau
Fixe export contrôle accès insa (nom 15 car. - prénom 13 car.)
Ajout info statut carte dans application verso nfc
23/08/2018
écriture contrôle accès
- jcifs -> jcifs-ng pour support SMB2
- ajout de logs
possibilité d'afficher la photo dans l'export 'bordereau' d'une recherche : configuration boolean PHOTO_BORDEREAU à ajouter :
INSERT INTO appli_config (id, key, value, description, type) VALUES (nextval('hibernate_sequence'), 'PHOTO_BORDEREAU', 'true', 'Affiche ou non la photo dans le bordereau', 'BOOLEAN');fixe stats
- ESCR / CROUS :
affichage données ESCR via API
logs debug
fixe Izly account closed -> 404 when adding a card
fixe conflit ESCR / Card not Found ESCR
22/08/2018
modification portée de blockUserMsg ; cf tableau des userInfo
21/08/2018
ajout de blockUserMsg ; cf tableau des userInfo
20/07/2018
Typo
Affichage exception à l'utilisateur pour les exceptions non gérées
19/07/2018
Url "nettoyée" onglets par userType
- Amélioration selected des champs libres (formulaire de recherche)
- Fixe menu page d'erreur
- Fixe API : possibilité d'utiliser europeanTransient pour demander l'option ESCR : FAQ - Comment faire une demande de carte via l'API?
- Fixe synchronisation avec userType null
18/07/2018
- Fixe navbar boostrap (vue responsive - mobile)
- Pas de renouvellement si carte en cours d'édition
- API /wsrest/api/get pour récupérer les données et cartes d'un ou plusieurs utilisateurs : FAQ : Comment récupérer par script les données et cartes d'un ou plusieurs utilisateurs ?
- user_type peut être null
- Ajout du ROLE_VERSO : FAQ#ROLE_VERSO
- RestValidateService : Configurations ESUP-SGC et ESUP-NFC-TAG-SERVER#SGCetESUP-NFC-TAG-SERVER-RestValidateService
17/07/2018
Photo : pas de gain de qualité avec zoom à 4 -> zoom à 2 et non 4 (photoExportZoom dans esup-sgc-vanilla.js)
Debug renouvellement de cartes : le même big_file était utilisé
Url "nettoyée" lors des recherches/listings des cartes
Usage de access-control4ExternalCard et csn4ExternalCard : supannRefId4ExternalCard déprécié
Messages mails selon le userType.
Préservation de l'ordre lors d'un changement d'états de plusieurs cartes
Débug encodage url recherche par adresses, champs libres, ...
Statistiques selon l'année universitaire et ajout de statistiques cartes européennes étudiantes
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
09/07/2018
Debug SgcRoleHierarchy : ROLE_ADMIN suffisant pour avoir ROLE_SUPER_MANAGER
Fixe / debug usage api carte européenne
06/07/2018
Fixe bug de l'export des résultats sous forme de csv/bordereau
Prise en compte du choix du ldaptemplate dans la recherche ajax ldap
04/07/2018
Amélioration et descriptif dans l'interface des messages/mails - onglet admin
CsvExportPcPassService pour contrôle d'Accès Université du Havre
Amélioration api photos
03/07/2018
debug : la possibilité d'activer la carte européenne à tout moment n'était pas possible
02/07/2018
affichage csn dans admin/crouscards
admin/crouscards redirection paginée après envoi csv cartes crous
CsvExportAcInsaService pour contrôle accès Insa Rouen
fixe recherche sur adresse
29/06/2018
mise à jour du client d'encodage
fixe lastCardTemplate : devient une référence
possibilité de mettre requestFree à false sans passer par groupe mais via un userinfo - exemple avec le requestNotFreeUserInfoService dans Configuration spécifique COMUE Normandie Université#src/main/resources/META-INF/spring/applicationContext-services.xml
card-info restreint pour carte extérieure (== carte 'importée')
fixe userType : de 1 à 3 caractères ok -> dans les ocnfigurations via l'ihm, au lieu de IEP on peut mettre I;E;P et aussi ainsi I;Ext;P par exemple (sépérateur ;)
possibilité de rechercher dans plusieurs ldap pour le super-manager
des debugs de l'interface web
Suite à la mise à jour du code sur cette version (via un git pull sur le master), il faut ici lancer la commande :
mvn compile exec:java -Dexec.args="dbupgrade"
15/06/2018
- ajout d'un trigger en base - pour mise à jour, rejouer import.sql simplement - cf documentation - mise à jour en suivant le master
- minification css
- màj client encodage
- ajout de tests junit - cf Installation ESUP-SGC#SGC-Tests
01/06/2018
- ajout de 4 configurations en base cf diff import.sql sur github