11/15/1
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import 'dart:async';
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
@@ -10,6 +11,7 @@ import 'package:ride/controller/firebase/firbase_messge.dart';
|
||||
import 'package:ride/controller/functions/location_controller.dart';
|
||||
import 'package:ride/main.dart';
|
||||
import 'package:ride/views/Rate/rate_passenger.dart';
|
||||
import 'package:ride/views/home/Captin/home_captin.dart';
|
||||
|
||||
import '../../../constant/credential.dart';
|
||||
import '../../../constant/links.dart';
|
||||
@@ -121,18 +123,24 @@ class MapDriverController extends GetxController {
|
||||
i <= progressTimerToShowPassengerInfoWindowFromDriver;
|
||||
i++) {
|
||||
await Future.delayed(const Duration(seconds: 1));
|
||||
progress = i / progressTimerToShowPassengerInfoWindowFromDriver;
|
||||
remainingTimeToShowPassengerInfoWindowFromDriver =
|
||||
progressTimerToShowPassengerInfoWindowFromDriver - i;
|
||||
if (remainingTimeToShowPassengerInfoWindowFromDriver == 0) {
|
||||
isPassengerInfoWindow = true;
|
||||
if (canelString != 'Cancel') {
|
||||
cancelCheckRidefromPassenger();
|
||||
progress = i / progressTimerToShowPassengerInfoWindowFromDriver;
|
||||
remainingTimeToShowPassengerInfoWindowFromDriver =
|
||||
progressTimerToShowPassengerInfoWindowFromDriver - i;
|
||||
|
||||
if (remainingTimeToShowPassengerInfoWindowFromDriver == 0) {
|
||||
isPassengerInfoWindow = true;
|
||||
print(isPassengerInfoWindow);
|
||||
update();
|
||||
startTimerToShowDriverToPassengerDuration();
|
||||
}
|
||||
print(isPassengerInfoWindow);
|
||||
print(remainingTimeToShowPassengerInfoWindowFromDriver);
|
||||
update();
|
||||
startTimerToShowDriverToPassengerDuration();
|
||||
} else {
|
||||
Get.off(HomeCaptain());
|
||||
}
|
||||
print(isPassengerInfoWindow);
|
||||
print(remainingTimeToShowPassengerInfoWindowFromDriver);
|
||||
update();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -218,27 +226,25 @@ class MapDriverController extends GetxController {
|
||||
// 'isRideFinished', box.read(BoxName.name).toString(), tokenPassenger);
|
||||
}
|
||||
|
||||
String canelString = '';
|
||||
void cancelCheckRidefromPassenger() async {
|
||||
for (int i = 0;
|
||||
i <= remainingTimeToShowPassengerInfoWindowFromDriver;
|
||||
i++) {
|
||||
await Future.delayed(const Duration(milliseconds: 500));
|
||||
await CRUD().post(link: AppLink.getOrderCancelStatus, payload: {
|
||||
'order_id': rideId,
|
||||
}).then((value) {
|
||||
if (value['status'] == 'Cancel') {
|
||||
Get.snackbar('Order Cancelled'.tr, 'Order Cancelled by Passenger'.tr,
|
||||
backgroundColor: AppColor.redColor);
|
||||
remainingTimeTimerRideBegin = 0;
|
||||
remainingTimeToShowPassengerInfoWindowFromDriver = 0;
|
||||
remainingTimeToPassenger = 0;
|
||||
isRideStarted = false;
|
||||
isRideFinished = false;
|
||||
isPassengerInfoWindow = false;
|
||||
clearPolyline();
|
||||
update();
|
||||
}
|
||||
});
|
||||
var res = await CRUD().get(link: AppLink.getOrderCancelStatus, payload: {
|
||||
'order_id': rideId,
|
||||
}); //.then((value) {
|
||||
print('Cancel fetch--------------------');
|
||||
var response = jsonDecode(res);
|
||||
canelString = response['data']['status'];
|
||||
update();
|
||||
if (response['data']['status'].toString() == 'Cancel') {
|
||||
Get.snackbar('Order Cancelled'.tr, 'Order Cancelled by Passenger'.tr,
|
||||
backgroundColor: AppColor.redColor);
|
||||
remainingTimeTimerRideBegin = 0;
|
||||
remainingTimeToShowPassengerInfoWindowFromDriver = 0;
|
||||
remainingTimeToPassenger = 0;
|
||||
isRideStarted = false;
|
||||
isRideFinished = false;
|
||||
isPassengerInfoWindow = false;
|
||||
clearPolyline();
|
||||
update();
|
||||
}
|
||||
}
|
||||
@@ -378,7 +384,7 @@ class MapDriverController extends GetxController {
|
||||
addCustomCarIcon();
|
||||
// updateMarker();
|
||||
startTimerToShowPassengerInfoWindowFromDriver();
|
||||
cancelCheckRidefromPassenger();
|
||||
// cancelCheckRidefromPassenger();
|
||||
// checkIsDriverNearPassenger();
|
||||
super.onInit();
|
||||
}
|
||||
|
||||
@@ -73,9 +73,9 @@ class MapPassengerController extends GetxController {
|
||||
int selectedPassengerCount = 1;
|
||||
double progress = 0;
|
||||
double progressTimerToPassengerFromDriverAfterApplied = 0;
|
||||
int durationTimer = 15;
|
||||
int durationTimer = 25;
|
||||
late int durationToRide;
|
||||
int remainingTime = 15;
|
||||
int remainingTime = 25;
|
||||
int remainingTimeToPassengerFromDriverAfterApplied = 60;
|
||||
int timeToPassengerFromDriverAfterApplied = 0;
|
||||
Timer? timerToPassengerFromDriverAfterApplied;
|
||||
@@ -353,7 +353,7 @@ class MapPassengerController extends GetxController {
|
||||
print(decod['data']);
|
||||
if (decod['data'].toString() == 'Apply') {
|
||||
shouldFetch = false; // Stop further fetches
|
||||
rideConfirm = false;
|
||||
// rideConfirm = false;
|
||||
update();
|
||||
startTimer();
|
||||
} else if (decod['data'].toString() == 'Refused') {
|
||||
@@ -438,6 +438,7 @@ class MapPassengerController extends GetxController {
|
||||
// markerReloadingTimer.cancel();
|
||||
// }));
|
||||
} else {
|
||||
noCarString = false;
|
||||
dataCarsLocationByPassenger = jsonDecode(res);
|
||||
// print(dataCarsLocationByPassenger);
|
||||
driverId = dataCarsLocationByPassenger['message'][carsOrder]['driver_id']
|
||||
@@ -448,6 +449,7 @@ class MapPassengerController extends GetxController {
|
||||
double.parse(dataCarsLocationByPassenger['message'][i]['latitude']),
|
||||
double.parse(
|
||||
dataCarsLocationByPassenger['message'][i]['longitude'])));
|
||||
update();
|
||||
}
|
||||
|
||||
update();
|
||||
@@ -528,7 +530,7 @@ class MapPassengerController extends GetxController {
|
||||
}
|
||||
|
||||
Future cancelRide() async {
|
||||
print(rideConfirm);
|
||||
print("rideConfirm=$rideConfirm");
|
||||
|
||||
if (rideConfirm == false) {
|
||||
clearPlaces();
|
||||
@@ -545,19 +547,17 @@ class MapPassengerController extends GetxController {
|
||||
clearPlaces();
|
||||
clearPolyline();
|
||||
data = [];
|
||||
await CRUD().post(link: AppLink.updateDriverOrder, payload: {
|
||||
"order_id": rideId.toString(), // Convert to String
|
||||
"status": 'Cancel'
|
||||
});
|
||||
rideConfirm = false;
|
||||
shouldFetch = false;
|
||||
isPassengerChosen = false;
|
||||
isCashSelectedBeforeConfirmRide = false;
|
||||
timeToPassengerFromDriverAfterApplied = 0;
|
||||
changeCancelRidePageShow();
|
||||
remainingTime = 25;
|
||||
update();
|
||||
|
||||
await CRUD().post(link: AppLink.updateDriverOrder, payload: {
|
||||
"order_id": rideId.toString(), // Convert to String
|
||||
"status": 'Cancel'
|
||||
});
|
||||
remainingTime = 0;
|
||||
|
||||
update();
|
||||
}
|
||||
|
||||
@@ -13,15 +13,15 @@ class PromosController extends GetxController {
|
||||
late String promos;
|
||||
@override
|
||||
void onInit() {
|
||||
getPromoBytody();
|
||||
getPromoByToday();
|
||||
super.onInit();
|
||||
}
|
||||
|
||||
Future getPromoBytody() async {
|
||||
Future getPromoByToday() async {
|
||||
var res = await CRUD().get(link: AppLink.getPromoBytody, payload: {});
|
||||
if (res.toString() == 'failure') {
|
||||
Get.defaultDialog(
|
||||
title: 'No Promo for tody .'.tr,
|
||||
title: 'No Promo for today .'.tr,
|
||||
middleText: '',
|
||||
titleStyle: AppStyle.title,
|
||||
confirm: MyElevatedButton(
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:ride/views/home/map_page_passenger.dart';
|
||||
|
||||
import '../../../constant/style.dart';
|
||||
import '../../../controller/home/map_passenger_controller.dart';
|
||||
|
||||
Reference in New Issue
Block a user