This commit is contained in:
Hamza-Ayed
2024-02-07 21:21:32 +03:00
parent 42c7463181
commit 57d0560a8c
13 changed files with 339 additions and 55 deletions

View File

@@ -220,9 +220,11 @@ class MapPassengerController extends GetxController {
clearPolyline();
isMarkersShown = false;
isWayPointStopsSheetUtilGetMap = false;
isWayPointSheet = false;
durationToRide = 0;
distanceOfDestnation = 0;
wayPointSheetHeight = 0;
remainingTime = 25;
haveSteps = true;
// Filter out empty value
@@ -447,7 +449,7 @@ class MapPassengerController extends GetxController {
String stringRemainingTimeToPassenger = '';
void startTimerToPassengerFromDriverAfterApplied() async {
void startTimerFromDriverToPassengerAfterApplied() async {
for (int i = 0; i <= timeToPassengerFromDriverAfterApplied; i++) {
await Future.delayed(const Duration(seconds: 1));
progressTimerToPassengerFromDriverAfterApplied =
@@ -466,6 +468,16 @@ class MapPassengerController extends GetxController {
int seconds = remainingTimeToPassengerFromDriverAfterApplied % 60;
stringRemainingTimeToPassenger =
'$minutes:${seconds.toString().padLeft(2, '0')}';
// var cameraUpdate = CameraUpdate.newLatLngZoom(
// driverLocationToPassenger,
// 17,
// );
// mapController!.animateCamera(cameraUpdate);
// print(driverCarsLocationToPassengerAfterApplied);
// print(driverCarsLocationToPassengerAfterApplied[0]);
update();
}
}
@@ -531,10 +543,38 @@ class MapPassengerController extends GetxController {
timeToPassengerFromDriverAfterApplied = 0;
remainingTime = 0;
remainingTimeToPassengerFromDriverAfterApplied = 0;
rideTimerBegin = true;
update();
// isCancelRidePageShown = true;
rideIsBeginPassengerTimer();
// //print('rideTimerBegin: $rideTimerBegin');
rideTimerBegin = true;
}
} catch (e) {
//print('Error: $e');
// Handle the error or perform any necessary actions
}
}
void getRideStatusFromStartApp() async {
try {
var res = await CRUD().get(
link: AppLink.getRideStatusFromStartApp,
payload: {'passenger_id': box.read(BoxName.passengerID)});
if (res == 'failure') {
//print(res);
}
var decode = jsonDecode(res);
if (decode['data']['status'] == 'Begin') {
getMap(
decode['data']['start_location'], decode['data']['end_location']);
// timeToPassengerFromDriverAfterApplied = 0;
// remainingTime = 0;
// remainingTimeToPassengerFromDriverAfterApplied = 0;
// // isCancelRidePageShown = true;
// rideIsBeginPassengerTimer();
// // //print('rideTimerBegin: $rideTimerBegin');
// rideTimerBegin = true;
update();
}
} catch (e) {
@@ -610,6 +650,8 @@ class MapPassengerController extends GetxController {
late String model;
late String licensePlate;
changeConfirmRide() async {
await getCarsLocationByPassenger();
if (dataCarsLocationByPassenger != 'failure') {
driverToken =
dataCarsLocationByPassenger['message'][carsOrder]['token'].toString();
@@ -633,7 +675,6 @@ class MapPassengerController extends GetxController {
update();
// //print('rideConfirm= $rideConfirm');
await getCarsLocationByPassenger();
await CRUD().post(link: AppLink.addRides, payload: {
"start_location": //'${data[0]['start_address']}',
'${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
@@ -772,7 +813,7 @@ class MapPassengerController extends GetxController {
// //print('timeToPassengerFromDriverAfterApplied====' +
// timeToPassengerFromDriverAfterApplied.toString());
startTimerToPassengerFromDriverAfterApplied();
startTimerFromDriverToPassengerAfterApplied();
update();
}
update();
@@ -839,23 +880,25 @@ class MapPassengerController extends GetxController {
}
}
late LatLng driverLocationToPassenger = LatLng(32, 35);
Future getDriverCarsLocationToPassengerAfterApplied() async {
driverCarsLocationToPassengerAfterApplied = [];
var res = await CRUD().get(
link: AppLink.getDriverCarsLocationToPassengerAfterApplied,
payload: {
'driver_id': dataCarsLocationByPassenger['message'][carsOrder]
['driver_id']
});
payload: {'driver_id': driverId});
datadriverCarsLocationToPassengerAfterApplied = jsonDecode(res);
driverLocationToPassenger = LatLng(
double.parse(datadriverCarsLocationToPassengerAfterApplied['message'][0]
['latitude']),
double.parse(datadriverCarsLocationToPassengerAfterApplied['message'][0]
['longitude']));
driverCarsLocationToPassengerAfterApplied.add(LatLng(
double.parse(datadriverCarsLocationToPassengerAfterApplied['message']
[carsOrder]['latitude']),
double.parse(datadriverCarsLocationToPassengerAfterApplied['message']
[carsOrder]['longitude'])));
double.parse(datadriverCarsLocationToPassengerAfterApplied['message'][0]
['latitude']),
double.parse(datadriverCarsLocationToPassengerAfterApplied['message'][0]
['longitude'])));
update();
}
@@ -939,7 +982,7 @@ class MapPassengerController extends GetxController {
// clearPolylineAll();
data = [];
changeCancelRidePageShow();
if (rideId != '') {
if (rideId != 'yet') {
await CRUD().post(link: AppLink.updateDriverOrder, payload: {
"order_id": rideId.toString(), // Convert to String
"status": 'Cancel'
@@ -957,6 +1000,7 @@ class MapPassengerController extends GetxController {
// totalStepDurations = 0;
timeToPassengerFromDriverAfterApplied = 0;
remainingTime = 0;
isWayPointStopsSheetUtilGetMap = false;
update();
} else {
clearPlacesDestination();
@@ -969,6 +1013,7 @@ class MapPassengerController extends GetxController {
FirebaseMessagesController().sendNotificationToDriverMAP(
'Cancel Trip', 'Trip Cancelled'.tr, driverToken, []);
isPickerShown = false;
isWayPointStopsSheetUtilGetMap = false;
rideConfirm = false;
shouldFetch = false;
isCashConfirmPageShown = false;
@@ -1008,7 +1053,7 @@ class MapPassengerController extends GetxController {
} else {
isMainBottomMenuMap = !isMainBottomMenuMap;
mainBottomMenuMapHeight =
isMainBottomMenuMap == true ? Get.height * .2 : Get.height * .5;
isMainBottomMenuMap == true ? Get.height * .2 : Get.height * .6;
isWayPointSheet = false;
if (heightMenuBool == true) {
getDrawerMenu();
@@ -1021,10 +1066,13 @@ class MapPassengerController extends GetxController {
void downPoints() {
if (Get.find<WayPointController>().wayPoints.length < 2) {
isWayPointStopsSheetUtilGetMap = false;
changeWayPointStopsSheet();
isWayPointSheet = false;
wayPointSheetHeight = isWayPointStopsSheet ? Get.height * .45 : 0;
// changeWayPointStopsSheet();
update();
}
changeWayPointStopsSheet();
// changeWayPointStopsSheet();
// isWayPointSheet = false;
update();
}
@@ -1475,6 +1523,7 @@ class MapPassengerController extends GetxController {
late LatLngBounds boundsData;
getMap(String origin, destination) async {
remainingTime = 25; //to make cancel every call
await getCarsLocationByPassenger();
// //print(carsLocationByPassenger);
var coordDestination = destination.split(',');
@@ -1694,7 +1743,7 @@ class MapPassengerController extends GetxController {
print('boundsbounds');
// Fit the camera to the bounds
var cameraUpdate = CameraUpdate.newLatLngBounds(bounds, 160);
var cameraUpdate = CameraUpdate.newLatLngBounds(bounds, 180);
mapController!.animateCamera(cameraUpdate);
update();
}