Merge branch 'development' into 'master'

Development

See merge request Cloud_Solution/driver-app!29
setting_page
Mohammad Aljammal 5 years ago
commit a4b593f9c4

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

@ -129,8 +129,8 @@ class PendingOrdersRes {
class ItemsQuantitiesList {
String itemName;
int productID;
int quantity;
var productID;
var quantity;
ItemsQuantitiesList({this.itemName, this.productID, this.quantity});

@ -6,6 +6,7 @@ import 'package:driverapp/core/service/base_service.dart';
class OrdersService extends BaseService {
List<PendingOrdersRes> _orders = List();
List<PendingOrdersRes> get orders => _orders;
bool isOrderInserted;

@ -1,7 +1,7 @@
import 'package:driverapp/core/enum/viewstate.dart';
import 'package:driverapp/core/model/pending_orders/pending_orders_res_model.dart';
import 'package:driverapp/core/service/orders_service.dart';
import 'package:driverapp/core/model/pending_orders/pending_orders_req_model.dart';
import '../../locator.dart';
import 'base_view_model.dart';

@ -8,8 +8,6 @@ import 'config/size_config.dart';
import 'core/viewModels/project_view_model.dart';
import 'locator.dart';
void main() {
setupLocator();
runApp(MyApp());
@ -44,6 +42,7 @@ class MyApp extends StatelessWidget {
const Locale('en', ''), // English
],
theme: ThemeData(
fontFamily: 'Metropolis',
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
brightness: Brightness.light,
@ -53,12 +52,11 @@ class MyApp extends StatelessWidget {
TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
},
),
scaffoldBackgroundColor:Color.fromRGBO(239, 245, 245, 1) ,
scaffoldBackgroundColor: Color.fromRGBO(239, 245, 245, 1),
hintColor: Colors.grey[400],
disabledColor: Colors.grey[300],
bottomSheetTheme: BottomSheetThemeData(
backgroundColor: Color.fromRGBO(239, 245, 245, 1)
),
backgroundColor: Color.fromRGBO(239, 245, 245, 1)),
errorColor: Color.fromRGBO(235, 80, 60, 1.0),
textSelectionColor: Color.fromRGBO(80, 100, 253, 0.5),
textSelectionHandleColor: Color.fromRGBO(80, 100, 253, 1.0),

@ -42,8 +42,11 @@ class _DashboardScreenState extends State<DashboardScreen> {
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text(
'Have a great day ,',
style: TextStyle(fontSize: 12.5),
'Have a great day,',
style: TextStyle(
fontSize: 14.5,
color: Color(0xff636363),
fontWeight: FontWeight.w300),
),
Padding(
padding: EdgeInsets.only(top: 4.5),
@ -91,8 +94,14 @@ class _DashboardScreenState extends State<DashboardScreen> {
Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Container(
height: MediaQuery.of(context).size.height * 0.15,
width: MediaQuery.of(context).size.width * 0.44,
height: MediaQuery
.of(context)
.size
.height * 0.16,
width: MediaQuery
.of(context)
.size
.width * 0.44,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15.0),
gradient: LinearGradient(
@ -101,57 +110,64 @@ class _DashboardScreenState extends State<DashboardScreen> {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Padding(
padding: EdgeInsets.all(10.0),
Expanded(
child: Padding(
padding: EdgeInsets.all(2.0),
child: Column(
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: <Widget>[
Text(
'You Have',
style: TextStyle(
color: Colors.white, fontSize: 10.0),
),
Text(
'5',
style: TextStyle(
color: Colors.white, fontSize: 25.0),
),
Expanded(
child: Text(
'Undelivered \n Packages',
MainAxisAlignment.spaceEvenly,
children: <Widget>[
Text(
'You Have',
style: TextStyle(
color: Colors.white,
fontSize: 10.0),
),
)
],
Text(
'5',
style: TextStyle(
color: Colors.white,
fontSize: 25.0),
),
Text(
'Undeliverd\nPackages',
style: TextStyle(
color: Colors.white, fontSize: 9.5),
)
],
),
),
),
Expanded(
child: Padding(
padding: EdgeInsets.all(4.0),
Padding(
padding: EdgeInsets.only(right: 9.5),
child: Container(
width: 110,
height: 110,
decoration: BoxDecoration(
color: Colors.white10,
shape: BoxShape.circle),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Padding(
padding: EdgeInsets.only(right: 9.5),
child: Image.asset(
Image.asset(
'assets/images/closed_box.png',
height: MediaQuery.of(context)
.size
.height *
0.09,
width: MediaQuery.of(context)
.size
.width *
height: MediaQuery
.of(context)
.size
.height *
0.10,
width: MediaQuery
.of(context)
.size
.width *
0.20,
//fit: BoxFit.cover,
)),
scale: 0.9,
fit: BoxFit.cover,
),
],
),
),
)
),
],
),
),
@ -159,27 +175,31 @@ class _DashboardScreenState extends State<DashboardScreen> {
],
),
),
Column(
children: <Widget>[
Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Container(
height: MediaQuery.of(context).size.height * 0.15,
width: MediaQuery.of(context).size.width * 0.44,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15.0),
gradient: LinearGradient(
colors: [Color(0xff17AFB8), Color(0xff49C1BC)]),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Expanded(
child: Padding(
padding: EdgeInsets.all(12.0),
Expanded(
child: Column(
children: <Widget>[
Padding(
padding: EdgeInsets.symmetric(horizontal: 10.0),
child: Container(
height: MediaQuery.of(context).size.height * 0.16,
width: MediaQuery
.of(context)
.size
.width * 0.45,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15.0),
gradient: LinearGradient(
colors: [Color(0xff17AFB8), Color(0xff49C1BC)]),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Expanded(
child: Padding(
padding: EdgeInsets.all(2.0),
child: Column(
mainAxisAlignment:
MainAxisAlignment.spaceEvenly,
MainAxisAlignment.spaceEvenly,
children: <Widget>[
Text(
'You Have',
@ -191,40 +211,48 @@ class _DashboardScreenState extends State<DashboardScreen> {
style: TextStyle(
color: Colors.white, fontSize: 25.0),
),
Expanded(
child: Text(
'unWanted\n Packge',
Text(
'Succesful\nDeliveries',
style: TextStyle(
color: Colors.white,
fontSize: 10.0),
),
)
],
)
],
),
),
),
),
Padding(
padding: EdgeInsets.only(right: 9.5),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset(
'assets/images/open_box.png',
height: MediaQuery.of(context).size.height *
0.10,
width: MediaQuery.of(context).size.width *
0.20,
scale: 0.9,
fit: BoxFit.cover,
Padding(
padding: EdgeInsets.only(right: 9.5),
child: Container(
width: 110,
height: 110,
decoration: BoxDecoration(
color: Colors.white10,
shape: BoxShape.circle),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset(
'assets/images/opend_box.png',
height:
MediaQuery.of(context).size.height *
0.10,
width:
MediaQuery.of(context).size.width *
0.20,
scale: 0.9,
fit: BoxFit.cover,
),
],
),
],
),
),
),
],
],
),
),
),
)
],
)
],
),
),
],
),
@ -235,8 +263,14 @@ class _DashboardScreenState extends State<DashboardScreen> {
Expanded(
child: InkWell(
child: Container(
height: MediaQuery.of(context).size.height * 0.16,
width: MediaQuery.of(context).size.width * 0.50,
height: MediaQuery
.of(context)
.size
.height * 0.18,
width: MediaQuery
.of(context)
.size
.width * 0.50,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15.0),
gradient: LinearGradient(colors: [
@ -252,10 +286,16 @@ class _DashboardScreenState extends State<DashboardScreen> {
Image.asset(
'assets/images/qr_code.png',
width:
MediaQuery.of(context).size.width * 0.25,
MediaQuery
.of(context)
.size
.width * 0.26,
height:
MediaQuery.of(context).size.height * 0.14,
fit: BoxFit.cover,
MediaQuery
.of(context)
.size
.height * 0.14,
fit: BoxFit.contain,
)
],
),
@ -270,7 +310,9 @@ class _DashboardScreenState extends State<DashboardScreen> {
child: Text(
'SCAN',
style: TextStyle(
fontSize: 35.0, color: Colors.white),
fontSize: 35.0,
color: Colors.white,
fontWeight: FontWeight.w400),
),
),
Padding(
@ -296,7 +338,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
),
),
Padding(
padding: EdgeInsets.symmetric(horizontal: 12.0, vertical: 1.0),
padding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 1.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
@ -319,19 +361,21 @@ class _DashboardScreenState extends State<DashboardScreen> {
children: <Widget>[
Text(
'See All',
style: TextStyle(fontSize: 14.5),
style: TextStyle(
fontSize: 14.5, color: Color(0xff42B6AD)),
),
Icon(
Icons.arrow_forward_ios,
size: 15.0,
color: Color(0xff42B6AD),
),
],
),
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (context) => OrdersListScreen()),
)),
context,
MaterialPageRoute(
builder: (context) => OrdersListScreen()),
)),
],
),
],
@ -348,7 +392,10 @@ class _DashboardScreenState extends State<DashboardScreen> {
padding: EdgeInsets.symmetric(horizontal: 12.2),
child: InkWell(
child: RoundedContainer(
height: MediaQuery.of(context).size.height * 0.108,
height: MediaQuery
.of(context)
.size
.height * 0.109,
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
@ -358,14 +405,15 @@ class _DashboardScreenState extends State<DashboardScreen> {
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Padding(
padding: EdgeInsets.only(left: 22.0),
padding: EdgeInsets.only(
left: 10.0, bottom: 5.0),
child: Image.asset(
'assets/images/location.png',
height:
MediaQuery.of(context).size.height *
0.10,
0.06,
width: MediaQuery.of(context).size.width *
0.09,
0.05,
),
)
],
@ -396,7 +444,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ,',
'Olaya ST, Behind kfc next to king , ',
style: TextStyle(color: Colors.black45),
),
),
@ -421,8 +469,8 @@ class _DashboardScreenState extends State<DashboardScreen> {
'3 K.m \n away',
style: TextStyle(
color: Color(0xff30B7B9),
fontSize: 12.5,
fontWeight: FontWeight.w600),
fontSize: 10.5,
fontWeight: FontWeight.w400),
),
),
),
@ -445,7 +493,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
);
},
),
)
),
],
),
),

