8/31/1
This commit is contained in:
@@ -1016,11 +1016,11 @@ class MapPassengerController extends GetxController {
|
||||
late String make = '';
|
||||
late String licensePlate = '';
|
||||
confirmRideForFirstDriver() async {
|
||||
// startCarLocationSearch(box.read(BoxName.carType));
|
||||
await getCarsLocationByPassengerAndReloadMarker(
|
||||
box.read(BoxName.carType), 7000);
|
||||
startCarLocationSearch(box.read(BoxName.carType));
|
||||
// await getCarsLocationByPassengerAndReloadMarker(
|
||||
// box.read(BoxName.carType), 7000);
|
||||
await getNearestDriverByPassengerLocationAPIGOOGLE();
|
||||
|
||||
Log.print('dataCarsLocationByPassenger: ${dataCarsLocationByPassenger}');
|
||||
if (dataCarsLocationByPassenger != 'failure' ||
|
||||
dataCarsLocationByPassenger != null) {
|
||||
driverToken =
|
||||
@@ -1132,50 +1132,50 @@ class MapPassengerController extends GetxController {
|
||||
Log.print(
|
||||
'body: ${dataCarsLocationByPassenger['message'][carsOrder]['token']}');
|
||||
});
|
||||
CRUD().post(
|
||||
link: '${AppLink.seferAlexandriaServer}/ride/rides/add.php',
|
||||
payload: {
|
||||
"start_location": //'${data[0]['start_address']}',
|
||||
'${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
|
||||
"end_location": //'${data[0]['end_address']}',
|
||||
'${data[0]["end_location"]['lat']},${data[0]["end_location"]['lng']}',
|
||||
"date": DateTime.now().toString(),
|
||||
"time": DateTime.now().toString(),
|
||||
"endtime": durationToAdd.toString(),
|
||||
"price": totalPassenger.toStringAsFixed(2),
|
||||
"passenger_id": box.read(BoxName.passengerID).toString(),
|
||||
"driver_id": dataCarsLocationByPassenger['message'][carsOrder]
|
||||
['driver_id']
|
||||
.toString(),
|
||||
"status": "waiting",
|
||||
'carType': box.read(BoxName.carType),
|
||||
"price_for_driver": totalPassenger.toString(),
|
||||
"price_for_passenger": totalME.toString(),
|
||||
"distance": distance.toString(),
|
||||
"paymentMethod": paymentController.isWalletChecked.toString(),
|
||||
});
|
||||
CRUD().post(
|
||||
link: '${AppLink.seferGizaServer}/ride/rides/add.php',
|
||||
payload: {
|
||||
"start_location": //'${data[0]['start_address']}',
|
||||
'${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
|
||||
"end_location": //'${data[0]['end_address']}',
|
||||
'${data[0]["end_location"]['lat']},${data[0]["end_location"]['lng']}',
|
||||
"date": DateTime.now().toString(),
|
||||
"time": DateTime.now().toString(),
|
||||
"endtime": durationToAdd.toString(),
|
||||
"price": totalPassenger.toStringAsFixed(2),
|
||||
"passenger_id": box.read(BoxName.passengerID).toString(),
|
||||
"driver_id": dataCarsLocationByPassenger['message'][carsOrder]
|
||||
['driver_id']
|
||||
.toString(),
|
||||
"status": "waiting",
|
||||
'carType': box.read(BoxName.carType),
|
||||
"price_for_driver": totalPassenger.toString(),
|
||||
"price_for_passenger": totalME.toString(),
|
||||
"distance": distance.toString(),
|
||||
"paymentMethod": paymentController.isWalletChecked.toString(),
|
||||
});
|
||||
// CRUD().post(
|
||||
// link: '${AppLink.seferAlexandriaServer}/ride/rides/add.php',
|
||||
// payload: {
|
||||
// "start_location": //'${data[0]['start_address']}',
|
||||
// '${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
|
||||
// "end_location": //'${data[0]['end_address']}',
|
||||
// '${data[0]["end_location"]['lat']},${data[0]["end_location"]['lng']}',
|
||||
// "date": DateTime.now().toString(),
|
||||
// "time": DateTime.now().toString(),
|
||||
// "endtime": durationToAdd.toString(),
|
||||
// "price": totalPassenger.toStringAsFixed(2),
|
||||
// "passenger_id": box.read(BoxName.passengerID).toString(),
|
||||
// "driver_id": dataCarsLocationByPassenger['message'][carsOrder]
|
||||
// ['driver_id']
|
||||
// .toString(),
|
||||
// "status": "waiting",
|
||||
// 'carType': box.read(BoxName.carType),
|
||||
// "price_for_driver": totalPassenger.toString(),
|
||||
// "price_for_passenger": totalME.toString(),
|
||||
// "distance": distance.toString(),
|
||||
// "paymentMethod": paymentController.isWalletChecked.toString(),
|
||||
// });
|
||||
// CRUD().post(
|
||||
// link: '${AppLink.seferGizaServer}/ride/rides/add.php',
|
||||
// payload: {
|
||||
// "start_location": //'${data[0]['start_address']}',
|
||||
// '${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
|
||||
// "end_location": //'${data[0]['end_address']}',
|
||||
// '${data[0]["end_location"]['lat']},${data[0]["end_location"]['lng']}',
|
||||
// "date": DateTime.now().toString(),
|
||||
// "time": DateTime.now().toString(),
|
||||
// "endtime": durationToAdd.toString(),
|
||||
// "price": totalPassenger.toStringAsFixed(2),
|
||||
// "passenger_id": box.read(BoxName.passengerID).toString(),
|
||||
// "driver_id": dataCarsLocationByPassenger['message'][carsOrder]
|
||||
// ['driver_id']
|
||||
// .toString(),
|
||||
// "status": "waiting",
|
||||
// 'carType': box.read(BoxName.carType),
|
||||
// "price_for_driver": totalPassenger.toString(),
|
||||
// "price_for_passenger": totalME.toString(),
|
||||
// "distance": distance.toString(),
|
||||
// "paymentMethod": paymentController.isWalletChecked.toString(),
|
||||
// });
|
||||
|
||||
delayAndFetchRideStatus(rideId);
|
||||
if (shouldFetch == false) {
|
||||
@@ -1202,67 +1202,79 @@ class MapPassengerController extends GetxController {
|
||||
|
||||
bool isDriversTokensSend = false;
|
||||
confirmRideForAllDriverAvailable() async {
|
||||
driversToken.remove(driverToken);
|
||||
PaymentController paymentController = Get.find<PaymentController>();
|
||||
rideConfirm = true;
|
||||
shouldFetch = true;
|
||||
isBottomSheetShown = false;
|
||||
timeToPassengerFromDriverAfterApplied = 60;
|
||||
await getCarsLocationByPassengerAndReloadMarker(
|
||||
box.read(BoxName.carType), 7000);
|
||||
if (dataCarsLocationByPassenger != 'failure') {
|
||||
driversToken.remove(driverToken);
|
||||
PaymentController paymentController = Get.find<PaymentController>();
|
||||
rideConfirm = true;
|
||||
shouldFetch = true;
|
||||
isBottomSheetShown = false;
|
||||
timeToPassengerFromDriverAfterApplied = 60;
|
||||
|
||||
List<String> body = [
|
||||
'${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
|
||||
'${data[0]["end_location"]['lat']},${data[0]["end_location"]['lng']}',
|
||||
totalPassenger.toStringAsFixed(2),
|
||||
totalDriver.toStringAsFixed(2),
|
||||
durationToRide.toString(),
|
||||
distance.toStringAsFixed(2),
|
||||
dataCarsLocationByPassenger['message'][carsOrder]['driver_id'].toString(),
|
||||
box.read(BoxName.passengerID).toString(),
|
||||
box.read(BoxName.name).toString(),
|
||||
box.read(BoxName.tokenFCM).toString(),
|
||||
box.read(BoxName.phone).toString(),
|
||||
durationByPassenger.toString(),
|
||||
distanceByPassenger.toString(),
|
||||
paymentController.isWalletChecked.toString(),
|
||||
dataCarsLocationByPassenger['message'][carsOrder]['token'].toString(),
|
||||
durationToPassenger.toString(),
|
||||
rideId,
|
||||
rideTimerBegin.toString(),
|
||||
dataCarsLocationByPassenger['message'][carsOrder]['driver_id'].toString(),
|
||||
durationToRide.toString(),
|
||||
Get.find<WayPointController>().wayPoints.length > 1
|
||||
? 'haveSteps'
|
||||
: 'startEnd',
|
||||
placesCoordinate[0],
|
||||
placesCoordinate[1],
|
||||
placesCoordinate[2],
|
||||
placesCoordinate[3],
|
||||
placesCoordinate[4],
|
||||
costForDriver.toStringAsFixed(2),
|
||||
double.parse(box.read(BoxName.passengerWalletTotal)) < 0
|
||||
? double.parse(box.read(BoxName.passengerWalletTotal))
|
||||
.toStringAsFixed(2)
|
||||
: '0',
|
||||
box.read(BoxName.email).toString(),
|
||||
startNameAddress,
|
||||
endNameAddress,
|
||||
box.read(BoxName.carType),
|
||||
kazan.toStringAsFixed(0),
|
||||
passengerRate.toStringAsFixed(2),
|
||||
];
|
||||
Log.print('body: ${body}');
|
||||
for (var i = 1; i < driversToken.length; i++) {
|
||||
FirebaseMessagesController().sendNotificationToDriverMapPolyline(
|
||||
'OrderSpeed',
|
||||
rideId.toString(),
|
||||
driversToken[i],
|
||||
body,
|
||||
polylineCoordinates.toString());
|
||||
List<String> body = [
|
||||
'${data[0]["start_location"]['lat']},${data[0]["start_location"]['lng']}',
|
||||
'${data[0]["end_location"]['lat']},${data[0]["end_location"]['lng']}',
|
||||
totalPassenger.toStringAsFixed(2),
|
||||
totalDriver.toStringAsFixed(2),
|
||||
durationToRide.toString(),
|
||||
distance.toStringAsFixed(2),
|
||||
dataCarsLocationByPassenger['message'][carsOrder]['driver_id']
|
||||
.toString(),
|
||||
box.read(BoxName.passengerID).toString(),
|
||||
box.read(BoxName.name).toString(),
|
||||
box.read(BoxName.tokenFCM).toString(),
|
||||
box.read(BoxName.phone).toString(),
|
||||
durationByPassenger.toString(),
|
||||
distanceByPassenger.toString(),
|
||||
paymentController.isWalletChecked.toString(),
|
||||
dataCarsLocationByPassenger['message'][carsOrder]['token'].toString(),
|
||||
durationToPassenger.toString(),
|
||||
rideId,
|
||||
rideTimerBegin.toString(),
|
||||
dataCarsLocationByPassenger['message'][carsOrder]['driver_id']
|
||||
.toString(),
|
||||
durationToRide.toString(),
|
||||
Get.find<WayPointController>().wayPoints.length > 1
|
||||
? 'haveSteps'
|
||||
: 'startEnd',
|
||||
placesCoordinate[0],
|
||||
placesCoordinate[1],
|
||||
placesCoordinate[2],
|
||||
placesCoordinate[3],
|
||||
placesCoordinate[4],
|
||||
costForDriver.toStringAsFixed(2),
|
||||
double.parse(box.read(BoxName.passengerWalletTotal)) < 0
|
||||
? double.parse(box.read(BoxName.passengerWalletTotal))
|
||||
.toStringAsFixed(2)
|
||||
: '0',
|
||||
box.read(BoxName.email).toString(),
|
||||
startNameAddress,
|
||||
endNameAddress,
|
||||
box.read(BoxName.carType),
|
||||
kazan.toStringAsFixed(0),
|
||||
passengerRate.toStringAsFixed(2),
|
||||
];
|
||||
Log.print('body: ${body}');
|
||||
for (var i = 1; i < driversToken.length; i++) {
|
||||
FirebaseMessagesController().sendNotificationToDriverMapPolyline(
|
||||
'OrderSpeed',
|
||||
rideId.toString(),
|
||||
driversToken[i],
|
||||
body,
|
||||
polylineCoordinates.toString());
|
||||
}
|
||||
|
||||
(rideId);
|
||||
|
||||
update();
|
||||
} else {
|
||||
MyDialog().getDialog("No Car or Driver Found in your area.".tr,
|
||||
"No Car or Driver Found in your area.".tr, () {
|
||||
Get.back();
|
||||
Get.offAll(const MapPagePassenger());
|
||||
});
|
||||
}
|
||||
|
||||
(rideId);
|
||||
|
||||
update();
|
||||
}
|
||||
|
||||
int tick = 0; // Move tick outside the function to maintain its state
|
||||
@@ -1679,33 +1691,28 @@ class MapPassengerController extends GetxController {
|
||||
}
|
||||
|
||||
String getLocationArea(double latitude, double longitude) {
|
||||
// Giza Boundary Check
|
||||
if (latitude >= 29.904975 &&
|
||||
latitude <= 30.143372 &&
|
||||
longitude >= 30.787030 &&
|
||||
longitude <= 31.238843) {
|
||||
box.write(BoxName.serverChosen, AppLink.seferGizaServer);
|
||||
return 'Giza';
|
||||
}
|
||||
// Cairo Boundary Check
|
||||
else if (latitude >= 29.918901 &&
|
||||
if (latitude >= 29.918901 &&
|
||||
latitude <= 30.198857 &&
|
||||
longitude >= 31.215009 &&
|
||||
longitude <= 31.532186) {
|
||||
box.write(BoxName.serverChosen, AppLink.seferCairoServer);
|
||||
return 'Cairo';
|
||||
}
|
||||
// Alexandria Boundary Check
|
||||
else if (latitude >= 30.396286 &&
|
||||
} else if (latitude >= 29.904975 &&
|
||||
latitude <= 30.143372 &&
|
||||
longitude >= 30.787030 &&
|
||||
longitude <= 31.238843) {
|
||||
box.write(BoxName.serverChosen, AppLink.seferGizaServer);
|
||||
return 'Giza';
|
||||
} else if (latitude >= 30.396286 &&
|
||||
latitude <= 31.654458 &&
|
||||
longitude >= 29.041139 &&
|
||||
longitude <= 32.626259) {
|
||||
box.write(BoxName.serverChosen, AppLink.seferAlexandriaServer);
|
||||
return 'Alexandria';
|
||||
} else {
|
||||
box.write(BoxName.serverChosen, AppLink.seferCairoServer);
|
||||
return 'Outside';
|
||||
}
|
||||
|
||||
// Return 'Unknown' if outside defined areas
|
||||
return 'Unknown';
|
||||
}
|
||||
|
||||
Future<bool> getCarsLocationByPassengerAndReloadMarker(
|
||||
|
||||
Reference in New Issue
Block a user