logut
hussam al-habibeh 4 years ago
parent 4f0bf61fef
commit dcedc989e1

@ -11,7 +11,7 @@ const Map<String, Map<String, String>> localizedValues = {
'services': {'en': 'SERVICES', 'ar': 'الخدمات'}, 'services': {'en': 'SERVICES', 'ar': 'الخدمات'},
'mySchedule': {'en': 'My Schedule', 'ar': 'جدولي'}, 'mySchedule': {'en': 'My Schedule', 'ar': 'جدولي'},
'logout': {'en': 'Logout', 'ar': 'تسجيل خروج'}, 'logout': {'en': 'Logout', 'ar': 'تسجيل خروج'},
'booking':{'en': 'Booking','ar':'حجز'}, 'booking': {'en': 'Booking', 'ar': 'حجز'},
'enterId': {'en': 'User Name', 'ar': 'اسم المستخدم'}, 'enterId': {'en': 'User Name', 'ar': 'اسم المستخدم'},
'pleaseEnterYourID': { 'pleaseEnterYourID': {
'en': 'Please enter your ', 'en': 'Please enter your ',
@ -26,13 +26,19 @@ const Map<String, Map<String, String>> localizedValues = {
'en': 'Please insert username and password to login', 'en': 'Please insert username and password to login',
'ar': 'الرجاء إدخال اسم المستخدم وكلمة المرور لتسجيل الدخول' 'ar': 'الرجاء إدخال اسم المستخدم وكلمة المرور لتسجيل الدخول'
}, },
'forgotPassword': { 'forgotPassword': {'en': 'Forgot Password?', 'ar': 'هل نسيت كلمة المرور ؟'},
'en': 'Forgot Password?', 'login': {'en': 'Login', 'ar': 'تسجيل الدخول'},
'ar': 'هل نسيت كلمة المرور ؟' 'haveGreatDay': {'en': 'have a great day ,', 'ar': 'أتمنى لك يوما جميلا '},
'youHave': {'en': 'You Have', 'ar': 'يوجد لديك'},
'deliveredPackages': {'en': 'Delivered Packages', 'ar': 'الطرود المسلمة'},
'seeAll': {'en': 'See All', 'ar': 'اظهار الكل'},
'nearestDropOffs': {'en': 'nearest drop-offs', 'ar': 'أقرب نقطة إنزال'},
'undeliveredPackages': {
'en': 'Undelivered Packages',
'ar': 'الطرود التي لم يتم تسليمها'
}, },
'login': { 'away': {'en': 'away', 'ar': 'بعيدا'},
'en': 'Login', 'scan': {'en': 'Scan', 'ar': 'مسح'},
'ar': 'تسجيل الدخول' 'scan2': {'en': 'away', 'ar': 'بعيدا'},
} 'scanDb': {'en': 'away', 'ar': 'بعيدا'},
}; };