@ -39,9 +39,22 @@ class DeliveryConfirmedPage extends StatelessWidget {
child: Column(
children: <Widget>[
Container(
width: 300,
height: 300,
padding: EdgeInsets.only(top: 60),
width: MediaQuery
.of(context)
.size
.width,
//300,
height: MediaQuery
.of(context)
.size
.width * 0.7,
//300,
padding: EdgeInsets.only(
top: MediaQuery
.of(context)
.size
.width * 0.2, //60,
),
decoration: BoxDecoration(
color: Colors.white10,
shape: BoxShape.circle),
@ -81,12 +94,26 @@ class DeliveryConfirmedPage extends StatelessWidget {
Stack(
children: <Widget>[
Container(
width: 400,
height: 500,
width: MediaQuery
.of(context)
.size
.width, //400,
height: MediaQuery
.of(context)
.size
.width, //500,
),
Container(
width: 800,
height: 440,
width: MediaQuery
.of(context)
.size
.width,
//800,
height: MediaQuery
.of(context)
.size
.width * 1.2,
//440,
margin: EdgeInsets.only(top: 60),
decoration: BoxDecoration(
color: Colors.white,
@ -99,7 +126,12 @@ class DeliveryConfirmedPage extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
margin: EdgeInsets.only(bottom: 50),
margin: EdgeInsets.only(
bottom: MediaQuery
.of(context)
.size
.width * 0.15, //50
),
child: Column(
children: <Widget>[
FlatButton.icon(
@ -107,7 +139,7 @@ class DeliveryConfirmedPage extends StatelessWidget {
color: Colors.orangeAccent,
shape: RoundedRectangleBorder(
borderRadius:
new BorderRadius.circular(10.0),
new BorderRadius.circular(10.0),
),
icon: Icon(
Icons.mode_edit,
@ -122,17 +154,29 @@ class DeliveryConfirmedPage extends StatelessWidget {
onPressed: () {},
),
SizedBox(
height: 20,
height: MediaQuery
.of(context)
.size
.width * 0.1, //20,
),
FlatButton(
color: Color(0xff41bdbb),
padding:
EdgeInsets.only(right: 100, left: 100),
EdgeInsets.only(
right: MediaQuery
.of(context)
.size
.width * 0.25, //100,
left: MediaQuery
.of(context)
.size
.width * 0.25, //100
),
shape: RoundedRectangleBorder(
borderRadius:
new BorderRadius.circular(18.0),
new BorderRadius.circular(18.0),
side:
BorderSide(color: Color(0xff41bdbb)),
BorderSide(color: Color(0xff41bdbb)),
),
child: Text(
TranslationBase
@ -149,10 +193,13 @@ class DeliveryConfirmedPage extends StatelessWidget {
),
),
CustomerBrief(
itemId: item.driverID,
itemId: item.patientID,
customerFirstName: item.firstName,
customerLastName: item.lastName,
mobileNo: item.mobileNumber),
mobileNo: item.mobileNumber,
totalPayment: item.amount,
deliveryTime: item.orderCreatedOn
),
],
),
],

@ -15,224 +15,267 @@ class InformationPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
// return AppScaffold(
// body: Center(
// child: InkWell(onTap: () {},
// child: Texts('Replay Page')),
// ),
// );
return AppScaffold(
body: Container(
color: Color(0xff41bdbb),
child: ListView(
children: <Widget>[
Column(
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
margin: EdgeInsets.only(right: 50),
child: IconButton(
color: Colors.white,
iconSize: 50,
icon: Icon(Icons.arrow_back),
onPressed: () {
Navigator.pop(context);
},
),
),
Container(
child: Text(
TranslationBase
.of(context)
.deliveryInfo,
style: TextStyle(
child: Container(
color: Color(0xff41bdbb),
child: ListView(
children: <Widget>[
Column(
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
margin: EdgeInsets.only(
right: MediaQuery
.of(context)
.size
.width * 0.15, //50
),
child: IconButton(
color: Colors.white,
fontSize: 20,
iconSize: 50,
icon: Icon(Icons.arrow_back),
onPressed: () {
Navigator.pop(context);
},
),
),
),
],
),
Stack(
children: <Widget>[
Container(
width: 400,
height: 500,
),
Container(
width: 800,
height: 700,
margin: EdgeInsets.only(top: 100),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.only(
topLeft: Radius.circular(45),
topRight: Radius.circular(45)),
),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
SizedBox(
height: 170,
),
Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
delivery_info_button(
btnColor: Color(0xfff44336),
btnIcon: Icon(
Icons.near_me,
size: 30,
color: Colors.white,
),
btnName: TranslationBase
.of(context)
.location,
btnFunction: () {},
),
delivery_info_button(
btnColor: Colors.green,
btnIcon: Icon(
Icons.whatshot,
size: 30,
color: Colors.white,
),
btnName: 'Whatsapp',
btnFunction: () {},
),
delivery_info_button(
btnColor: Colors.orangeAccent,
btnIcon: Icon(
Icons.mail_outline,
size: 30,
color: Colors.white,
),
btnName: TranslationBase
.of(context)
.sms,
btnFunction: () {},
),
delivery_info_button(
btnColor: Color(0xff41bdbb),
btnIcon: Icon(
Icons.phone,
size: 30,
color: Colors.white,
),
btnName: TranslationBase
.of(context)
.call,
btnFunction: () {},
),
],
Container(
child: Text(
TranslationBase
.of(context)
.deliveryInfo,
style: TextStyle(
color: Colors.white,
fontSize: 20,
),
SizedBox(
height: 30,
),
Container(
margin: EdgeInsets.only(left: 15, right: 15),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
),
),
],
),
Stack(
children: <Widget>[
Container(
width: MediaQuery
.of(context)
.size
.width, //400,
height: MediaQuery
.of(context)
.size
.width, //500,
),
Container(
width: MediaQuery
.of(context)
.size
.width * 1,
//800,
height: MediaQuery
.of(context)
.size
.width * 1.5,
//700,
margin: EdgeInsets.only(
top: MediaQuery
.of(context)
.size
.width * 0.3, //100
),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.only(
topLeft: Radius.circular(45),
topRight: Radius.circular(45)),
),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
SizedBox(
height: MediaQuery
.of(context)
.size
.width * 0.2, //170,
),
Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
TranslationBase
delivery_info_button(
btnColor: Color(0xfff44336),
btnIcon: Icon(
Icons.near_me,
size: 30,
color: Colors.white,
),
btnName: TranslationBase
.of(context)
.packageContent,
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 20),
),
SizedBox(
height: 20,
),
package_content(
packageName: 'Panadol Extra 50 tablet',
packageCount: '5 box',
),
SizedBox(
height: 10,
.location,
btnFunction: () {},
),
package_content(
packageName: 'Xeractan 20MG 30 Capsules',
packageCount: '1 PCS',
delivery_info_button(
btnColor: Colors.green,
btnIcon: Icon(
Icons.whatshot,
size: 30,
color: Colors.white,
),
btnName: 'Whatsapp',
btnFunction: () {},
),
SizedBox(
height: 10,
),
package_content(
packageName: 'Oltment for Rash unbranded 50 ml',
packageCount: '1 tube',
),
SizedBox(
height: 10,
),
package_content(
packageName: 'Face Mask 50 Pieces',
packageCount: '1 box',
),
SizedBox(
height: 10,
),
package_content(
packageName: 'Panadol Extra 50 tablet',
packageCount: '5 box',
delivery_info_button(
btnColor: Colors.orangeAccent,
btnIcon: Icon(
Icons.mail_outline,
size: 30,
color: Colors.white,
),
btnName: TranslationBase
.of(context)
.sms,
btnFunction: () {},
),
SizedBox(
height: 10,
delivery_info_button(
btnColor: Color(0xff41bdbb),
btnIcon: Icon(
Icons.phone,
size: 30,
color: Colors.white,
),
btnName: TranslationBase
.of(context)
.call,
btnFunction: () {},
),
],
),
),
SizedBox(
height: 30,
),
FlatButton(
color: Color(0xff41bdbb),
padding: EdgeInsets.only(
right: 100, left: 100, bottom: 15, top: 15),
shape: RoundedRectangleBorder(
borderRadius: new BorderRadius.circular(30.0),
side: BorderSide(color: Color(0xff41bdbb)),
SizedBox(
height: MediaQuery
.of(context)
.size
.width * 0.1, //30,
),
Container(
margin: EdgeInsets.only(
left: MediaQuery
.of(context)
.size
.width * 0.05, //15,
right: MediaQuery
.of(context)
.size
.width * 0.02, //15
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text(
TranslationBase
.of(context)
.packageContent,
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 20),
),
SizedBox(
height: MediaQuery
.of(context)
.size
.width * 0.05, //20,
),
Column(
children: List.generate(
item.itemsQuantitiesList.length,
(index) {
return package_content(
packageName: item
.itemsQuantitiesList[index]
.itemName
.toString(),
//'Panadol Extra 50 tablet',
packageCount: item
.itemsQuantitiesList[index]
.quantity
.toString(),
);
}),
),
SizedBox(
height: MediaQuery
.of(context)
.size
.width * 0.01, //10,
),
],
),
),
child: Text(
TranslationBase
SizedBox(
height: MediaQuery
.of(context)
.clientReached,
style: TextStyle(
color: Colors.white,
fontWeight: FontWeight.bold,
fontSize: 16),
.size
.width * 0.1, //30,
),
onPressed: () {
Navigator.push(
context, MaterialPageRoute(
builder: (context) =>
DeliveryConfirmedPage(item)));
},
),
],
FlatButton(
color: Color(0xff41bdbb),
padding: EdgeInsets.only(
right: MediaQuery
.of(context)
.size
.width * 0.3, //100,
left: MediaQuery
.of(context)
.size
.width * 0.3, //100,
bottom: MediaQuery
.of(context)
.size
.width * 0.035, //15,
top: MediaQuery
.of(context)
.size
.width * 0.035, //15
),
shape: RoundedRectangleBorder(
borderRadius: new BorderRadius.circular(30.0),
side: BorderSide(color: Color(0xff41bdbb)),
),
child: Text(
TranslationBase
.of(context)
.clientReached,
style: TextStyle(
color: Colors.white,
fontWeight: FontWeight.bold,
fontSize: 16),
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
DeliveryConfirmedPage(item)));
},
),
],
),
),
),
CustomerBrief(
itemId: item.driverID,
customerFirstName: item.firstName,
customerLastName: item.lastName,
mobileNo: item.mobileNumber
),
],
),
],
),
],
CustomerBrief(
itemId: item.patientID,
customerFirstName: item.firstName,
customerLastName: item.lastName,
mobileNo: item.mobileNumber,
totalPayment: item.amount,
deliveryTime: item.orderCreatedOn),
],
),
],
),
],
),
),
),
);
}
}

