Browse Source

maj excel

31052025_01
b.razafimandimbihery 6 months ago
parent
commit
f9b6be7104
  1. 13
      lib/Views/HandleProduct.dart

13
lib/Views/HandleProduct.dart

@ -103,13 +103,16 @@ void _showExcelCompatibilityError() {
Future<void> _downloadExcelTemplate() async { Future<void> _downloadExcelTemplate() async {
try { try {
// Créez un nouveau fichier Excel
final excel = Excel.createExcel(); final excel = Excel.createExcel();
excel.delete('Sheet1');
excel.copy('Sheet1', 'Produits'); // Supprimez la feuille par défaut si elle existe
excel.delete('Sheet1'); excel.delete('Sheet1');
// Créez une nouvelle feuille nommée "Produits"
final sheet = excel['Produits']; final sheet = excel['Produits'];
// Ajoutez les en-têtes
final headers = ['Nom', 'Prix', 'Catégorie', 'Description', 'Stock']; final headers = ['Nom', 'Prix', 'Catégorie', 'Description', 'Stock'];
for (int i = 0; i < headers.length; i++) { for (int i = 0; i < headers.length; i++) {
final cell = sheet.cell(CellIndex.indexByColumnRow(columnIndex: i, rowIndex: 0)); final cell = sheet.cell(CellIndex.indexByColumnRow(columnIndex: i, rowIndex: 0));
@ -120,6 +123,7 @@ Future<void> _downloadExcelTemplate() async {
); );
} }
// Ajoutez des exemples de données
final examples = [ final examples = [
['Croissant', '1.50', 'Sucré', 'Délicieux croissant beurré', '20'], ['Croissant', '1.50', 'Sucré', 'Délicieux croissant beurré', '20'],
['Sandwich jambon', '4.00', 'Salé', 'Sandwich fait maison', '15'], ['Sandwich jambon', '4.00', 'Salé', 'Sandwich fait maison', '15'],
@ -134,12 +138,14 @@ Future<void> _downloadExcelTemplate() async {
} }
} }
// Définissez la largeur des colonnes
sheet.setColWidth(0, 20); sheet.setColWidth(0, 20);
sheet.setColWidth(1, 10); sheet.setColWidth(1, 10);
sheet.setColWidth(2, 15); sheet.setColWidth(2, 15);
sheet.setColWidth(3, 30); sheet.setColWidth(3, 30);
sheet.setColWidth(4, 10); sheet.setColWidth(4, 10);
// Sauvegardez le fichier Excel
final bytes = excel.save(); final bytes = excel.save();
if (bytes == null) { if (bytes == null) {
@ -147,6 +153,7 @@ Future<void> _downloadExcelTemplate() async {
return; return;
} }
// Demandez à l'utilisateur où sauvegarder le fichier
final String? outputFile = await FilePicker.platform.saveFile( final String? outputFile = await FilePicker.platform.saveFile(
fileName: 'modele_import_produits.xlsx', fileName: 'modele_import_produits.xlsx',
allowedExtensions: ['xlsx'], allowedExtensions: ['xlsx'],
@ -155,6 +162,7 @@ Future<void> _downloadExcelTemplate() async {
if (outputFile != null) { if (outputFile != null) {
try { try {
// Écrivez les données dans le fichier
await File(outputFile).writeAsBytes(bytes); await File(outputFile).writeAsBytes(bytes);
Get.snackbar( Get.snackbar(
'Succès', 'Succès',
@ -173,6 +181,7 @@ Future<void> _downloadExcelTemplate() async {
} }
} }
Future<void> _importFromExcel() async { Future<void> _importFromExcel() async {
try { try {
final result = await FilePicker.platform.pickFiles( final result = await FilePicker.platform.pickFiles(

Loading…
Cancel
Save