@ -11,18 +11,21 @@ class PendingOrders {
String firstName; String firstName;
String lastName; String lastName;
String mobileNumber; String mobileNumber;
int distanceInKilometers;
PendingOrders( PendingOrders({
{this.driverID, this.driverID,
this.searchKey, this.searchKey,
this.pageSize, this.pageSize,
this.pageIndex, this.pageIndex,
this.tokenID, this.tokenID,
this.userID, this.userID,
this.mobileNo, this.mobileNo,
this.firstName, this.firstName,
this.lastName, this.lastName,
this.mobileNumber}); this.mobileNumber,
this.distanceInKilometers,
});
PendingOrders.fromJson(Map<String, dynamic> json) { PendingOrders.fromJson(Map<String, dynamic> json) {
driverID = json['DriverID']; driverID = json['DriverID'];
@ -35,6 +38,7 @@ class PendingOrders {
firstName = json['FirstName']; firstName = json['FirstName'];
lastName = json['LastName']; lastName = json['LastName'];
mobileNumber = json['MobileNumber']; mobileNumber = json['MobileNumber'];
distanceInKilometers = json['DistanceInKilometers'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {

@ -6,6 +6,7 @@ import 'package:flutter/cupertino.dart';
import 'package:driverapp/app-icons/driver_app_icons.dart'; import 'package:driverapp/app-icons/driver_app_icons.dart';
import 'package:driverapp/widgets/others/rounded_container.dart'; import 'package:driverapp/widgets/others/rounded_container.dart';
import 'package:driverapp/pages/orders/pending_orders_page.dart'; import 'package:driverapp/pages/orders/pending_orders_page.dart';
import 'package:driverapp/widgets/others/app_scaffold_widget.dart';
class DashboardScreen extends StatefulWidget { class DashboardScreen extends StatefulWidget {
@override @override
@ -15,12 +16,12 @@ class DashboardScreen extends StatefulWidget {
class _DashboardScreenState extends State<DashboardScreen> { class _DashboardScreenState extends State<DashboardScreen> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
int orderId;
return BaseView<PendingOrdersViewModel>( return BaseView<PendingOrdersViewModel>(
onModelReady: (model) => model.getPendingOrders(), onModelReady: (model) => model.getPendingOrders(),
builder: builder:
(BuildContext context, PendingOrdersViewModel model, Widget child) => (BuildContext context, PendingOrdersViewModel model, Widget child) =>
Scaffold( AppScaffold(
backgroundColor: Color(0xffF4F9FA),
body: Column( body: Column(
// mainAxisAlignment: MainAxisAlignment.center, // mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
@ -210,7 +211,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
0.10, 0.10,
width: MediaQuery.of(context).size.width * width: MediaQuery.of(context).size.width *
0.20, 0.20,
scale: 0.9,
fit: BoxFit.cover, fit: BoxFit.cover,
), ),
], ],
@ -328,98 +328,113 @@ class _DashboardScreenState extends State<DashboardScreen> {
], ],
), ),
), ),
Column( Expanded(
children: <Widget>[ child: ListView.builder(
ListView.builder( shrinkWrap: true,
shrinkWrap: true, scrollDirection: Axis.vertical,
scrollDirection: Axis.vertical, itemCount: //model.orders == null ? 0 : model.orders.length,
itemCount: //model.orders == null ? 0 : model.orders.length, 3,
3, itemBuilder: (BuildContext context, int index) {
itemBuilder: (BuildContext context, int index) { return Padding(
return Padding( padding: EdgeInsets.symmetric(horizontal: 12.2),
padding: EdgeInsets.symmetric(horizontal: 12.2), child: InkWell(
child: RoundedContainer( child: RoundedContainer(
height: MediaQuery.of(context).size.height * 0.108, height: MediaQuery.of(context).size.height * 0.108,
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
Expanded(
flex: 1,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Padding(
padding: EdgeInsets.only(left: 22.0),
child: Image.asset(
'assets/images/location.png'),
)
],
),
),
if (model.orders.length != 0)
Expanded( Expanded(
flex: 3, flex: 1,
child: Column( child: Column(
crossAxisAlignment: mainAxisAlignment: MainAxisAlignment.center,
CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Text( Padding(
model.orders[index].firstName + padding: EdgeInsets.only(left: 22.0),
' ' + child: Image.asset(
model.orders[index].lastName, 'assets/images/location.png',
style: TextStyle(fontSize: 18.0), height: MediaQuery.of(context)
), .size
Text( .height *
model.orders[index].mobileNumber, 0.10,
style: TextStyle( width: MediaQuery.of(context)
color: Color(0xff30B7B9), .size
fontWeight: FontWeight.w600, .width *
fontSize: 15.0), 0.09,
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ',
style:
TextStyle(color: Colors.black45),
), ),
) )
], ],
), ),
), ),
Padding( if (model.orders.length != 0)
padding: EdgeInsets.all(10.0), Expanded(
child: Column( flex: 3,
mainAxisAlignment: MainAxisAlignment.center, child: Column(
children: <Widget>[ crossAxisAlignment:
Expanded( CrossAxisAlignment.start,
child: CircleAvatar( children: <Widget>[
backgroundColor: Colors.black45, Text(
radius: 28.0, model.orders[index].firstName +
' ' +
model.orders[index].lastName,
style: TextStyle(fontSize: 18.0),
),
Text(
model.orders[index].mobileNumber,
style: TextStyle(
color: Color(0xff30B7B9),
fontWeight: FontWeight.w600,
fontSize: 15.0),
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ,Olaya ST ',
style: TextStyle(
color: Colors.black45),
),
)
],
),
),
Padding(
padding: EdgeInsets.all(10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: CircleAvatar( child: CircleAvatar(
backgroundColor: Colors.white, backgroundColor: Colors.black45,
maxRadius: 25.1, radius: 28.0,
child: Padding( child: CircleAvatar(
padding: const EdgeInsets.all(8.0), backgroundColor: Colors.white,
child: Text( maxRadius: 25.1,
'3 K.m \n away', child: Padding(
style: TextStyle( padding:
color: Color(0xff30B7B9), const EdgeInsets.all(8.0),
fontSize: 12.5, child: Text(
fontWeight: FontWeight.w600), '3 K.m \n away',
style: TextStyle(
color: Color(0xff30B7B9),
fontSize: 12.5,
fontWeight:
FontWeight.w600),
),
), ),
), ),
), ),
), )
) ],
], ),
), ),
), ],
], ),
), ),
), onTap: () => Navigator.push(
); context,
}) MaterialPageRoute(
], builder: (context) => OrdersListScreen()),
)),
);
}),
) )
], ],
), ),