@ -4,6 +4,7 @@ import 'package:driverapp/core/viewModels/orders_view_model.dart';
import '../base/base_view.dart';
import 'package:flutter/cupertino.dart';
import 'package:driverapp/widgets/others/rounded_container.dart';
import 'package:driverapp/pages/delivery/information_page.dart';
class OrdersListScreen extends StatefulWidget {
@override
@ -26,28 +27,17 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
),
body: Column(
children: <Widget>[
Center(
child: Text(
'Nearest',
style: TextStyle(
color: Color(0xff30B7B9),
fontSize: 18.0,
fontWeight: FontWeight.w400),
),
),
Expanded(
child: ListView.builder(
itemCount: model.orders == null ? 0 : model.orders.length,
scrollDirection: Axis.vertical,
shrinkWrap: true,
itemBuilder: (BuildContext context, int index) {
return Padding(
padding: EdgeInsets.symmetric(horizontal: 12.2),
shrinkWrap: true,
scrollDirection: Axis.vertical,
itemCount: model.orders == null ? 0 : model.orders.length,
itemBuilder: (BuildContext context, int index) {
return Padding(
padding: EdgeInsets.symmetric(horizontal: 12.2),
child: InkWell(
child: RoundedContainer(
height: MediaQuery.of(context).orientation ==
Orientation.portrait
? MediaQuery.of(context).size.height * 0.107
: MediaQuery.of(context).size.height * 0.18,
height: MediaQuery.of(context).size.height * 0.109,
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
@ -57,14 +47,17 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Padding(
padding: EdgeInsets.only(left: 22.0),
padding: EdgeInsets.only(
left: 10.0, bottom: 5.0),
child: Image.asset(
'assets/images/location.png',
height:
MediaQuery.of(context).size.height *
0.101,
0.06,
width: MediaQuery.of(context).size.width *
0.05,
),
),
)
],
),
),
@ -75,7 +68,7 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Padding(
padding: EdgeInsets.only(top: 10.0),
padding: EdgeInsets.only(top: 5.0),
child: Text(
model.orders[index].firstName +
' ' +
@ -86,16 +79,17 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
Text(
model.orders[index].mobileNumber,
style: TextStyle(
color: Color(0xff30B7B9),
fontWeight: FontWeight.w600,
fontSize: 15.0),
color: Color(0xff30B7B9),
fontWeight: FontWeight.w600,
fontSize: 15.0,
),
),
Expanded(
child: Text(
'Olaya ST, Behind kfc next to king ',
'Olaya ST, Behind kfc next to king ,',
style: TextStyle(color: Colors.black45),
),
)
),
],
),
),
@ -110,15 +104,15 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
radius: 28.0,
child: CircleAvatar(
backgroundColor: Colors.white,
maxRadius: 25.1,
maxRadius: 24.1,
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
'3 K.m \n away',
style: TextStyle(
color: Color(0xff30B7B9),
fontSize: 12.5,
fontWeight: FontWeight.w600),
fontSize: 10.5,
fontWeight: FontWeight.w400),
),
),
),
@ -130,8 +124,17 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
],
),
),
);
}),
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
InformationPage(model.orders[index])));
},
),
);
},
),
),
],
),

