import 'package:barcode_scanner/themes/app_theme.dart'; import 'package:flutter/material.dart'; class StockPickingCard extends StatelessWidget { const StockPickingCard({ super.key, required this.reference, required this.from, required this.to, required this.contact, required this.origin, required this.status, }); final String? reference; final String? from; final String? to; final String? contact; final String? origin; final String? status; @override Widget build(BuildContext context) { return Card( elevation: 3, color: AppTheme.of(context).primaryBackground, margin: const EdgeInsets.symmetric(horizontal: 12, vertical: 8), shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), child: Padding( padding: const EdgeInsets.all(16.0), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( children: [ const Icon(Icons.receipt_long, color: Colors.blue), const SizedBox(width: 8), Expanded( child: Text( reference ?? 'Référence inconnue', style: const TextStyle( fontSize: 18, fontWeight: FontWeight.bold, ), ), ), ], ), const SizedBox(height: 12), _infoRow(Icons.call_made, "De", from), _infoRow(Icons.call_received, "Vers", to), _infoRow(Icons.person, "Contact", contact), _infoRow(Icons.insert_drive_file, "Document d’origine", origin), _infoRow(Icons.check_circle, "Statut", status), ], ), ), ); } Widget _infoRow(IconData icon, String label, String? value) { return Padding( padding: const EdgeInsets.symmetric(vertical: 4.0), child: Row( children: [ Icon(icon, size: 20, color: Colors.grey[700]), const SizedBox(width: 8), Text( "$label : ", style: const TextStyle(fontWeight: FontWeight.w600), ), Expanded( child: Text( value ?? "-", style: const TextStyle(color: Colors.black87), ), ), ], ), ); } }