diff --git a/lib/pages/MyItemsPages/my_items_history_screen.dart b/lib/pages/MyItemsPages/my_items_history_screen.dart index 3225af4..1141594 100644 --- a/lib/pages/MyItemsPages/my_items_history_screen.dart +++ b/lib/pages/MyItemsPages/my_items_history_screen.dart @@ -124,8 +124,11 @@ class _MyItemsHistoryScreenState extends State { color: Colors.black, ), ) - : ListView.builder( + : ListView.separated( controller: sc, + separatorBuilder: (context, index) { + return Divider(); + }, itemBuilder: (context, index) { return Column( children: [ @@ -139,11 +142,14 @@ class _MyItemsHistoryScreenState extends State { Text( itemData!.userHistory.toString(), ), + SizedBox( + height: 20.0, + ), ], ); }, itemCount: userResults - .originalItemHistory?.length, + .originalItemHistory!.length, shrinkWrap: true, ); }, diff --git a/lib/pages/MyPackagesPages/Result/my_packages_mine_screen.dart b/lib/pages/MyPackagesPages/Result/my_packages_mine_screen.dart index de4c524..5a42143 100644 --- a/lib/pages/MyPackagesPages/Result/my_packages_mine_screen.dart +++ b/lib/pages/MyPackagesPages/Result/my_packages_mine_screen.dart @@ -181,7 +181,7 @@ class _MyPackagesMineScreenState extends State { packageResults.myPackages?[index], push: () { Navigator.pushNamed(context, - Routes.myItemsHistoryScreen, + Routes.myPackagesHistoryScreen, arguments: packageResults .myPackages?[index]); }, @@ -194,7 +194,7 @@ class _MyPackagesMineScreenState extends State { .hospitalPackages?[index], push: () { Navigator.pushNamed(context, - Routes.myItemsHistoryScreen, + Routes.myPackagesHistoryScreen, arguments: packageResults .hospitalPackages?[index]); }, diff --git a/lib/pages/MyPackagesPages/my_packages_history_screen.dart b/lib/pages/MyPackagesPages/my_packages_history_screen.dart index 670a810..ae5cf89 100644 --- a/lib/pages/MyPackagesPages/my_packages_history_screen.dart +++ b/lib/pages/MyPackagesPages/my_packages_history_screen.dart @@ -1,7 +1,6 @@ import 'package:cssd/models/my_package_model.dart'; import 'package:cssd/providers/auth.dart'; -import 'package:cssd/providers/users.dart'; -import 'package:cssd/widgets/MyItemsScreens/Detail/transfer_data_box.dart'; +import 'package:cssd/providers/my_packages.dart'; import 'package:cssd/widgets/MyPackagesScreens/History/my_packages_history_date_widget.dart'; import 'package:cssd/widgets/MyPackagesScreens/Result/my_packages_data_box_widget.dart'; @@ -36,28 +35,29 @@ class _MyPackagesHistoryScreenState extends State { } @override - void didChangeDependencies() async { + void didChangeDependencies() { if (_isInit) { packageData = ModalRoute.of(context)!.settings.arguments as MyPackageResultObject?; - var userResults = Provider.of(context); - userResults.setLoading(); - String medicalCenterId = - await userResults.getUserMedicalCenter() as String; - userResults.getUsers(medicalCenterId).then((_) { - userResults.resetLoading(); - sc?.addListener( - () { - if (sc!.position.pixels == sc!.position.maxScrollExtent) { - var userResults = Provider.of( - context, - listen: false, - ); - userResults.getUsers(medicalCenterId); - } - }, - ); - }); + var _id = packageData!.id; + var myPackageResults = Provider.of(context); + myPackageResults.setLoading(); + myPackageResults.getPackagesHistory(_id).then( + (_) { + myPackageResults.resetLoading(); + sc!.addListener( + () { + if (sc!.position.pixels == sc!.position.maxScrollExtent) { + var myPackageResults = Provider.of( + context, + listen: false, + ); + myPackageResults.getPackagesHistory(_id); + } + }, + ); + }, + ); } _isInit = false; super.didChangeDependencies(); @@ -117,16 +117,19 @@ class _MyPackagesHistoryScreenState extends State { height: 20.0, ), Expanded( - child: Consumer( + child: Consumer( builder: (context, userResults, child) { - return userResults.isLoading + return userResults.isloading ? Center( child: CircularProgressIndicator( color: Colors.black, ), ) - : ListView.builder( + : ListView.separated( controller: sc, + separatorBuilder: (context, index) { + return Divider(); + }, itemBuilder: (context, index) { return Column( children: [ @@ -137,15 +140,18 @@ class _MyPackagesHistoryScreenState extends State { SizedBox( height: 20.0, ), - TransferDataBox( - deviceBlockSize: _deviceBlockSize, - user: - userResults.usersBox?[index], + Text( + packageData!.userHistory + .toString(), + ), + SizedBox( + height: 20.0, ), ], ); }, - itemCount: userResults.usersBox?.length, + itemCount: userResults + .originalPackageHistory!.length, shrinkWrap: true, ); }, diff --git a/lib/providers/my_packages.dart b/lib/providers/my_packages.dart index f6810ab..3094e35 100644 --- a/lib/providers/my_packages.dart +++ b/lib/providers/my_packages.dart @@ -19,6 +19,8 @@ class MyPackageProvider extends ChangeNotifier { List? originalMyPackagesRequests; List? originalHospitalPackagesRequests; + List? originalPackageHistory; + MyPackageFilterObject? filters = MyPackageFilterObject( id: '', name: '', @@ -102,30 +104,12 @@ class MyPackageProvider extends ChangeNotifier { originalMyPackages = []; } - String fromDate = ''; - String toDate = ''; - String userHistory = ''; - - for (var package in packagesData['data']) { - for (var transfer in package['transfers']) { - fromDate = transfer['from_date'] != null - ? transfer['from_date'].toString() - : ''; - toDate = - transfer['to_date'] != null ? transfer['to_date'].toString() : ''; - userHistory = transfer['user']['name'].toString(); - } - } - for (var package in packagesData['data']) { originalMyPackages!.add( MyPackageResultObject( name: package['name'], id: package['id'].toString(), createdAt: package['created_at'].toString(), - fromDate: fromDate, - toDate: toDate, - userName: userHistory, ), ); } @@ -157,21 +141,6 @@ class MyPackageProvider extends ChangeNotifier { originalHospitalPackages = []; } - String fromDate = ''; - String toDate = ''; - String userHistory = ''; - - for (var package in packagesData['data']) { - for (var transfer in package['transfers']) { - fromDate = transfer['from_date'] != null - ? transfer['from_date'].toString() - : ''; - toDate = - transfer['to_date'] != null ? transfer['to_date'].toString() : ''; - userHistory = transfer['user']['name'].toString(); - } - } - for (var package in packagesData['data']) { originalHospitalPackages!.add( MyPackageResultObject( @@ -179,9 +148,6 @@ class MyPackageProvider extends ChangeNotifier { id: package['id'].toString(), createdAt: package['created_at'].toString(), userName: package['user'] != null ? package['user']['name'] : '', - fromDate: fromDate, - toDate: toDate, - userHistory: userHistory, ), ); } @@ -236,6 +202,40 @@ class MyPackageProvider extends ChangeNotifier { } } + Future getPackagesHistory(String id) async { + String url = Url.getPackageResult(id); + var response = await http.get( + Uri.parse(url), + headers: {'Authorization': User.token, "Accept": "application/json"}, + ); + + var packagesData = json.decode(response.body)['data']; + + String fromDate = ''; + String toDate = ''; + String userHistory = ''; + for (var transfer in packagesData['transfers']) { + fromDate = + transfer['from_date'] != null ? transfer['from_date'].toString() : ''; + toDate = + transfer['to_date'] != null ? transfer['to_date'].toString() : ''; + userHistory = transfer['user']['name'].toString(); + } + if (packagesData.isNotEmpty) { + originalPackageHistory!.add( + MyPackageResultObject( + name: packagesData['name'], + id: packagesData['id'].toString(), + createdAt: packagesData['created_at'].toString(), + fromDate: fromDate, + toDate: toDate, + userHistory: userHistory, + ), + ); + originalPackageHistory!.reversed.toList(); + } + } + Future transferPackage(String packageId, String userId) async { var response = await http.post( Uri.parse(Url.transferPackages(packageId)), diff --git a/lib/widgets/MyItemsScreens/History/my_items_history_date_widget.dart b/lib/widgets/MyItemsScreens/History/my_items_history_date_widget.dart index 5ac30d4..ed078f2 100644 --- a/lib/widgets/MyItemsScreens/History/my_items_history_date_widget.dart +++ b/lib/widgets/MyItemsScreens/History/my_items_history_date_widget.dart @@ -28,7 +28,7 @@ class ItemHistoryDate extends StatelessWidget { Text( items.fromDate.toString(), style: TextStyle( - fontSize: 4 * _deviceBlockSize, + fontSize: 3 * _deviceBlockSize, fontWeight: FontWeight.w700, ), ), @@ -51,7 +51,7 @@ class ItemHistoryDate extends StatelessWidget { Text( items.toDate.toString(), style: TextStyle( - fontSize: 4 * _deviceBlockSize, + fontSize: 3 * _deviceBlockSize, fontWeight: FontWeight.w700, ), ), diff --git a/lib/widgets/MyPackagesScreens/History/my_packages_history_date_widget.dart b/lib/widgets/MyPackagesScreens/History/my_packages_history_date_widget.dart index 20a9e12..e1f94b4 100644 --- a/lib/widgets/MyPackagesScreens/History/my_packages_history_date_widget.dart +++ b/lib/widgets/MyPackagesScreens/History/my_packages_history_date_widget.dart @@ -28,7 +28,7 @@ class PackageHistoryDate extends StatelessWidget { Text( packages.fromDate!, style: TextStyle( - fontSize: 4 * _deviceBlockSize, + fontSize: 3 * _deviceBlockSize, fontWeight: FontWeight.w700, ), ), @@ -51,7 +51,7 @@ class PackageHistoryDate extends StatelessWidget { Text( packages.toDate!, style: TextStyle( - fontSize: 4 * _deviceBlockSize, + fontSize: 3 * _deviceBlockSize, fontWeight: FontWeight.w700, ), ),