9/24/1-backLocation

This commit is contained in:
Hamza-Ayed
2024-09-24 13:32:36 +03:00
parent 3313cb0203
commit f5b7307f86
27 changed files with 880 additions and 343 deletions

View File

@@ -5,7 +5,9 @@ import 'package:flutter_overlay_window/flutter_overlay_window.dart';
import 'package:get/get.dart';
import 'package:just_audio/just_audio.dart';
import '../../../../constant/box_name.dart';
import '../../../../constant/links.dart';
import '../../../../constant/style.dart';
import '../../../../controller/functions/crud.dart';
import '../../../../main.dart';
class OrderOverlay extends StatefulWidget {
@@ -111,6 +113,56 @@ class _OrderOverlayState extends State<OrderOverlay>
super.dispose();
}
void refuseOrder(
orderID,
) async {
await CRUD().postFromDialogue(link: AppLink.addDriverOrder, payload: {
//TODO need review
'driver_id': box.read(BoxName.driverID),
// box.read(BoxName.driverID).toString(),
'order_id': orderID,
'status': 'Refused'
});
await CRUD().post(link: AppLink.updateRides, payload: {
'id': orderID,
// 'rideTimeStart': DateTime.now().toString(),
'status': 'Refused',
'driver_id': box.read(BoxName.driverID),
});
}
addRideToNotificationDriverString(
orderID,
String startLocation,
String endLocation,
String date,
String time,
String price,
String passengerId,
String status,
String carType,
String passengerRate,
String priceForPassenger,
String distance,
String duration,
) async {
await CRUD().post(link: AppLink.addWaitingRide, payload: {
'id': orderID,
'start_location': startLocation,
'end_location': endLocation,
'date': date,
'time': time,
'price': price,
'passenger_id': passengerId,
'status': status,
'carType': carType,
'passengerRate': passengerRate,
'price_for_passenger': priceForPassenger,
'distance': distance,
'duration': duration,
});
}
@override
Widget build(BuildContext context) {
String duration = (double.parse(d[4].toString()) / 60).toStringAsFixed(0);
@@ -306,6 +358,23 @@ class _OrderOverlayState extends State<OrderOverlay>
void _rejectOrder() async {
box.write(BoxName.rideStatus, 'reject');
refuseOrder(
d[16].toString(),
);
addRideToNotificationDriverString(
d[16].toString(),
d[29].toString(),
d[30].toString(),
'${DateTime.now().year}-${DateTime.now().month}-${DateTime.now().day}',
'${DateTime.now().hour}:${DateTime.now().minute}',
d[2].toString(),
d[7].toString(),
'wait',
d[31].toString(),
d[33].toString(),
d[2].toString(),
d[5].toString(),
d[4].toString()); //
bool isOverlayActive = await FlutterOverlayWindow.isActive();
if (isOverlayActive) {
await FlutterOverlayWindow.closeOverlay();

View File

@@ -379,6 +379,27 @@ class OrderRequestPage extends StatelessWidget {
'order_id': myList[16].toString(),
'status': 'Apply'
});
CRUD().postFromDialogue(
link:
'${AppLink.seferAlexandriaServer}/driver_order/add.php',
payload: {
'driver_id': myList[6].toString(),
// box.read(BoxName.driverID).toString(),
'order_id': myList[16].toString(),
'status': 'Apply'
});
CRUD().postFromDialogue(
link:
'${AppLink.seferGizaServer}/driver_order/add.php',
payload: {
'driver_id': myList[6].toString(),
// box.read(BoxName.driverID).toString(),
'order_id': myList[16].toString(),
'status': 'Apply'
});
///
var res = await CRUD().post(
link: AppLink.updateRideAndCheckIfApplied,
payload: {
@@ -387,6 +408,24 @@ class OrderRequestPage extends StatelessWidget {
'status': 'Apply',
'driver_id': myList[6].toString(),
});
CRUD().post(
link:
'${AppLink.seferAlexandriaServer}/rides/updateRideAndCheckIfApplied.php',
payload: {
'id': myList[16],
'rideTimeStart': DateTime.now().toString(),
'status': 'Apply',
'driver_id': myList[6].toString(),
});
CRUD().post(
link:
'${AppLink.seferAlexandriaServer}/rides/updateRideAndCheckIfApplied.php',
payload: {
'id': myList[16],
'rideTimeStart': DateTime.now().toString(),
'status': 'Apply',
'driver_id': myList[6].toString(),
});
if (res == 'failure') {
MyDialog().getDialog(
"This ride is already applied by another driver."

View File

@@ -346,6 +346,24 @@ class OrderSpeedRequest extends StatelessWidget {
'status': 'Apply',
'driver_id': box.read(BoxName.driverID),
});
CRUD().post(
link:
"${AppLink.seferAlexandriaServer}/rides/updateStausFromSpeed.php",
payload: {
'id': myList[16],
'rideTimeStart': DateTime.now().toString(),
'status': 'Apply',
'driver_id': box.read(BoxName.driverID),
});
CRUD().post(
link:
"${AppLink.seferGizaServer}/rides/updateStausFromSpeed.php",
payload: {
'id': myList[16],
'rideTimeStart': DateTime.now().toString(),
'status': 'Apply',
'driver_id': box.read(BoxName.driverID),
});
// .then((value) {
// var json = jsonDecode(res);
if (res == "failure") {
@@ -379,6 +397,24 @@ class OrderSpeedRequest extends StatelessWidget {
'order_id': body.toString(),
'status': 'Apply'
});
CRUD().postFromDialogue(
link:
'${AppLink.seferAlexandriaServer}/driver_order/add.php',
payload: {
'driver_id': myList[6].toString(),
// box.read(BoxName.driverID).toString(),
'order_id': body.toString(),
'status': 'Apply'
});
CRUD().postFromDialogue(
link:
'${AppLink.seferGizaServer}/driver_order/add.php',
payload: {
'driver_id': myList[6].toString(),
// box.read(BoxName.driverID).toString(),
'order_id': body.toString(),
'status': 'Apply'
});
FirebaseMessagesController()
.sendNotificationToPassengerToken(
'Apply Ride',