/// Use Case: Créer une nouvelle organisation library create_organization; import 'package:injectable/injectable.dart'; import '../../data/models/organization_model.dart'; import '../repositories/organization_repository.dart'; /// Crée une nouvelle organisation (SuperAdmin uniquement) @injectable class CreateOrganization { final IOrganizationRepository _repository; CreateOrganization(this._repository); /// Exécute le use case /// [organization] : Modèle de l'organisation à créer /// Retourne l'organisation créée avec son ID /// Lève une exception en cas d'erreur (données invalides, conflit) Future call(OrganizationModel organization) async { return _repository.createOrganization(organization); } }