Aller au contenu

RAGNAR - ERP/CRM ESN

Application interne DYNORS - Management projets ESN, time tracking, facturation


🎯 Objectif

RAGNAR est l'application centrale de management ESN de DYNORS. Elle gère tous les projets sur-mesure pour les clients ESN (Teranga Céréales, etc.) avec time tracking, suivi budgétaire et facturation.


📋 Informations Générales

Propriété Valeur
Nom RAGNAR
Code Application RAG
Type Application interne
Domaine ESN, Management, Time Tracking
Port 8080
Repository dynors-internal/applications/ragnar
Status Production

🏗️ Architecture

Stack Technique

  • Backend : Java 17, Spring Boot 3.2
  • Frontend : Angular 17
  • Base de données : PostgreSQL 15
  • Cache : Redis 7
  • Modules CORE : commons, security, db, events

Modules Fonctionnels

RAGNAR/
├── module-projets/         # Gestion projets ESN
├── module-time-tracking/   # Feuilles de temps
├── module-facturation/     # Génération factures → FISCAL
├── module-clients/         # CRM clients
├── module-contrats/        # Contrats clients
└── module-reporting/       # Tableaux de bord

✨ Fonctionnalités Principales

1. Gestion Projets ESN

  • ✅ Création projets avec code unique (TERANGA-CEREALES)
  • ✅ Assignation équipe (rôles : LEAD, SENIOR, JUNIOR)
  • ✅ Suivi budgétaire (consommé vs budget)
  • ✅ Jalons et livrables

2. Time Tracking

  • ✅ Feuilles de temps hebdomadaires
  • ✅ Validation hiérarchique (employé → manager → admin)
  • ✅ Agrégation par projet
  • ✅ Calcul heures facturables

3. Facturation

  • ✅ Génération factures depuis time tracking
  • ✅ Délégation à FISCAL (taxes, compliance, PDF)
  • ✅ Suivi paiements
  • ⏳ Relances automatiques

4. CRM Clients

  • ✅ Fiches clients
  • ✅ Historique projets
  • ✅ Contacts
  • ⏳ Opportunités commerciales

🔄 Intégrations

Service Type Usage
FISCAL REST API Génération factures techniques
TAKKU REST API Création projets automatique
dynors-media REST API Stockage contrats, documents
dynors-notify REST API Notifications email/SMS

🚀 Flux Métier : Facturation

1. Time Tracking → Validation manager
   ↓
2. RAGNAR agrège heures par projet
   ↓
3. RAGNAR → FISCAL : crée facture
   ↓
4. FISCAL : calcul taxes, compliance, numérotation
   ↓
5. FISCAL → dynors-pdf : génère PDF
   ↓
6. FISCAL → dynors-media : stocke PDF
   ↓
7. RAGNAR : suivi paiement

📊 Métriques

  • Projets actifs : ~15-20 projets simultanés
  • Utilisateurs : ~50 employés DYNORS
  • Feuilles de temps : ~200/semaine
  • Factures : ~30/mois

🔐 Sécurité & Tenants

Multi-tenancy

  • Mode : Multi-projet (pas multi-tenant strict)
  • Isolation : Par projet (CODE_PROJET)
  • Schéma DB : Schema dédié ragnar

Rôles

  • ADMIN : Admin DYNORS (toute la plateforme)
  • PROJECT_MANAGER : Chef de projet (ses projets)
  • EMPLOYEE : Employé (time tracking, consultation)
  • CLIENT : Client externe (consultation factures)

📚 Documentation

Specs & Architecture

  • Architecture : dynors-internal/applications/ragnar/backend/RAGNAR_ARCHITECTURE.md
  • Module Time Tracking : TIME_TRACKING_SPECIFICATIONS.md
  • Module Facturation : INTEGRATION_FACTURATION_SPECIFICATIONS.md
  • Jira : jira/ragnar/TICKETS.md

APIs

  • REST API : Swagger disponible sur http://localhost:8080/ragnar/swagger-ui.html
  • WebSocket : Notifications temps réel sur /ws/ragnar

🎯 Roadmap

✅ Fait (Production)

  • Gestion projets ESN
  • Time tracking complet
  • Facturation basique
  • CRM clients

⏳ En cours

  • Intégration FISCAL complète
  • Relances automatiques
  • Module reporting avancé

📋 Planifié

  • Opportunités commerciales
  • Prévisionnel charge
  • Intégration HEISENBERG (BI)

🚀 Démarrage Rapide

Prérequis

  • Java 17+
  • PostgreSQL 15+
  • Redis 7+
  • Node.js 18+ (frontend)

Backend

cd dynors-internal/applications/ragnar/backend
./gradlew bootRun

URL : http://localhost:8080/ragnar

Frontend

cd dynors-internal/applications/ragnar/frontend
npm install
npm start

URL : http://localhost:4200


👥 Équipe

  • Product Owner : Direction DYNORS
  • Tech Lead : À définir
  • Développeurs : Équipe DYNORS

📞 Contact

  • Support : support@dynors.com
  • Issues : GitLab dynors-internal/ragnar

Dernière mise à jour : 30 janvier 2026