# Documentation UnionFlow Mobile Apps Documentation complète de l'application mobile Flutter. --- ## 📚 Guides de Test ### [TESTS_INTEGRATION_FINANCE_WORKFLOW.md](./TESTS_INTEGRATION_FINANCE_WORKFLOW.md) **Description:** Guide unique pour tester l'intégration mobile-backend Finance Workflow **Contenu:** - Utilisateurs Keycloak réels à utiliser (pas besoin de créer de nouveaux comptes) - Scénario de test complet (15 minutes) - Workflow approbations (membre → admin) - Gestion budgets - Checklist de validation - Troubleshooting **Utilisation:** ```bash # 1. Vérifier prérequis cd ../scripts .\start-integration-tests.ps1 # 2. Lancer app mobile cd .. flutter run --dart-define=ENV=dev # 3. Suivre le guide TESTS_INTEGRATION_FINANCE_WORKFLOW.md ``` --- ## 🏗️ Architecture & Design ### [CONTRIBUTIONS_CLEAN_ARCHITECTURE.md](./CONTRIBUTIONS_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Contributions **Contenu:** - Structure domain complète (interface + 8 use cases) - Refactoring du BLoC pour utiliser les use cases - Architecture conforme aux principes SOLID - Guide de résolution des conflits de noms **Statut:** ✅ Complété - 100% conforme Clean Architecture ### [EVENTS_CLEAN_ARCHITECTURE.md](./EVENTS_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Events **Contenu:** - Structure domain complète (interface + 10 use cases) - Refactoring du BLoC pour utiliser les use cases - Documentation des endpoints backend manquants (feedback, mes-inscriptions) - Gestion des conflits de noms avec alias d'import **Statut:** ✅ Complété - 100% conforme Clean Architecture (2 endpoints backend à ajouter) ### [MEMBERS_CLEAN_ARCHITECTURE.md](./MEMBERS_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Members **Contenu:** - Structure domain complète (interface + 8 use cases) - Refactoring du BLoC pour utiliser les use cases - Gestion de recherche avancée et export membres - Résolution de conflits de noms avec alias d'import **Statut:** ✅ Complété - 100% conforme Clean Architecture (Phase P1 81% complétée) ### [PROFILE_CLEAN_ARCHITECTURE.md](./PROFILE_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Profile **Contenu:** - Structure domain complète (interface + 6 use cases) - Implémentations concrètes (proxy Keycloak, soft delete, fallback local) - Changement mot de passe, préférences, suppression compte - Aucun TODO - Toutes fonctionnalités implémentées **Statut:** ✅ Complété - 100% conforme Clean Architecture (**Phase P1 100% COMPLÉTÉE**) ### [ORGANIZATIONS_CLEAN_ARCHITECTURE.md](./ORGANIZATIONS_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Organizations **Contenu:** - Structure domain complète (interface + 7 use cases) - Refactoring du BLoC et Service (helpers uniquement) - 2 nouveaux endpoints backend (membres, configuration) - Résolution de conflits de noms avec alias d'import **Statut:** ✅ Complété - 100% conforme Clean Architecture (**Phase P2: 1/3 complétée**) ### [REPORTS_CLEAN_ARCHITECTURE.md](./REPORTS_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Reports **Contenu:** - Structure domain complète (interface + 6 use cases) - Refactoring du BLoC pour utiliser les use cases - 4 nouveaux endpoints backend (available, export PDF/Excel, scheduled) - Méthodes concrètes pour analytics et reporting **Statut:** ✅ Complété - 100% conforme Clean Architecture (**Phase P2: 2/3 complétée**) ### [SETTINGS_CLEAN_ARCHITECTURE.md](./SETTINGS_CLEAN_ARCHITECTURE.md) **Description:** Refactoring Clean Architecture de la feature Settings **Contenu:** - Structure domain complète (interface + 5 use cases) - Refactoring du BLoC pour utiliser les use cases - Implémentation resetConfig avec 3 niveaux de fallback - Gestion cache et configuration système **Statut:** ✅ Complété - 100% conforme Clean Architecture (**🎉 Phase P2 100% COMPLÉTÉE**) ### [USE_CASES_MANQUANTS.md](./USE_CASES_MANQUANTS.md) **Description:** Audit et plan d'implémentation des use cases manquants **Contenu:** - État des 10 features (10/10 conformes Clean Architecture - 100%) - Spécification détaillée de 50 use cases à implémenter - Plan d'implémentation en 2 phases (P1/P2) - **🎉 Progression: 100% (50/50 use cases implémentés)** - **🎊 Phase P1 100% COMPLÉTÉE (32/32 use cases P1)** - **🎊 Phase P2 100% COMPLÉTÉE (18/18 use cases P2)** - **🏆 OBJECTIF FINAL ATTEINT - 64 use cases total** ### [AUDIT_INJECTION_DEPENDANCES.md](./AUDIT_INJECTION_DEPENDANCES.md) **Description:** Audit complet de l'injection de dépendances (GetIt + Injectable) **Contenu:** - 51 services enregistrés (27 @injectable + 24 @lazySingleton) - Pattern DRY centralisé (un seul fichier injection.dart) - Guide d'ajout de nouveaux services - Statut: ✅ Conforme ### [UNIONFLOW_DESIGN_V2.md](./UNIONFLOW_DESIGN_V2.md) *(si existe)* **Description:** Architecture du design system et composants UI **Contenu:** - Design tokens - Composants réutilisables - Thème et styles - Patterns UI --- ## 📖 Documentation Complémentaire ### Documentation Backend La documentation backend se trouve dans `unionflow/` (racine): - **FINANCE_WORKFLOW_BACKEND_COMPLETE.md** - Architecture backend Finance Workflow - **FINANCE_WORKFLOW_TEST_CHECKLIST.md** - Checklist tests P0 backend - **FINANCE_WORKFLOW_TEST_REPORT.md** - Rapport tests endpoints REST ### Scripts Utilitaires Les scripts PowerShell se trouvent dans `../scripts/`: - `start-integration-tests.ps1` - Vérifier prérequis - `check-keycloak-state.ps1` - État Keycloak - `list-user-roles.ps1` - Rôles utilisateurs Voir [scripts/README.md](../scripts/README.md) pour plus de détails. --- ## 🎯 Démarrage Rapide ### Tests d'Intégration Mobile-Backend ```bash # 1. Backend cd ../../unionflow-server-impl-quarkus mvn compile quarkus:dev -D"quarkus.http.port=8085" # 2. Vérifier services (autre terminal) cd ../unionflow-mobile-apps/scripts .\start-integration-tests.ps1 # 3. App mobile (autre terminal) cd .. flutter run --dart-define=ENV=dev # 4. Suivre le guide # docs/TESTS_INTEGRATION_FINANCE_WORKFLOW.md ``` ### Développement Normal ```bash # Mode dev (backend local) flutter run --dart-define=ENV=dev # Mode staging flutter run --dart-define=ENV=staging # Mode production flutter run --dart-define=ENV=prod ``` --- ## 🔗 Liens Utiles - **Keycloak Admin:** http://localhost:8180/admin/master/console (admin/admin) - **Backend API:** http://localhost:8085 - **Backend Health:** http://localhost:8085/q/health - **Backend OpenAPI:** http://localhost:8085/q/openapi --- ## 📝 Convention de Nommage ### Documentation - `{FEATURE}_{DESCRIPTION}.md` - Ex: `TESTS_INTEGRATION_FINANCE_WORKFLOW.md` - Tout en MAJUSCULES avec underscores - Placée dans `docs/` ### Scripts - `{action}-{description}.ps1` - Ex: `start-integration-tests.ps1` - Tout en minuscules avec tirets - Placés dans `scripts/` --- **Organisation maintenue selon le principe DRY (Don't Repeat Yourself)** **Dernière mise à jour:** 2026-03-14