@ -27,96 +27,112 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
), ),
body: Column( body: Column(
children: <Widget>[ children: <Widget>[
Text( Center(
'Nearest', child: Text(
style: TextStyle(color: Color(0xff30B7B9), fontSize: 18.0), 'Nearest',
style: TextStyle(
color: Color(0xff30B7B9),
fontSize: 18.0,
fontWeight: FontWeight.w400),
),
), ),
ListView.builder( Expanded(
itemCount: model.orders == null ? 0 : model.orders.length, child: ListView.builder(
scrollDirection: Axis.vertical, itemCount: model.orders == null ? 0 : model.orders.length,
shrinkWrap: true, scrollDirection: Axis.vertical,
itemBuilder: (BuildContext context, int index) { shrinkWrap: true,
return Padding( itemBuilder: (BuildContext context, int index) {
padding: EdgeInsets.symmetric(horizontal: 12.2), return Padding(
child: RoundedContainer( padding: EdgeInsets.symmetric(horizontal: 12.2),
height: MediaQuery.of(context).size.height * 0.11, child: RoundedContainer(
child: Row( height: MediaQuery.of(context).orientation ==
mainAxisAlignment: MainAxisAlignment.spaceBetween, Orientation.portrait
children: <Widget>[ ? MediaQuery.of(context).size.height * 0.107
Expanded( : MediaQuery.of(context).size.height * 0.18,
flex: 1, child: Row(
child: Column( mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[
children: <Widget>[
Padding(
padding: EdgeInsets.only(left: 22.0),
child:
Image.asset('assets/images/location.png'),
)
],
),
),
if (model.orders.length != 0)
Expanded( Expanded(
flex: 3, flex: 1,
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[ children: <Widget>[
Text( Padding(
model.orders[index].firstName + padding: EdgeInsets.only(left: 22.0),
' ' + child: Image.asset(
model.orders[index].lastName, 'assets/images/location.png',
style: TextStyle(fontSize: 18.0), height:
), MediaQuery.of(context).size.height *
Text( 0.101,
model.orders[index].mobileNumber,
style: TextStyle(
color: Color(0xff30B7B9),
fontWeight: FontWeight.w600,
fontSize: 15.0),
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ',
style: TextStyle(color: Colors.black45),
), ),
) ),
], ],
), ),
), ),
Padding( if (model.orders.length != 0)
padding: EdgeInsets.all(10.0), Expanded(
child: Column( flex: 3,
mainAxisAlignment: MainAxisAlignment.center, child: Column(
children: <Widget>[ crossAxisAlignment: CrossAxisAlignment.start,
Expanded( children: <Widget>[
child: CircleAvatar( Expanded(
backgroundColor: Colors.black45, child: Text(
radius: 28.0, model.orders[index].firstName +
' ' +
model.orders[index].lastName,
style: TextStyle(fontSize: 18.0),
),
),
Text(
model.orders[index].mobileNumber,
style: TextStyle(
color: Color(0xff30B7B9),
fontWeight: FontWeight.w600,
fontSize: 15.0),
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ',
style: TextStyle(color: Colors.black45),
),
)
],
),
),
Padding(
padding: EdgeInsets.all(10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: CircleAvatar( child: CircleAvatar(
backgroundColor: Colors.white, backgroundColor: Colors.black45,
maxRadius: 25.1, radius: 28.0,
child: Padding( child: CircleAvatar(
padding: const EdgeInsets.all(8.0), backgroundColor: Colors.white,
child: Text( maxRadius: 25.1,
'3 K.m \n away', child: Padding(
style: TextStyle( padding: const EdgeInsets.all(8.0),
color: Color(0xff30B7B9), child: Text(
fontSize: 12.5, '3 K.m \n away',
fontWeight: FontWeight.w600), style: TextStyle(
color: Color(0xff30B7B9),
fontSize: 12.5,
fontWeight: FontWeight.w600),
),
), ),
), ),
), ),
), )
) ],
], ),
), ),
), ],
], ),
), ),
), );
); }),
}), ),
], ],
), ),
), ),

@ -49,9 +49,23 @@ class TranslationBase {
String get english => localizedValues['english'][locale.languageCode]; String get english => localizedValues['english'][locale.languageCode];
String get arabic => localizedValues['arabic'][locale.languageCode]; String get arabic => localizedValues['arabic'][locale.languageCode];
String get enterCredentialsMsg => localizedValues['enterCredentialsMsg'][locale.languageCode]; String get enterCredentialsMsg =>
String get forgotPassword => localizedValues['forgotPassword'][locale.languageCode]; localizedValues['enterCredentialsMsg'][locale.languageCode];
String get forgotPassword =>
localizedValues['forgotPassword'][locale.languageCode];
String get login => localizedValues['login'][locale.languageCode]; String get login => localizedValues['login'][locale.languageCode];
String get haveGreatDay =>
localizedValues['haveGreatDay'][locale.languageCode];
String get youHave => localizedValues['youHave'][locale.languageCode];
String get deliveredPackages =>
localizedValues['deliveredPackages'][locale.languageCode];
String get seeAll => localizedValues['seeAll'][locale.languageCode];
String get nearestDropOffs =>
localizedValues['nearestDropOffs'][locale.languageCode];
String get undeliveredPackages =>
localizedValues['undeliveredPackages'][locale.languageCode];
String get away => localizedValues['away'][locale.languageCode];
String get scan => localizedValues['scan'][locale.languageCode];
} }
class TranslationBaseDelegate extends LocalizationsDelegate<TranslationBase> { class TranslationBaseDelegate extends LocalizationsDelegate<TranslationBase> {

Loading…
Cancel
Save