# Suivi du Projet ERP SUARL Rayhan
**PFE — Ali Guennari**
**Coach & Développeur : Claude (Nabil Derouiche)**
**Dernière mise à jour : 19 Avril 2026**

---

## État Global du Projet

| Phase | Description | Statut |
|-------|-------------|--------|
| 1 | Analyse & Stratégie | ✅ Terminé |
| 2 | Modélisation UML | ✅ Terminé (par Ali) |
| 3 | Backend Spring Boot API | ✅ Déployé & Fonctionnel |
| 4 | Frontend Flutter | ⏳ À faire |
| 5 | Tests & Validation | 🔄 En cours |
| 6 | Déploiement Production | ✅ Docker — https://rayhan-erp.bolbol.tn |
| 7 | Rapport de PFE | 🔄 En cours |

---

## Dépôt Git

- **URL** : https://gitea.bolbol.tn/bolbol/rayhan-erp
- **Branche principale** : `main`
- **Organisation** : Spring Boot (backend/) + Flutter (frontend/)

---

## Phase 3 — Backend Spring Boot API

### Architecture Technique
- **Framework** : Spring Boot 3.x (Java 17)
- **Sécurité** : Spring Security + JWT (JJWT 0.12.x)
- **Base de données** : MySQL 8 (JPA/Hibernate)
- **Build** : Maven

### Modules API — Détail

| Module | Endpoints | Statut |
|--------|-----------|--------|
| Authentification & Sécurité | `POST /api/auth/signin`, `POST /api/auth/signup` | ✅ Codé |
| Gestion des Utilisateurs | `GET/PUT /api/users` | ✅ Codé |
| Articles (Référentiel) | `CRUD /api/articles` | ✅ Codé |
| Clients & Fournisseurs | `CRUD /api/clients`, `/api/fournisseurs` | ✅ Codé |
| Gestion des Stocks | `GET /api/stock`, `POST /api/inventory/adjust` | ✅ Codé |
| Cycle d'Achat | `POST /api/purchase-orders`, `/api/goods-receipts` | ✅ Codé |
| Cycle de Vente | `POST /api/sales-orders`, `/api/delivery-notes` | ✅ Codé |
| Cycle de Production (BOM + OF) | `GET/POST /api/bom`, `/api/production-orders` | ✅ Codé |
| Tableau de Bord (KPIs) | `GET /api/dashboard` | ✅ Codé |
| Facturation | `POST /api/invoices` | ⏳ À faire |
| Paie & RH | `POST /api/payroll` | ⏳ À faire |

### Rôles Utilisateurs

| Rôle | Accès |
|------|-------|
| `ROLE_PDG` | Accès complet + tableau de bord |
| `ROLE_RESPONSABLE_VENTE` | Ventes, clients, facturation |
| `ROLE_RESPONSABLE_ACHAT` | Achats, fournisseurs |
| `ROLE_RESPONSABLE_PRODUCTION` | Production, BOM, ordres de fabrication |
| `ROLE_MAGASINIER` | Stock, mouvements |
| `ROLE_RH` | Paie, congés, employés |

---

## Phase 4 — Frontend Flutter (À venir)

- Architecture : Provider / BLoC
- Écrans prioritaires : Login → Dashboard → Articles → Ventes → Achats → Production

---

## Livrables Produits

| Fichier | Description | Statut |
|---------|-------------|--------|
| `SUIVI-PROJET.md` (ce fichier) | Suivi global du projet | ✅ |
| `backend/` | Code source API Spring Boot | 🔄 |
| `docs/UML-DiagrammeClasses.md` | Explication du diagramme de classes | ⏳ |
| `docs/UML-CasUtilisation.md` | Explication des cas d'utilisation | ⏳ |
| `docs/Architecture-API.md` | Documentation complète des endpoints | ✅ |
| `docs/Guide-Installation-Windows.md` | Guide installation Docker sur Windows | ✅ |
| `docs/Guide-Deploiement.md` | Guide Docker + déploiement serveur Linux | ⏳ |
| `docs/Guide-Tests-Postman.md` | Collection Postman + scénarios de test | ✅ |

---

## Infrastructure Serveur

- **Gitea** : https://gitea.bolbol.tn
- **API REST (production)** : https://rayhan-erp.bolbol.tn ✅ En ligne
- **API REST (local dev)** : http://localhost:8090
- **Conteneurs Docker** : `rayhan-mysql` + `rayhan-backend`

---

## Notes Importantes

- LDPE (pas BDPE) = Polyéthylène Basse Densité
- TVA Tunisie : 19% standard (vérifier avec Rayhan)
- CNSS Tunisie : patronal ~16.57%, salarial ~9.18%
- Timbre fiscal sur factures : 0.600 DT (à confirmer)
- 4 produits finis : Sac Bertel, Sac Poubelle, Sac Alimentaire, Film Rétractable
- 3 machines : Extrudeuse, Découpe/Soudure, Densificateur (recyclage chutes)
