This commit is contained in:
Hamza-Ayed
2023-10-10 02:54:11 +03:00
parent 54e948e93b
commit b61ce6ab2e
25 changed files with 437 additions and 168 deletions

View File

@@ -14,7 +14,7 @@ import '../../../constant/credential.dart';
import '../../../constant/links.dart';
import '../../functions/crud.dart';
class MapDirection extends GetxController {
class MapDriverController extends GetxController {
bool isLoading = true;
List data = [];
LatLngBounds? boundsData;
@@ -34,6 +34,7 @@ class MapDirection extends GetxController {
late String direction;
bool isPassengerInfoWindow = false;
bool isBtnRideBegin = false;
bool isRideFinished = false;
double passengerInfoWindow = Get.height * .32;
double progress = 0;
double progressToPassenger = 0;
@@ -93,7 +94,7 @@ class MapDirection extends GetxController {
update();
}
void changeRideToBegin() {
void changeRideToBeginToPassenger() {
isRideBegin = true;
passengerInfoWindow = Get.height * .22;
update();
@@ -119,6 +120,7 @@ class MapDirection extends GetxController {
}
}
String stringRemainingTimeToPassenger = '';
void startTimerToShowDriverToPassengerDuration() async {
for (int i = 0; i <= int.parse(durationToPassenger); i++) {
await Future.delayed(const Duration(seconds: 1));
@@ -131,19 +133,52 @@ class MapDirection extends GetxController {
}
print(isBtnRideBegin);
print(remainingTimeToPassenger);
int minutes = (remainingTimeToPassenger / 60).floor();
int seconds = remainingTimeToPassenger % 60;
stringRemainingTimeToPassenger =
'$minutes:${seconds.toString().padLeft(2, '0')}';
update();
}
}
beginRideFromDriver() async {
changeRideToBegin();
void driverGoToPassenger() async {
changeRideToBeginToPassenger();
await CRUD().post(link: AppLink.updateRides, payload: {
'id': rideId,
'driverGoToPassengerTime': DateTime.now().toString(),
'status': 'Applied'
});
FirebaseMessagesController().sendNotificationToAnyWithoutData(
'DriverIsGoingToPassenger',
box.read(BoxName.name).toString(),
tokenPassenger);
}
void beginRideFromDriver() async {
changeRideToBeginToPassenger();
isPassengerInfoWindow = false;
isRideFinished = true;
update();
await CRUD().post(link: AppLink.updateRides, payload: {
'id': rideId,
'rideTimeStart': DateTime.now().toString(),
'status': 'Applied'
'status': 'Begin'
});
FirebaseMessagesController().sendNotificationToAnyWithoutData('RideIsBegin',
box.read(BoxName.tokenDriver).toString(), tokenPassenger);
// FirebaseMessagesController().sendNotificationToAnyWithoutData(
// 'RideIsBegin', box.read(BoxName.name).toString(), tokenPassenger);
}
void finishRideFromDriver() async {
// changeRideToBeginToPassenger();
await CRUD().post(link: AppLink.updateRides, payload: {
'id': rideId,
'rideTimeStart': DateTime.now().toString(),
'status': 'Finished'
});
FirebaseMessagesController().sendNotificationToAnyWithoutData(
'isRideFinished', box.read(BoxName.name).toString(), tokenPassenger);
}
void updateMarker() {