generated from gitea_admin/default
dev
This commit is contained in:
66
README.md
66
README.md
@@ -313,3 +313,69 @@ Exemple pour un export tous les jours à 02:00 :
|
||||
```bash
|
||||
0 2 * * * cd /var/www/ton-projet && npm run export:academie-excel >> /var/log/academy-export.log 2>&1
|
||||
```
|
||||
|
||||
## Export Excel des demandes projet lycée
|
||||
|
||||
Le script `scripts/export-lycee-excel.js` génère un fichier `.xlsx` depuis la table MySQL `projet_lycee_demandes`, puis l'envoie dans Microsoft 365 via Microsoft Graph.
|
||||
|
||||
### Migration SQL
|
||||
|
||||
À exécuter une fois sur la base si tu veux utiliser le mode `pending` :
|
||||
|
||||
```sql
|
||||
source server/database/2026-06-16_lycee_excel_export.sql;
|
||||
```
|
||||
|
||||
### Variables d'environnement
|
||||
|
||||
Les variables MySQL et Microsoft Graph communes sont les mêmes que pour l'export Académie :
|
||||
|
||||
```env
|
||||
NUXT_MYSQL_HOST=...
|
||||
NUXT_MYSQL_PORT=3306
|
||||
NUXT_MYSQL_DATABASE=...
|
||||
NUXT_MYSQL_USER=...
|
||||
NUXT_MYSQL_PASSWORD=...
|
||||
MICROSOFT_TENANT_ID=...
|
||||
MICROSOFT_CLIENT_ID=...
|
||||
MICROSOFT_CLIENT_SECRET=...
|
||||
GRAPH_DRIVE_ID=...
|
||||
```
|
||||
|
||||
Variables lycée à ajouter :
|
||||
|
||||
```env
|
||||
LYCEE_GRAPH_EXCEL_UPLOAD_PATH=Projets lycee/Demandes/inscriptions-lycee-{date}.xlsx
|
||||
LYCEE_EXCEL_REPORT_EMAIL=...
|
||||
```
|
||||
|
||||
Optionnel :
|
||||
|
||||
```env
|
||||
LYCEE_GRAPH_EXCEL_ITEM_ID=...
|
||||
LYCEE_EXCEL_EXPORT_MODE=all
|
||||
LYCEE_EXCEL_LOCAL_OUTPUT=tmp/inscriptions-lycee-{date}.xlsx
|
||||
LYCEE_EXCEL_SKIP_UPLOAD=1
|
||||
```
|
||||
|
||||
Modes :
|
||||
|
||||
- `LYCEE_EXCEL_EXPORT_MODE=all` : exporte toutes les demandes dans un fichier complet, puis met à jour `exported_to_excel_at` et `export_error`.
|
||||
- `LYCEE_EXCEL_EXPORT_MODE=pending` : exporte seulement les lignes non exportées, puis met aussi `exported_to_excel` à `1`. Nécessite la migration SQL ci-dessus.
|
||||
- En cas d'échec après lecture des demandes, `export_error` est renseigné sur les lignes concernées.
|
||||
- `{date}` dans `LYCEE_GRAPH_EXCEL_UPLOAD_PATH` ou `LYCEE_EXCEL_LOCAL_OUTPUT` est remplacé par la date du jour au format `YYYY-MM-DD`.
|
||||
- `LYCEE_EXCEL_REPORT_EMAIL` reçoit un email de compte rendu après chaque export, ou un email d'erreur si le traitement échoue.
|
||||
|
||||
### Test local sans upload
|
||||
|
||||
```bash
|
||||
LYCEE_EXCEL_SKIP_UPLOAD=1 LYCEE_EXCEL_LOCAL_OUTPUT=tmp/inscriptions-lycee-{date}.xlsx npm run export:lycee-excel
|
||||
```
|
||||
|
||||
### Cron nocturne
|
||||
|
||||
Exemple pour un export tous les jours à 02:15 :
|
||||
|
||||
```bash
|
||||
15 2 * * * cd /var/www/ton-projet && npm run export:lycee-excel >> /var/log/lycee-export.log 2>&1
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user