SOGOMS v1.0.1 - Microservices logs, smtp et roadmap

Nouveaux services:
- sogoms-logs : logging centralisé avec rotation
- sogoms-smtp : envoi emails avec templates YAML

Nouvelles fonctionnalités:
- Queries YAML externalisées (config/queries/{app}/)
- CRUD générique paramétrable
- Filtres par rôle (default, admin)
- Templates email (config/emails/{app}/)

Documentation:
- DOCTECH.md : documentation technique complète
- README.md : vision et roadmap
- TODO.md : phases 11-15 planifiées

Roadmap:
- Phase 11: sogoms-crypt (chiffrement)
- Phase 12: sogoms-imap/mailproc (emails)
- Phase 13: sogoms-cron (tâches planifiées)
- Phase 14: sogoms-push (MQTT temps réel)
- Phase 15: sogoms-schema (API auto-générée)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-16 14:58:46 +01:00
parent 7e27f87d6f
commit a4694a10d1
36 changed files with 2786 additions and 2387 deletions

View File

@@ -0,0 +1,67 @@
# Template: Récapitulatif des tâches du jour
subject: "Vos tâches du jour - {{.Date}}"
body: |
Bonjour {{.Name}},
Voici vos tâches prévues pour aujourd'hui ({{.Date}}) :
{{range .Tasks}}
- [{{.Status}}] {{.Name}}{{if .Project}} ({{.Project}}){{end}}{{if .DueTime}} - {{.DueTime}}{{end}}
{{end}}
{{if .TaskCount}}Vous avez {{.TaskCount}} tâche(s) à accomplir.{{end}}
Bonne journée !
Cordialement,
L'équipe Prokov
body_html: |
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
<h1 style="color: #2563eb;">Vos tâches du jour</h1>
<p>Bonjour <strong>{{.Name}}</strong>,</p>
<p>Voici vos tâches prévues pour aujourd'hui ({{.Date}}) :</p>
<table style="width: 100%; border-collapse: collapse; margin: 20px 0;">
<thead>
<tr style="background-color: #f8fafc;">
<th style="padding: 12px; text-align: left; border-bottom: 2px solid #e2e8f0;">Tâche</th>
<th style="padding: 12px; text-align: left; border-bottom: 2px solid #e2e8f0;">Projet</th>
<th style="padding: 12px; text-align: left; border-bottom: 2px solid #e2e8f0;">Statut</th>
<th style="padding: 12px; text-align: left; border-bottom: 2px solid #e2e8f0;">Heure</th>
</tr>
</thead>
<tbody>
{{range .Tasks}}
<tr>
<td style="padding: 12px; border-bottom: 1px solid #e2e8f0;">{{.Name}}</td>
<td style="padding: 12px; border-bottom: 1px solid #e2e8f0;">{{.Project}}</td>
<td style="padding: 12px; border-bottom: 1px solid #e2e8f0;">
<span style="background-color: {{.StatusColor}}; color: white; padding: 4px 8px; border-radius: 4px; font-size: 12px;">{{.Status}}</span>
</td>
<td style="padding: 12px; border-bottom: 1px solid #e2e8f0;">{{.DueTime}}</td>
</tr>
{{end}}
</tbody>
</table>
{{if .TaskCount}}
<p style="background-color: #eff6ff; padding: 15px; border-radius: 6px; text-align: center;">
<strong>{{.TaskCount}}</strong> tâche(s) à accomplir aujourd'hui
</p>
{{end}}
<p>Bonne journée !</p>
<hr style="border: none; border-top: 1px solid #eee; margin: 20px 0;">
<p style="color: #666; font-size: 14px;">Cordialement,<br>L'équipe Prokov</p>
</div>
</body>
</html>