Merge branch 'merge_trans_dash_into_dev' into 'development'

Merge trans dash into dev

See merge request Cloud_Solution/driver-app!16
logut
Elham 6 years ago
commit ecd8c0f2fe

@ -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': 'بعيدا'},
}; };

@ -9,18 +9,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'];
@ -33,6 +36,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() {

@ -1,14 +1,15 @@
import 'package:barcode_scan/platform_wrapper.dart'; import 'package:barcode_scan/platform_wrapper.dart';
import 'package:driverapp/config/size_config.dart';
import 'package:driverapp/core/enum/viewstate.dart'; import 'package:driverapp/core/enum/viewstate.dart';
import 'package:driverapp/core/viewModels/orders_view_model.dart'; import 'package:driverapp/core/viewModels/orders_view_model.dart';
import 'package:driverapp/uitl/app_toast.dart';
import 'package:driverapp/uitl/utils.dart';
import 'package:driverapp/pages/delivery/information_page.dart'; import 'package:driverapp/pages/delivery/information_page.dart';
import 'package:driverapp/pages/orders/pending_orders_page.dart'; import 'package:driverapp/pages/orders/pending_orders_page.dart';
import 'package:driverapp/uitl/app_toast.dart';
import 'package:driverapp/uitl/utils.dart';
import 'package:driverapp/widgets/others/app_scaffold_widget.dart';
import 'package:driverapp/widgets/others/rounded_container.dart'; import 'package:driverapp/widgets/others/rounded_container.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import '../base/base_view.dart'; import '../base/base_view.dart';
class DashboardScreen extends StatefulWidget { class DashboardScreen extends StatefulWidget {
@ -19,12 +20,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<OrdersViewModel>( return BaseView<OrdersViewModel>(
onModelReady: (model) => model.getPendingOrders(), onModelReady: (model) => model.getPendingOrders(),
builder: builder:
(BuildContext context, OrdersViewModel model, Widget child) => (BuildContext context, OrdersViewModel model, Widget child) =>
Scaffold( AppScaffold(
backgroundColor: Color(0xffF4F9FA),
body: Column( body: Column(
// mainAxisAlignment: MainAxisAlignment.center, // mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
@ -337,105 +338,114 @@ 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 InkWell( padding: EdgeInsets.symmetric(horizontal: 12.2),
onTap: () { child: InkWell(
Navigator.push(
context, MaterialPageRoute(builder: (context) =>
InformationPage(model.orders[index])));
},
child: Padding(
padding: EdgeInsets.symmetric(horizontal: 12.2),
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( Expanded(
flex: 1, flex: 1,
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[ children: <Widget>[
Padding( Padding(
padding: EdgeInsets.only(left: 22.0), padding: EdgeInsets.only(left: 22.0),
child: Image.asset( child: Image.asset(
'assets/images/location.png'), 'assets/images/location.png',
) height: MediaQuery.of(context)
.size
.height *
0.10,
width: MediaQuery.of(context)
.size
.width *
0.09,
),
)
], ],
), ),
), ),
if (model.orders.length != 0) if (model.orders.length != 0)
Expanded( Expanded(
flex: 3, flex: 3,
child: Column( child: Column(
crossAxisAlignment: crossAxisAlignment:
CrossAxisAlignment.start, CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Text( Text(
model.orders[index].firstName + model.orders[index].firstName +
' ' + ' ' +
model.orders[index].lastName, model.orders[index].lastName,
style: TextStyle(fontSize: 18.0), style: TextStyle(fontSize: 18.0),
), ),
Text( Text(
model.orders[index].mobileNumber, model.orders[index].mobileNumber,
style: TextStyle( style: TextStyle(
color: Color(0xff30B7B9), color: Color(0xff30B7B9),
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
fontSize: 15.0), fontSize: 15.0),
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ,Olaya ST ',
style: TextStyle(color: Colors.black45),
), ),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ',
style:
TextStyle(color: Colors.black45),
),
)
],
), ),
), ],
Padding( ),
padding: EdgeInsets.all(10.0), ),
child: Column( Padding(
mainAxisAlignment: MainAxisAlignment.center, padding: EdgeInsets.all(10.0),
children: <Widget>[ child: Column(
Expanded( mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Expanded(
child: CircleAvatar(
backgroundColor: Colors.black45,
radius: 28.0,
child: CircleAvatar( child: CircleAvatar(
backgroundColor: Colors.black45, backgroundColor: Colors.white,
radius: 28.0, maxRadius: 25.1,
child: CircleAvatar( child: Padding(
backgroundColor: Colors.white, padding: const EdgeInsets.all(8.0),
maxRadius: 25.1, child: Text(
child: Padding( '3 K.m \n away',
padding: const EdgeInsets.all(8.0), style: TextStyle(
child: Text( color: Color(0xff30B7B9),
'3 K.m \n away', fontSize: 12.5,
style: TextStyle( fontWeight: FontWeight.w600),
color: Color(0xff30B7B9),
fontSize: 12.5,
fontWeight: FontWeight.w600),
),
), ),
), ),
), ),
) ),
], )
), ],
), ),
],
), ),
), ],
), ),
); ),
}) onTap: () {
], Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
InformationPage(model.orders[index])));
},
),
);
},
),
) )
], ],
), ),

@ -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