Vue d'ensemble du projet
Qu'est-ce que LogiDAV ?
LogiDAV est le système logistique et ERP qui gère le cycle de vie complet des commandes pour les marques du groupe (Menzzo, etc.). Il agit comme un middleware entre :
- Magento 2 (e-commerce front-office)
- Meduse (système interne)
- Les marketplaces (Amazon, Cdiscount, ManoMano, etc.)
- Les transporteurs (DPD, BRT, etc.)
Responsabilités principales
| Domaine | Description |
|---|---|
| Import des ventes | Récupération des commandes Magento et marketplace, normalisation, persistance |
| Gestion du stock | Suivi des quantités, mutations à l'import et à l'expédition |
| Expéditions | Génération des étiquettes, suivi des colis, notifications transporteurs |
| SAV / Remboursements | Traitement des retours, remboursements partiels et totaux |
| Synchronisation | Envoi de données produit, prix, stock vers les marketplaces |
| File d'attente | Orchestration asynchrone des tâches via un système SQL-backed + RabbitMQ |
Stack technique
- Framework : Symfony 3.3 (PHP 7.3)
- ORM : Doctrine
- Files d'attente : SQL-backed + RabbitMQ
- Cronjobs : 164 entrées actives, 115 commandes Symfony uniques
- Tests : PHPUnit
Modèle d'exécution
LogiDAV fonctionne principalement via des cronjobs qui tournent en production sur un serveur dédié. Chaque cronjob exécute une commande Symfony qui :
- Lit les données depuis Magento ou une autre source externe
- Normalise et transforme les données
- Persiste les changements via Doctrine
- Déclenche les effets de bord appropriés (stock, notifications, files d'attente)
Les files d'attente complètent les cronjobs pour les traitements asynchrones :
# Lancer le processeur de files d'attente
php bin/console meduse:queue:processor --action=runQueues
Chiffres clés
- 164 entrées cron actives
- 115 commandes Symfony uniques documentées
- 46 commandes à risque critique (ventes, paiements, stock)
- 40 commandes à haut risque (produits, synchronisation)