This commit is contained in:
Hamza Aleghwairyeen
2024-04-03 00:05:31 +03:00
parent 02b27110df
commit ae41f1bb24
7 changed files with 48 additions and 26 deletions

View File

@@ -56,6 +56,23 @@ class LocationController extends GetxController {
print('total point is $totalPoints');
await getLocation();
// Animate camera to user location (optional)
if (Get.find<HomeCaptainController>().rideId == 'rideId') {
Get.find<MapDriverController>()
.mapController!
.animateCamera(CameraUpdate.newLatLng(LatLng(
Get.find<LocationController>().myLocation.latitude,
Get.find<LocationController>().myLocation.longitude,
)));
} else {
Get.find<HomeCaptainController>()
.mapHomeCaptainController
.animateCamera(CameraUpdate.newLatLng(LatLng(
Get.find<LocationController>().myLocation.latitude,
Get.find<LocationController>().myLocation.longitude,
)));
}
// if (box.read(BoxName.driverID) != null) {
await CRUD()
.post(link: AppLink.addCarsLocationByPassenger, payload: {
@@ -71,21 +88,21 @@ class LocationController extends GetxController {
: totalDistance.toStringAsFixed(1),
'status': box.read(BoxName.statusDriverLocation).toString()
});
if (Get.find<HomeCaptainController>().rideId == '0') {
await sql.insertData({
'driver_id': box.read(BoxName.driverID),
'latitude': myLocation.latitude.toString(),
'longitude': myLocation.longitude.toString(),
'created_at': DateTime.now().toString(),
}, TableName.carLocations);
} else {
await sql.insertData({
'order_id': Get.find<MapDriverController>().rideId,
'created_at': DateTime.now().toString(),
'lat': myLocation.latitude.toString(),
'lng': myLocation.longitude.toString(),
}, TableName.rideLocation);
}
// if (Get.find<HomeCaptainController>().rideId == '0') {
// await sql.insertData({
// 'driver_id': box.read(BoxName.driverID),
// 'latitude': myLocation.latitude.toString(),
// 'longitude': myLocation.longitude.toString(),
// 'created_at': DateTime.now().toString(),
// }, TableName.carLocations);
// } else {
// await sql.insertData({
// 'order_id': Get.find<MapDriverController>().rideId,
// 'created_at': DateTime.now().toString(),
// 'lat': myLocation.latitude.toString(),
// 'lng': myLocation.longitude.toString(),
// }, TableName.rideLocation);
// }
// }
//

View File

@@ -155,14 +155,14 @@ class HomeCaptainController extends GetxController {
update();
}
late GoogleMapController mapHomeCaptaiController;
late GoogleMapController mapHomeCaptainController;
void onMapCreated(GoogleMapController controller) {
mapHomeCaptaiController = controller;
mapHomeCaptainController = controller;
controller.getVisibleRegion();
// Animate camera to user location (optional)
controller.animateCamera(
CameraUpdate.newLatLng(Get.find<LocationController>().myLocation),
);
update();
}
void savePeriod(Duration period) {
@@ -212,7 +212,7 @@ class HomeCaptainController extends GetxController {
getCountRideToday();
getAllPayment();
startPeriodicExecution();
onMapCreated(mapHomeCaptaiController);
onMapCreated(mapHomeCaptainController);
totalPoints = Get.find<CaptainWalletController>().totalPoints;
getRefusedOrderByCaptain();
// LocationController().getLocation();

View File

@@ -91,6 +91,7 @@ class MapDriverController extends GetxController {
late LatLng myLocation;
int remainingTimeTimerRideBegin = 60;
String stringRemainingTimeRideBegin = '';
String stringRemainingTimeRideBegin1 = '';
double progressTimerRideBegin = 0;
late Timer timer;
String? mapAPIKEY;
@@ -104,7 +105,9 @@ class MapDriverController extends GetxController {
myLocation = myLocation;
mapController = controller;
controller.getVisibleRegion();
controller.animateCamera(
CameraUpdate.newLatLng(Get.find<LocationController>().myLocation),
);
// Set up a timer or interval to trigger the marker update every 3 seconds.
timer = Timer.periodic(const Duration(seconds: 1), (_) {
updateMarker();
@@ -603,7 +606,10 @@ class MapDriverController extends GetxController {
int seconds = remainingTimeTimerRideBegin % 60;
stringRemainingTimeRideBegin =
'$minutes:${seconds.toString().padLeft(2, '0')}';
int minutes1 = (rideTimerFromBegin / 60).floor();
int seconds1 = rideTimerFromBegin % 60;
stringRemainingTimeRideBegin1 =
'$minutes1:${seconds1.toString().padLeft(2, '0')}';
update();
}
}