diff --git a/lib/core/model/orders/pending_orders_req_model.dart b/lib/core/model/orders/pending_orders_req_model.dart index 3db7263..5bc368f 100644 --- a/lib/core/model/orders/pending_orders_req_model.dart +++ b/lib/core/model/orders/pending_orders_req_model.dart @@ -12,21 +12,23 @@ class PendingOrders { int distanceInKilometers; String longitude; String latitude; + int driverAppPageID; - PendingOrders({ - this.driverID, - this.searchKey, - this.pageSize, - this.pageIndex, - this.tokenID, - this.userID, - this.mobileNo, - this.firstName, - this.lastName, + PendingOrders( + {this.driverID, + this.searchKey, + this.pageSize, + this.pageIndex, + this.tokenID, + this.userID, + this.mobileNo, + this.firstName, + this.lastName, this.mobileNumber, this.distanceInKilometers, this.longitude, this.latitude, + this.driverAppPageID }); PendingOrders.fromJson(Map json) { @@ -41,6 +43,7 @@ class PendingOrders { lastName = json['LastName']; mobileNumber = json['MobileNumber']; distanceInKilometers = json['DistanceInKilometers']; + driverAppPageID = json['DriverAppPageID']; } Map toJson() { @@ -54,7 +57,7 @@ class PendingOrders { data['MobileNo'] = this.mobileNo; data['Longitude'] = this.longitude; data['Latitude'] = this.latitude; - + data['DriverAppPageID'] = this.driverAppPageID; return data; } } diff --git a/lib/core/service/orders_service.dart b/lib/core/service/orders_service.dart index 82eaf2d..e95096b 100644 --- a/lib/core/service/orders_service.dart +++ b/lib/core/service/orders_service.dart @@ -21,24 +21,19 @@ class OrdersService extends BaseService { List get nextOrdersList => _nextOrdersList; bool isOrderInserted; bool isOrderStatusUpdated; - bool isGetPendingOrdersServices = false; - bool isGetDeliveredOrdersServices = false; int listCountDelivered; int listCountUnDelivered; - Future getPendingOrders() async { + Future getPendingOrders(int driverAppPageID) async { LocationData loc = await Utils.getLocation(); - if (user != null) { - isGetPendingOrdersServices = true; - } if (loc != null) { PendingOrders _requestGetPendingOrders = PendingOrders( - searchKey: "", - pageSize: 0, - pageIndex: 0, - latitude: loc.latitude.toString(), - longitude: loc.longitude.toString(), - ); + searchKey: "", + pageSize: 0, + pageIndex: 0, + latitude: loc.latitude.toString(), + longitude: loc.longitude.toString(), + driverAppPageID: driverAppPageID); hasError = false; try { await baseAppClient.post(GET_ALL_ORDERS, @@ -107,8 +102,10 @@ class OrdersService extends BaseService { onSuccess: (dynamic response, int statusCode) { isOrderStatusUpdated = response["PatientER_Delivery_IsOrderUpdated"]; - listCountUnDelivered --; - listCountDelivered ++; + if (updateOrderStatusRequestModel.deliveryOrderStatus == 4) { + listCountUnDelivered --; + listCountDelivered ++; + } }, onFailure: (String error, int statusCode) { hasError = true; super.error = error; @@ -147,10 +144,8 @@ class OrdersService extends BaseService { pageIndex: 0, latitude: loc.latitude.toString(), longitude: loc.longitude.toString(), + driverAppPageID: 0 ); - if (user != null) { - isGetDeliveredOrdersServices = true; - } if (loc != null) { hasError = false; try { diff --git a/lib/core/viewModels/orders_view_model.dart b/lib/core/viewModels/orders_view_model.dart index f996232..e584374 100644 --- a/lib/core/viewModels/orders_view_model.dart +++ b/lib/core/viewModels/orders_view_model.dart @@ -24,9 +24,9 @@ class OrdersViewModel extends BaseViewModel { int get listCountUnDelivered => _ordersService.listCountUnDelivered; - Future getPendingOrders() async { + Future getPendingOrders(int driverAppPageID) async { setState(ViewState.Busy); - await _ordersService.getPendingOrders(); + await _ordersService.getPendingOrders(driverAppPageID); if (_ordersService.hasError) { error = _ordersService.error; setState(ViewState.Error); diff --git a/lib/pages/dashboard/dashboard_screen.dart b/lib/pages/dashboard/dashboard_screen.dart index 0aa004f..1739ea5 100644 --- a/lib/pages/dashboard/dashboard_screen.dart +++ b/lib/pages/dashboard/dashboard_screen.dart @@ -54,8 +54,7 @@ class _DashboardScreenState extends State { int orderId; return BaseView( onModelReady: (model) async { - await model.getPendingOrders(); - + await model.getPendingOrders(1); }, builder: (BuildContext context, OrdersViewModel model, Widget child) => AppScaffold( @@ -575,7 +574,7 @@ class _DashboardScreenState extends State { Utils.showErrorToast(model.error); } else { /// we call the service again in order to get them oreder - await model.getPendingOrders(); + await model.getPendingOrders(1); AppToast.showSuccessToast(message: "Order Added"); } } on PlatformException { diff --git a/lib/pages/orders/deliverd_orders_page.dart b/lib/pages/orders/deliverd_orders_page.dart index 9b44e61..e8e026d 100644 --- a/lib/pages/orders/deliverd_orders_page.dart +++ b/lib/pages/orders/deliverd_orders_page.dart @@ -23,6 +23,7 @@ class _DeliverdOrdersPageState extends State { isShowAppBar: true, appBarTitle: 'Delivered List', baseViewModel: model, + isShowBackIcon: true, titleColor: Colors.black, body: Column( children: [ diff --git a/lib/pages/orders/pending_orders_page.dart b/lib/pages/orders/pending_orders_page.dart index 186697f..8028692 100644 --- a/lib/pages/orders/pending_orders_page.dart +++ b/lib/pages/orders/pending_orders_page.dart @@ -18,11 +18,12 @@ class _OrdersListScreenState extends State { @override Widget build(BuildContext context) { return BaseView( - onModelReady: (model) => model.getPendingOrders(), + onModelReady: (model) => model.getPendingOrders(2), builder: (BuildContext context, OrdersViewModel model, Widget child) => AppScaffold( baseViewModel: model, isShowAppBar: true, + isShowBackIcon: true, appBarTitle: TranslationBase.of(context).yourDeliveryQue, titleColor: Colors.black, body: Column( diff --git a/lib/widgets/others/app_scaffold_widget.dart b/lib/widgets/others/app_scaffold_widget.dart index 7f5d389..ebc4861 100644 --- a/lib/widgets/others/app_scaffold_widget.dart +++ b/lib/widgets/others/app_scaffold_widget.dart @@ -7,6 +7,7 @@ import 'package:flutter/material.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:gradient_app_bar/gradient_app_bar.dart'; +import 'arrow_back.dart'; import 'network_base_view.dart'; class AppScaffold extends StatelessWidget { @@ -21,6 +22,7 @@ class AppScaffold extends StatelessWidget { final Color appBarColor; final bool isAppBarGradient; final bool isShowHomeIcon; + final bool isShowBackIcon; AppScaffold( {@required this.body, @@ -33,7 +35,8 @@ class AppScaffold extends StatelessWidget { this.arrowColor, this.appBarColor, this.isAppBarGradient = false, - this.isShowHomeIcon = false}); + this.isShowHomeIcon = false, + this.isShowBackIcon = false}); @override Widget build(BuildContext context) { @@ -61,13 +64,13 @@ class AppScaffold extends StatelessWidget { title: Text(Utils.formatStringToPascalCase(appBarTitle)), automaticallyImplyLeading: false, - // leading: Builder( - // builder: (BuildContext context) { - // return ArrowBack( - // arrowColor: arrowColor, - // ); - // }, - // ), + leading: isShowBackIcon ? Builder( + builder: (BuildContext context) { + return ArrowBack( + arrowColor: arrowColor, + ); + }, + ) : null, centerTitle: true, actions: [ if (isShowHomeIcon) @@ -90,6 +93,13 @@ class AppScaffold extends StatelessWidget { ), automaticallyImplyLeading: false, centerTitle: true, + leading: isShowBackIcon ? Builder( + builder: (BuildContext context) { + return ArrowBack( + arrowColor: arrowColor, + ); + }, + ) : null, actions: [ if (isShowHomeIcon) IconButton(