From 8191106efdea3b11ac123a4dbaca7d6167272cbc Mon Sep 17 00:00:00 2001 From: Elham Rababah Date: Thu, 10 Sep 2020 12:25:07 +0300 Subject: [PATCH] fix issues related to DistanceInKilometers --- lib/pages/dashboard/dashboard_screen.dart | 19 +++----- lib/pages/orders/deliverd_orders_page.dart | 25 +++-------- lib/pages/orders/pending_orders_page.dart | 15 ++----- .../{setting.dart => setting_page.dart} | 0 lib/widgets/delivery/customer_brief_card.dart | 15 +++---- .../delivery/distance_in_kilometers.dart | 44 +++++++++++++++++++ 6 files changed, 64 insertions(+), 54 deletions(-) rename lib/pages/setting/{setting.dart => setting_page.dart} (100%) create mode 100644 lib/widgets/delivery/distance_in_kilometers.dart diff --git a/lib/pages/dashboard/dashboard_screen.dart b/lib/pages/dashboard/dashboard_screen.dart index f0fe1be..7fa06b8 100644 --- a/lib/pages/dashboard/dashboard_screen.dart +++ b/lib/pages/dashboard/dashboard_screen.dart @@ -7,11 +7,11 @@ import 'package:driverapp/core/viewModels/orders_view_model.dart'; import 'package:driverapp/pages/delivery/information_page.dart'; import 'package:driverapp/pages/orders/deliverd_orders_page.dart'; import 'package:driverapp/pages/orders/pending_orders_page.dart'; -import 'package:driverapp/pages/setting/setting.dart'; +import 'package:driverapp/pages/setting/setting_page.dart'; import 'package:driverapp/uitl/app_toast.dart'; import 'package:driverapp/uitl/translations_delegate_base.dart'; import 'package:driverapp/uitl/utils.dart'; -import 'package:driverapp/widgets/data_display/circle-container.dart'; +import 'package:driverapp/widgets/delivery/distance_in_kilometers.dart'; import 'package:driverapp/widgets/others/app_scaffold_widget.dart'; import 'package:driverapp/widgets/others/network_base_view.dart'; import 'package:driverapp/widgets/others/rounded_container.dart'; @@ -625,17 +625,9 @@ class _DashboardScreenState extends State { ), Padding( padding: EdgeInsets.all(8.0), - child: CircleContainer( - borderWidth: 1.5, - child: Text( - model.orders[index].distanceInKilometers - .toString() + - '\nK.m\naway', - style: TextStyle( - color: Color(0xff42B6AD), - fontWeight: FontWeight.w800, - fontStyle: FontStyle.normal), - ), + child: DistanceInKilometers( + distanceInKilometers: model + .orders[index].distanceInKilometers, ), ), ], @@ -680,3 +672,4 @@ class _DashboardScreenState extends State { } } } + diff --git a/lib/pages/orders/deliverd_orders_page.dart b/lib/pages/orders/deliverd_orders_page.dart index c9c0fbe..b2dfbc0 100644 --- a/lib/pages/orders/deliverd_orders_page.dart +++ b/lib/pages/orders/deliverd_orders_page.dart @@ -1,6 +1,5 @@ import 'package:driverapp/core/viewModels/orders_view_model.dart'; -import 'package:driverapp/pages/delivery/information_page.dart'; -import 'package:driverapp/widgets/data_display/circle-container.dart'; +import 'package:driverapp/widgets/delivery/distance_in_kilometers.dart'; import 'package:driverapp/widgets/others/app_scaffold_widget.dart'; import 'package:driverapp/widgets/others/rounded_container.dart'; import 'package:flutter/cupertino.dart'; @@ -120,29 +119,15 @@ class _DeliverdOrdersPageState extends State { ), Padding( padding: EdgeInsets.all(8.0), - child: CircleContainer( - child: Text( - model.deliverdOrders[index] - .distanceInKilometers - .toString() + - '\nK.m\naway', - style: TextStyle( - color: Color(0xff42B6AD), - fontWeight: FontWeight.w800, - fontStyle: FontStyle.normal), - ), + child: DistanceInKilometers( + distanceInKilometers: model + .deliverdOrders[index].distanceInKilometers, ), +// ), ], ), ), -// onTap: () { -// Navigator.push( -// context, -// MaterialPageRoute( -// builder: (context) => -// InformationPage(model.orders[index]))); -// }, ), ); }, diff --git a/lib/pages/orders/pending_orders_page.dart b/lib/pages/orders/pending_orders_page.dart index 20d7d31..f6a90d3 100644 --- a/lib/pages/orders/pending_orders_page.dart +++ b/lib/pages/orders/pending_orders_page.dart @@ -1,7 +1,7 @@ import 'package:driverapp/core/viewModels/orders_view_model.dart'; import 'package:driverapp/pages/delivery/information_page.dart'; import 'package:driverapp/uitl/translations_delegate_base.dart'; -import 'package:driverapp/widgets/data_display/circle-container.dart'; +import 'package:driverapp/widgets/delivery/distance_in_kilometers.dart'; import 'package:driverapp/widgets/others/app_scaffold_widget.dart'; import 'package:driverapp/widgets/others/rounded_container.dart'; import 'package:flutter/cupertino.dart'; @@ -118,16 +118,9 @@ class _OrdersListScreenState extends State { ), Padding( padding: EdgeInsets.all(8.0), - child: CircleContainer( - child: Text( - model.orders[index].distanceInKilometers - .toString() + - '\nK.m\naway', - style: TextStyle( - color: Color(0xff42B6AD), - fontWeight: FontWeight.w800, - fontStyle: FontStyle.normal), - ), + child: DistanceInKilometers( + distanceInKilometers: + model.orders[index].distanceInKilometers, ), ), ], diff --git a/lib/pages/setting/setting.dart b/lib/pages/setting/setting_page.dart similarity index 100% rename from lib/pages/setting/setting.dart rename to lib/pages/setting/setting_page.dart diff --git a/lib/widgets/delivery/customer_brief_card.dart b/lib/widgets/delivery/customer_brief_card.dart index af08d68..308aa13 100644 --- a/lib/widgets/delivery/customer_brief_card.dart +++ b/lib/widgets/delivery/customer_brief_card.dart @@ -1,6 +1,7 @@ -import 'package:driverapp/widgets/data_display/circle-container.dart'; -import 'package:flutter/material.dart'; import 'package:driverapp/config/size_config.dart'; +import 'package:driverapp/widgets/delivery/distance_in_kilometers.dart'; +import 'package:flutter/material.dart'; + import '../../uitl/date_uitl.dart'; import '../../uitl/translations_delegate_base.dart'; @@ -75,14 +76,8 @@ class CustomerBriefCard extends StatelessWidget { Expanded( child: Padding( padding: EdgeInsets.all(8.0), - child: CircleContainer( - child: Text( - '0 K.m\naway', - style: TextStyle( - color: Color(0xff42B6AD), - fontWeight: FontWeight.w800, - fontStyle: FontStyle.normal), - ), + child: DistanceInKilometers( + distanceInKilometers: 0.0, ), ), ), diff --git a/lib/widgets/delivery/distance_in_kilometers.dart b/lib/widgets/delivery/distance_in_kilometers.dart new file mode 100644 index 0000000..745aaef --- /dev/null +++ b/lib/widgets/delivery/distance_in_kilometers.dart @@ -0,0 +1,44 @@ +import 'package:driverapp/widgets/data_display/circle-container.dart'; +import 'package:flutter/material.dart'; + +class DistanceInKilometers extends StatelessWidget { + const DistanceInKilometers({ + @required this.distanceInKilometers, + Key key, + }) : super(key: key); + + final double distanceInKilometers; + + @override + Widget build(BuildContext context) { + return CircleContainer( + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + distanceInKilometers.toString(), + style: TextStyle( + color: Color(0xff42B6AD), + fontWeight: FontWeight.w800, + fontStyle: FontStyle.normal), + ), + Text( + 'K.m', + style: TextStyle( + color: Color(0xff42B6AD), + fontWeight: FontWeight.w800, + fontStyle: FontStyle.normal), + ), + Text( + 'away', + style: TextStyle( + color: Color(0xff42B6AD), + fontWeight: FontWeight.w800, + fontStyle: FontStyle.normal), + ), + ], + ), + ); + } +}