From 811d0df359ab214504d5219d392bd7a7e3f1172d Mon Sep 17 00:00:00 2001 From: "hanie.khodkari" Date: Mon, 5 May 2025 20:20:21 +0330 Subject: [PATCH] Fix export bug --- lib/providers/cycles.dart | 28 +++++++++++++++++----------- lib/providers/items.dart | 28 +++++++++++++++++----------- lib/providers/packages.dart | 28 +++++++++++++++++----------- 3 files changed, 51 insertions(+), 33 deletions(-) diff --git a/lib/providers/cycles.dart b/lib/providers/cycles.dart index c9977ae..4ba8374 100755 --- a/lib/providers/cycles.dart +++ b/lib/providers/cycles.dart @@ -387,17 +387,23 @@ class CyclesProvider extends ChangeNotifier { } Future exportCycles() async { - final baseStorage = await getExternalStorageDirectory(); - final taskId = await FlutterDownloader.enqueue( - url: Url.exportCycles, - savedDir: baseStorage!.path, - headers: {'Authorization': User.token, "Accept": "*"}, - showNotification: true, - openFileFromNotification: true, - saveInPublicStorage: true, - fileName: "Cycles " + DateTime.now().toString() + ".xlsx", - ); - print(taskId); + var response = await http.get(Uri.parse(Url.exportCycles), headers: { + 'Authorization': User.token, + }); + var responseData = json.decode(response.body); + if (response.statusCode == 200 && + responseData['message']['title'] == "Success") { + final baseStorage = await getExternalStorageDirectory(); + final taskId = await FlutterDownloader.enqueue( + url: responseData['data']['url'].toString(), + savedDir: baseStorage!.path, + showNotification: true, + openFileFromNotification: true, + saveInPublicStorage: true, + fileName: "Cycles " + DateTime.now().toString() + ".xlsx", + ); + print(taskId); + } return true; } } diff --git a/lib/providers/items.dart b/lib/providers/items.dart index 36173c4..82bbd79 100755 --- a/lib/providers/items.dart +++ b/lib/providers/items.dart @@ -403,17 +403,23 @@ class ItemProvider extends ChangeNotifier { } Future exportItems() async { - final baseStorage = await getExternalStorageDirectory(); - final taskId = await FlutterDownloader.enqueue( - url: Url.exportItems, - savedDir: baseStorage!.path, - headers: {'Authorization': User.token, "Accept": "*"}, - showNotification: true, - openFileFromNotification: true, - saveInPublicStorage: true, - fileName: "Items " + DateTime.now().toString() + ".xlsx", - ); - print(taskId); + var response = await http.get(Uri.parse(Url.exportItems), headers: { + 'Authorization': User.token, + }); + var responseData = json.decode(response.body); + if (response.statusCode == 200 && + responseData['message']['title'] == "Success") { + final baseStorage = await getExternalStorageDirectory(); + final taskId = await FlutterDownloader.enqueue( + url: responseData['data']['url'].toString(), + savedDir: baseStorage!.path, + showNotification: true, + openFileFromNotification: true, + saveInPublicStorage: true, + fileName: "Items " + DateTime.now().toString() + ".xlsx", + ); + print(taskId); + } return true; } } diff --git a/lib/providers/packages.dart b/lib/providers/packages.dart index 3935bd5..8e723b1 100755 --- a/lib/providers/packages.dart +++ b/lib/providers/packages.dart @@ -457,17 +457,23 @@ class PackageProvider extends ChangeNotifier { } Future exportPackages() async { - final baseStorage = await getExternalStorageDirectory(); - final taskId = await FlutterDownloader.enqueue( - url: Url.exportPackages, - headers: {'Authorization': User.token, "Accept": "*"}, - savedDir: baseStorage!.path, - showNotification: true, - openFileFromNotification: true, - saveInPublicStorage: true, - fileName: "Packages " + DateTime.now().toString() + ".xlsx", - ); - print(taskId); + var response = await http.get(Uri.parse(Url.exportPackages), headers: { + 'Authorization': User.token, + }); + var responseData = json.decode(response.body); + if (response.statusCode == 200 && + responseData['message']['title'] == "Success") { + final baseStorage = await getExternalStorageDirectory(); + final taskId = await FlutterDownloader.enqueue( + url: responseData['data']['url'].toString(), + savedDir: baseStorage!.path, + showNotification: true, + openFileFromNotification: true, + saveInPublicStorage: true, + fileName: "Packages " + DateTime.now().toString() + ".xlsx", + ); + print(taskId); + } return true; } }