@ -119,4 +119,14 @@ class DateUtil {
else
return "";
}
static String convertStringToHours(String date) {
DateTime stringDate = convertStringToDate(date);
DateTime dateTime = DateTime.parse(stringDate.toString());
String hours = dateTime.toString();
hours = hours.substring(10, 16);
return hours;
}
}

@ -1,9 +1,10 @@
import 'package:flutter/material.dart';
import '../../uitl/date_uitl.dart';
import '../../uitl/translations_delegate_base.dart';
class CustomerBrief extends StatelessWidget {
final int itemId;
final String itemId;
final String time;
final String customerFirstName;
final String customerLastName;
@ -11,16 +12,20 @@ class CustomerBrief extends StatelessWidget {
final String direction;
final String totalPayment;
final String deliveryTime;
final double longitude;
final double latitude;
CustomerBrief(
{this.itemId,
this.time,
this.customerFirstName,
this.customerLastName,
this.mobileNo,
this.direction,
this.totalPayment,
this.deliveryTime});
this.time,
this.customerFirstName,
this.customerLastName,
this.mobileNo,
this.direction,
this.totalPayment,
this.deliveryTime,
this.longitude,
this.latitude});
@override
Widget build(BuildContext context) {
@ -111,15 +116,13 @@ class CustomerBrief extends StatelessWidget {
Row(
children: <Widget>[
Text(
TranslationBase
.of(context)
.payment,
TranslationBase.of(context).payment,
),
SizedBox(
width: 170,
),
Text(
'SAR 70',
totalPayment.toString(), //'SAR 70',
style: TextStyle(fontWeight: FontWeight.bold),
),
],
@ -130,14 +133,17 @@ class CustomerBrief extends StatelessWidget {
Row(
children: <Widget>[
Text(
TranslationBase
.of(context)
.delivryTime,
TranslationBase.of(context).delivryTime,
),
SizedBox(
width: 50,
),
Text('05 Aug 20 - 10:00 AM',
Text(
'${DateUtil.getMonthDayYearDateFormatted(
DateUtil.convertStringToDate(
deliveryTime))} ${(DateUtil
.convertStringToHours(deliveryTime))}',
//'05 Aug 20 - 10:00 AM',
style: TextStyle(fontWeight: FontWeight.bold)),
],
)
@ -149,4 +155,4 @@ class CustomerBrief extends StatelessWidget {
),
);
}
}
}

@ -67,6 +67,8 @@ dependencies:
# Qr code Scanner
barcode_scan: ^3.0.1
#mape
map_launcher: ^0.12.0
@ -96,3 +98,9 @@ flutter:
- family: DriverApp
fonts:
- asset: lib/app-icons/fonts/DriverApp.ttf
- family: Metropolis
fonts:
- asset: assets/fonts/Metropolis/Metropolis-Regular.otf
- asset: assets/fonts/Metropolis/Metropolis-Bold.otf
- asset: assets/fonts/Metropolis/Metropolis-Light.otf

Loading…
Cancel
Save