From 4b4d9637fd3aa2a2729456d77eda7cf5c68550c4 Mon Sep 17 00:00:00 2001 From: andrymodeste Date: Fri, 1 Aug 2025 08:05:56 +0200 Subject: [PATCH] 01082025_02 --- lib/Views/Dashboard.dart | 304 ++++++++++---------------- pubspec.yaml | 4 +- windows/runner/resources/app_icon.ico | Bin 33772 -> 76238 bytes 3 files changed, 115 insertions(+), 193 deletions(-) diff --git a/lib/Views/Dashboard.dart b/lib/Views/Dashboard.dart index e522292..39747c8 100644 --- a/lib/Views/Dashboard.dart +++ b/lib/Views/Dashboard.dart @@ -1939,13 +1939,16 @@ void _showPointVenteDetails(Map pointVenteData) async { ), ); } +Widget _buildCommandeCardForDialog( + Commande commande, + Set expandedCommandes, + StateSetter setDialogState, + ) { + final int commandeId = commande.id ?? -1; // fallback si null + final bool isExpanded = expandedCommandes.contains(commandeId); -// NOUVELLE VERSION de _buildCommandeCardForDialog qui utilise les paramètres du dialog -Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes, StateSetter setDialogState) { - final bool isExpanded = expandedCommandes.contains(commande.id); - return FutureBuilder>( - future: _database.getDetailsCommande(commande.id!), + future: _database.getDetailsCommande(commandeId), builder: (context, snapshot) { double totalRemises = 0; bool aDesRemises = false; @@ -1958,45 +1961,37 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes } return AnimatedContainer( - duration: Duration(milliseconds: 300), + duration: const Duration(milliseconds: 300), curve: Curves.easeInOut, - margin: EdgeInsets.symmetric(vertical: 4), + margin: const EdgeInsets.symmetric(vertical: 4), child: Material( elevation: isExpanded ? 4 : 2, borderRadius: BorderRadius.circular(8), - child: Container( + child: Container( decoration: BoxDecoration( - color: isExpanded - ? Colors.grey.shade100 - : Colors.grey.shade200, + color: isExpanded ? Colors.grey.shade100 : Colors.grey.shade200, borderRadius: BorderRadius.circular(8), - border: aDesRemises + border: aDesRemises ? Border.all(color: Colors.orange.shade300, width: 1) : null, ), - child: InkWell( onTap: () { - print('Card tapped! Current state: $isExpanded'); - // UTILISER setDialogState au lieu de setState setDialogState(() { if (isExpanded) { - expandedCommandes.remove(commande.id); - print('Removed commande ${commande.id}'); + expandedCommandes.remove(commandeId); } else { - expandedCommandes.add(commande.id!); - print('Added commande ${commande.id}'); + expandedCommandes.add(commandeId); } - print('Current expanded: $expandedCommandes'); }); }, borderRadius: BorderRadius.circular(8), child: Padding( - padding: EdgeInsets.all(12), + padding: const EdgeInsets.all(12), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - // En-tête de la commande (toujours visible) + // En-tête Row( children: [ Container( @@ -2006,7 +2001,7 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes color: _getStatutColor(commande.statut).withOpacity(0.1), borderRadius: BorderRadius.circular(20), border: aDesRemises - ? Border.all(color: Colors.orange.shade300, width: 1) + ? Border.all(color: Colors.orange.shade300) : null, ), child: Column( @@ -2024,8 +2019,8 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes : Colors.blue.shade600, ), Text( - '#${commande.id}', - style: TextStyle( + '#$commandeId', + style: const TextStyle( fontSize: 8, fontWeight: FontWeight.bold, ), @@ -2033,31 +2028,32 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes ], ), ), - SizedBox(width: 12), + const SizedBox(width: 12), Expanded( child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( commande.clientNomComplet, - style: TextStyle( + style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold, ), overflow: TextOverflow.ellipsis, ), - SizedBox(height: 2), + const SizedBox(height: 2), Row( children: [ - Icon(Icons.calendar_today, size: 12, color: Colors.grey), - SizedBox(width: 4), + const Icon(Icons.calendar_today, + size: 12, color: Colors.grey), + const SizedBox(width: 4), Text( DateFormat('dd/MM/yyyy').format(commande.dateCommande), - style: TextStyle(fontSize: 11, color: Colors.grey), + style: const TextStyle(fontSize: 11, color: Colors.grey), ), - SizedBox(width: 12), + const SizedBox(width: 12), Container( - padding: EdgeInsets.symmetric(horizontal: 6, vertical: 2), + padding: const EdgeInsets.symmetric(horizontal: 6, vertical: 2), decoration: BoxDecoration( color: _getStatutColor(commande.statut).withOpacity(0.2), borderRadius: BorderRadius.circular(10), @@ -2078,10 +2074,9 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes ], ), ), - // Icône d'expansion AnimatedRotation( turns: isExpanded ? 0.5 : 0, - duration: Duration(milliseconds: 300), + duration: const Duration(milliseconds: 300), child: Icon( Icons.expand_more, color: Colors.grey[600], @@ -2089,14 +2084,13 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes ), ], ), - - SizedBox(height: 8), - - // Montant (toujours visible) + const SizedBox(height: 8), + // Montant Row( children: [ - Icon(Icons.attach_money, size: 14, color: Colors.green.shade600), - SizedBox(width: 4), + Icon(Icons.attach_money, + size: 14, color: Colors.green.shade600), + const SizedBox(width: 4), Text( '${NumberFormat('#,##0', 'fr_FR').format(commande.montantTotal)} MGA', style: TextStyle( @@ -2106,9 +2100,9 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes ), ), if (totalRemises > 0) ...[ - SizedBox(width: 8), + const SizedBox(width: 8), Container( - padding: EdgeInsets.symmetric(horizontal: 4, vertical: 2), + padding: const EdgeInsets.symmetric(horizontal: 4, vertical: 2), decoration: BoxDecoration( color: Colors.orange.shade100, borderRadius: BorderRadius.circular(8), @@ -2116,176 +2110,103 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes child: Row( mainAxisSize: MainAxisSize.min, children: [ - Icon(Icons.discount, size: 10, color: Colors.teal.shade700), - SizedBox(width: 2), + Icon(Icons.discount, + size: 10, color: Colors.teal.shade700), + const SizedBox(width: 2), Text( '-${NumberFormat('#,##0', 'fr_FR').format(totalRemises)}', - style: TextStyle( + style: const TextStyle( fontSize: 9, fontWeight: FontWeight.bold, - color: Colors.teal.shade700, ), ), ], ), ), - ], + ] ], ), - - // Détails étendus avec AnimatedSize + // Contenu étendu AnimatedSize( - duration: Duration(milliseconds: 300), + duration: const Duration(milliseconds: 300), curve: Curves.easeInOut, - child: isExpanded ? Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - SizedBox(height: 12), - Divider(color: Colors.grey[300]), - SizedBox(height: 8), - - // Informations du commandeur - if (commande.commandeurnom != null && commande.commandeurnom!.isNotEmpty) - Container( - padding: EdgeInsets.all(8), - decoration: BoxDecoration( - color: Colors.blue.shade50, - borderRadius: BorderRadius.circular(6), - ), - child: Row( - children: [ - Icon(Icons.person, size: 16, color: Colors.blue[600]), - SizedBox(width: 8), - Text( - 'Commandeur: ', - style: TextStyle( - fontSize: 12, - fontWeight: FontWeight.w500, - color: Colors.grey[700], - ), - ), - Expanded( - child: Text( - '${commande.commandeurnom ?? ''} ${commande.commandeurPrenom ?? ''}', - style: TextStyle( - fontSize: 12, - fontWeight: FontWeight.bold, - color: Colors.blue[700], - ), - ), - ), - ], - ), - ), - - SizedBox(height: 8), - - // Statut détaillé - Container( - padding: EdgeInsets.all(8), - decoration: BoxDecoration( - color: _getStatutColor(commande.statut).withOpacity(0.1), - borderRadius: BorderRadius.circular(6), - ), - child: Row( + child: isExpanded + ? Column( children: [ - Icon( - _getStatutIcon(commande.statut), - size: 16, - color: commande.statut == StatutCommande.annulee - ? Colors.red - : Colors.blue[600], - ), - SizedBox(width: 8), - Text( - 'Statut: ', - style: TextStyle( - fontSize: 12, - fontWeight: FontWeight.w500, - color: Colors.grey[700], - ), - ), - Text( - commande.statutLibelle, - style: TextStyle( - fontSize: 12, - fontWeight: FontWeight.bold, - color: commande.statut == StatutCommande.annulee - ? Colors.red - : Colors.blue[700], - ), - ), - ], - ), - ), - - SizedBox(height: 8), - - // Liste des produits commandés - if (snapshot.hasData && snapshot.data!.isNotEmpty) ...[ - Container( - padding: EdgeInsets.all(8), - decoration: BoxDecoration( - color: Colors.green.shade50, - borderRadius: BorderRadius.circular(6), - ), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Icon(Icons.shopping_cart, size: 16, color: Colors.green[600]), - SizedBox(width: 8), - Text( - 'Produits commandés:', - style: TextStyle( - fontSize: 12, - fontWeight: FontWeight.bold, - color: Colors.green[700], - ), - ), - ], - ), - SizedBox(height: 6), - ...snapshot.data!.map((detail) => Padding( - padding: EdgeInsets.only(left: 24, bottom: 4), + const SizedBox(height: 12), + Divider(color: Colors.grey[300]), + if (commande.commandeurnom?.isNotEmpty ?? false) + Padding( + padding: const EdgeInsets.only(top: 8.0), child: Row( children: [ - Container( - width: 4, - height: 4, - decoration: BoxDecoration( - color: Colors.green[600], - borderRadius: BorderRadius.circular(2), - ), - ), - SizedBox(width: 8), - Expanded( - child: Text( - '${detail.produitNom} (x${detail.quantite})', - style: TextStyle( - fontSize: 11, - color: Colors.green[700], - ), - ), - ), + Icon(Icons.person, + size: 16, color: Colors.blue[600]), + const SizedBox(width: 8), Text( - '${NumberFormat('#,##0', 'fr_FR').format(detail.sousTotal)} MGA', + '${commande.commandeurnom ?? ''} ${commande.commandeurPrenom ?? ''}', style: TextStyle( - fontSize: 11, - fontWeight: FontWeight.w500, - color: Colors.green[700], + fontSize: 12, + fontWeight: FontWeight.bold, + color: Colors.blue[700], ), ), ], ), - )).toList(), - ], - ), - ), - ], - ], - ) : SizedBox.shrink(), + ), + const SizedBox(height: 8), + if (snapshot.hasData && snapshot.data!.isNotEmpty) + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Icon(Icons.shopping_cart, + size: 16, color: Colors.green[600]), + const SizedBox(width: 8), + Text( + 'Produits commandés:', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.bold, + color: Colors.green[700], + ), + ), + ], + ), + const SizedBox(height: 6), + ...snapshot.data!.map((detail) => Padding( + padding: const EdgeInsets.only(left: 24, bottom: 4), + child: Row( + children: [ + const Icon(Icons.circle, + size: 4, color: Colors.green), + const SizedBox(width: 8), + Expanded( + child: Text( + '${detail.produitNom} (x${detail.quantite})', + style: TextStyle( + fontSize: 11, + color: Colors.green[700], + ), + ), + ), + Text( + '${NumberFormat('#,##0', 'fr_FR').format(detail.sousTotal)} MGA', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w500, + color: Colors.green[700], + ), + ), + ], + ), + )) + ], + ), + ], + ) + : const SizedBox.shrink(), ), ], ), @@ -2297,6 +2218,7 @@ Widget _buildCommandeCardForDialog(Commande commande, Set expandedCommandes }, ); } + Color _getStatutColor(StatutCommande statut) { switch (statut) { case StatutCommande.enAttente: diff --git a/pubspec.yaml b/pubspec.yaml index 23ed3e9..46c7c97 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -63,8 +63,8 @@ dependencies: path_provider: ^2.0.15 shared_preferences: ^2.2.2 excel: ^2.0.1 - mobile_scanner: ^5.0.0 # ou la version la plus récente - fl_chart: ^0.65.0 # Version la plus récente au moment de cette répons + mobile_scanner: ^5.0.0 + fl_chart: ^0.65.0 numbers_to_letters: ^1.0.0 qr_code_scanner_plus: ^2.0.10+1 window_manager: ^0.3.7 diff --git a/windows/runner/resources/app_icon.ico b/windows/runner/resources/app_icon.ico index c04e20caf6370ebb9253ad831cc31de4a9c965f6..f5119fe88475aeed5b0f8461e9897318eaa7ea09 100644 GIT binary patch literal 76238 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 literal 33772 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