Ce dépôt contient le module externe Dolibarr dynamicsprices, installé en production sous htdocs/custom/dynamicsprices.
- Audit technique :
docs/technical-audit-dynamic-cost.md - Architecture du coût DynamicPrices :
docs/ARCHITECTURE_DYNAMIC_COST.md - Règles de développement Dolibarr :
docs/DEVELOPMENT_RULES_DOLIBARR.md - Plan de test :
docs/TEST_PLAN_DYNAMIC_COST.md
La fonctionnalité en cours doit permettre à chaque entité d'une instance Dolibarr Multicompany d'exploiter un prix de revient DynamicPrices propre, distinct du prix de revient natif Dolibarr.
- Ne jamais modifier le core Dolibarr.
- Ne jamais écrire automatiquement dans
llx_product.cost_price. - Stocker le coût DynamicPrices dans les tables du module.
- Garder
llx_product.cost_pricecomme source lisible ou écriture legacy explicite, désactivée par défaut. - Ne pas créer de clé étrangère SQL dure vers les tables standards Dolibarr.
- Ne pas utiliser d'
ENUMSQL. - Toutes les tables métier du module doivent contenir
entity. - Toutes les requêtes métier doivent filtrer par entité.
- Toutes les chaînes affichées doivent passer par les fichiers de langue
fr_FReten_US. - Utiliser l'indentation par tabulations en PHP.
- Contrôler les droits côté serveur.
- Utiliser les helpers Dolibarr :
GETPOST(),GETPOSTINT(),price2num(),isModEnabled(),$user->hasRight(). - Protéger les actions sensibles par token CSRF.
- Terminer chaque tâche par une revue des fichiers modifiés.
Ce dépôt ne fournit pas encore de configuration de test autonome. Si PHPStan est disponible dans l'instance Dolibarr cible :
vendor/bin/phpstan analyse htdocs/custom/dynamicspricesPour un contrôle syntaxique local des fichiers PHP modifiés :
php -l path/to/file.php- Audit et documentation.
- Tables SQL du coût DynamicPrices.
- Service central
DynamicPricesCostService. - Remplacement des écritures automatiques vers
cost_price. - UI fiche produit et historique.
- Recalcul de masse.
- Application aux lignes commerciales.
- API, exports, migration, documentation finale.