ES-187: Fix orders List

ES-179
Elham Rababah 5 years ago
parent 451bd8315e
commit af43ec86ae

@ -12,21 +12,23 @@ class PendingOrders {
int distanceInKilometers; int distanceInKilometers;
String longitude; String longitude;
String latitude; String latitude;
int driverAppPageID;
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, this.distanceInKilometers,
this.longitude, this.longitude,
this.latitude, this.latitude,
this.driverAppPageID
}); });
PendingOrders.fromJson(Map<String, dynamic> json) { PendingOrders.fromJson(Map<String, dynamic> json) {
@ -41,6 +43,7 @@ class PendingOrders {
lastName = json['LastName']; lastName = json['LastName'];
mobileNumber = json['MobileNumber']; mobileNumber = json['MobileNumber'];
distanceInKilometers = json['DistanceInKilometers']; distanceInKilometers = json['DistanceInKilometers'];
driverAppPageID = json['DriverAppPageID'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
@ -54,7 +57,7 @@ class PendingOrders {
data['MobileNo'] = this.mobileNo; data['MobileNo'] = this.mobileNo;
data['Longitude'] = this.longitude; data['Longitude'] = this.longitude;
data['Latitude'] = this.latitude; data['Latitude'] = this.latitude;
data['DriverAppPageID'] = this.driverAppPageID;
return data; return data;
} }
} }

@ -21,24 +21,19 @@ class OrdersService extends BaseService {
List<PendingOrdersRes> get nextOrdersList => _nextOrdersList; List<PendingOrdersRes> get nextOrdersList => _nextOrdersList;
bool isOrderInserted; bool isOrderInserted;
bool isOrderStatusUpdated; bool isOrderStatusUpdated;
bool isGetPendingOrdersServices = false;
bool isGetDeliveredOrdersServices = false;
int listCountDelivered; int listCountDelivered;
int listCountUnDelivered; int listCountUnDelivered;
Future getPendingOrders() async { Future getPendingOrders(int driverAppPageID) async {
LocationData loc = await Utils.getLocation(); LocationData loc = await Utils.getLocation();
if (user != null) {
isGetPendingOrdersServices = true;
}
if (loc != null) { if (loc != null) {
PendingOrders _requestGetPendingOrders = PendingOrders( PendingOrders _requestGetPendingOrders = PendingOrders(
searchKey: "", searchKey: "",
pageSize: 0, pageSize: 0,
pageIndex: 0, pageIndex: 0,
latitude: loc.latitude.toString(), latitude: loc.latitude.toString(),
longitude: loc.longitude.toString(), longitude: loc.longitude.toString(),
); driverAppPageID: driverAppPageID);
hasError = false; hasError = false;
try { try {
await baseAppClient.post(GET_ALL_ORDERS, await baseAppClient.post(GET_ALL_ORDERS,
@ -107,8 +102,10 @@ class OrdersService extends BaseService {
onSuccess: (dynamic response, int statusCode) { onSuccess: (dynamic response, int statusCode) {
isOrderStatusUpdated = isOrderStatusUpdated =
response["PatientER_Delivery_IsOrderUpdated"]; response["PatientER_Delivery_IsOrderUpdated"];
listCountUnDelivered --; if (updateOrderStatusRequestModel.deliveryOrderStatus == 4) {
listCountDelivered ++; listCountUnDelivered --;
listCountDelivered ++;
}
}, onFailure: (String error, int statusCode) { }, onFailure: (String error, int statusCode) {
hasError = true; hasError = true;
super.error = error; super.error = error;
@ -147,10 +144,8 @@ class OrdersService extends BaseService {
pageIndex: 0, pageIndex: 0,
latitude: loc.latitude.toString(), latitude: loc.latitude.toString(),
longitude: loc.longitude.toString(), longitude: loc.longitude.toString(),
driverAppPageID: 0
); );
if (user != null) {
isGetDeliveredOrdersServices = true;
}
if (loc != null) { if (loc != null) {
hasError = false; hasError = false;
try { try {

@ -24,9 +24,9 @@ class OrdersViewModel extends BaseViewModel {
int get listCountUnDelivered => _ordersService.listCountUnDelivered; int get listCountUnDelivered => _ordersService.listCountUnDelivered;
Future getPendingOrders() async { Future getPendingOrders(int driverAppPageID) async {
setState(ViewState.Busy); setState(ViewState.Busy);
await _ordersService.getPendingOrders(); await _ordersService.getPendingOrders(driverAppPageID);
if (_ordersService.hasError) { if (_ordersService.hasError) {
error = _ordersService.error; error = _ordersService.error;
setState(ViewState.Error); setState(ViewState.Error);

@ -54,8 +54,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
int orderId; int orderId;
return BaseView<OrdersViewModel>( return BaseView<OrdersViewModel>(
onModelReady: (model) async { onModelReady: (model) async {
await model.getPendingOrders(); await model.getPendingOrders(1);
}, },
builder: (BuildContext context, OrdersViewModel model, Widget child) => builder: (BuildContext context, OrdersViewModel model, Widget child) =>
AppScaffold( AppScaffold(
@ -575,7 +574,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
Utils.showErrorToast(model.error); Utils.showErrorToast(model.error);
} else { } else {
/// we call the service again in order to get them oreder /// we call the service again in order to get them oreder
await model.getPendingOrders(); await model.getPendingOrders(1);
AppToast.showSuccessToast(message: "Order Added"); AppToast.showSuccessToast(message: "Order Added");
} }
} on PlatformException { } on PlatformException {

@ -23,6 +23,7 @@ class _DeliverdOrdersPageState extends State<DeliverdOrdersPage> {
isShowAppBar: true, isShowAppBar: true,
appBarTitle: 'Delivered List', appBarTitle: 'Delivered List',
baseViewModel: model, baseViewModel: model,
isShowBackIcon: true,
titleColor: Colors.black, titleColor: Colors.black,
body: Column( body: Column(
children: <Widget>[ children: <Widget>[

@ -18,11 +18,12 @@ class _OrdersListScreenState extends State<OrdersListScreen> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return BaseView<OrdersViewModel>( return BaseView<OrdersViewModel>(
onModelReady: (model) => model.getPendingOrders(), onModelReady: (model) => model.getPendingOrders(2),
builder: (BuildContext context, OrdersViewModel model, Widget child) => builder: (BuildContext context, OrdersViewModel model, Widget child) =>
AppScaffold( AppScaffold(
baseViewModel: model, baseViewModel: model,
isShowAppBar: true, isShowAppBar: true,
isShowBackIcon: true,
appBarTitle: TranslationBase.of(context).yourDeliveryQue, appBarTitle: TranslationBase.of(context).yourDeliveryQue,
titleColor: Colors.black, titleColor: Colors.black,
body: Column( body: Column(

@ -7,6 +7,7 @@ import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:gradient_app_bar/gradient_app_bar.dart'; import 'package:gradient_app_bar/gradient_app_bar.dart';
import 'arrow_back.dart';
import 'network_base_view.dart'; import 'network_base_view.dart';
class AppScaffold extends StatelessWidget { class AppScaffold extends StatelessWidget {
@ -21,6 +22,7 @@ class AppScaffold extends StatelessWidget {
final Color appBarColor; final Color appBarColor;
final bool isAppBarGradient; final bool isAppBarGradient;
final bool isShowHomeIcon; final bool isShowHomeIcon;
final bool isShowBackIcon;
AppScaffold( AppScaffold(
{@required this.body, {@required this.body,
@ -33,7 +35,8 @@ class AppScaffold extends StatelessWidget {
this.arrowColor, this.arrowColor,
this.appBarColor, this.appBarColor,
this.isAppBarGradient = false, this.isAppBarGradient = false,
this.isShowHomeIcon = false}); this.isShowHomeIcon = false,
this.isShowBackIcon = false});
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -61,13 +64,13 @@ class AppScaffold extends StatelessWidget {
title: Text(Utils.formatStringToPascalCase(appBarTitle)), title: Text(Utils.formatStringToPascalCase(appBarTitle)),
automaticallyImplyLeading: false, automaticallyImplyLeading: false,
// leading: Builder( leading: isShowBackIcon ? Builder(
// builder: (BuildContext context) { builder: (BuildContext context) {
// return ArrowBack( return ArrowBack(
// arrowColor: arrowColor, arrowColor: arrowColor,
// ); );
// }, },
// ), ) : null,
centerTitle: true, centerTitle: true,
actions: <Widget>[ actions: <Widget>[
if (isShowHomeIcon) if (isShowHomeIcon)
@ -90,6 +93,13 @@ class AppScaffold extends StatelessWidget {
), ),
automaticallyImplyLeading: false, automaticallyImplyLeading: false,
centerTitle: true, centerTitle: true,
leading: isShowBackIcon ? Builder(
builder: (BuildContext context) {
return ArrowBack(
arrowColor: arrowColor,
);
},
) : null,
actions: <Widget>[ actions: <Widget>[
if (isShowHomeIcon) if (isShowHomeIcon)
IconButton( IconButton(

Loading…
Cancel
Save