6/18/1
This commit is contained in:
@@ -7,9 +7,9 @@ buildscript {
|
||||
|
||||
dependencies {
|
||||
// START: FlutterFire Configuration
|
||||
classpath 'com.google.gms:google-services:4.3.15'
|
||||
classpath 'com.google.gms:google-services:4.4.2'
|
||||
// END: FlutterFire Configuration
|
||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
||||
classpath 'com.android.tools.build:gradle:7.3.1'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
org.gradle.jvmargs=-Xmx1536M
|
||||
# org.gradle.jvmargs=-Xmx1536M
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
org.gradle.jvmargs=-Xmx4096m
|
||||
@@ -74,6 +74,8 @@ class AppLink {
|
||||
static String addDriverPaymentPoints = "$ride/driverPayment/add.php";
|
||||
static String addPaymentToken =
|
||||
"$ride/driverWallet/addPaymentToken.php"; //driverWallet/addPaymentToken.php
|
||||
static String addPaymentTokenPassenger =
|
||||
"$ride/passengerWallet/addPaymentTokenPassenger.php";
|
||||
static String getDriverPaymentPoints = "$ride/driverWallet/get.php";
|
||||
static String getDriverpaymentToday = "$ride/payment/get.php";
|
||||
static String getCountRide = "$ride/payment/getCountRide.php";
|
||||
|
||||
@@ -54,7 +54,7 @@ class MapDriverController extends GetxController {
|
||||
late String distance;
|
||||
late String passengerName;
|
||||
late String passengerEmail;
|
||||
late String totalPassenger;
|
||||
late String totalPricePassenger;
|
||||
late String passengerPhone;
|
||||
late String rideId;
|
||||
late String isHaveSteps;
|
||||
@@ -443,6 +443,29 @@ class MapDriverController extends GetxController {
|
||||
}));
|
||||
}
|
||||
|
||||
String paymentToken = '';
|
||||
Future<String> generateToken(String amount) async {
|
||||
var res = await CRUD().post(link: AppLink.addPaymentToken, payload: {
|
||||
'driverID': box.read(BoxName.driverID).toString(),
|
||||
'amount': amount.toString(),
|
||||
});
|
||||
var d = jsonDecode(res);
|
||||
print('paymentToken ${d['message']}');
|
||||
return d['message'];
|
||||
}
|
||||
|
||||
String paymentTokenPassenger = '';
|
||||
Future<String> generateTokenPassenger(String amount) async {
|
||||
var res =
|
||||
await CRUD().post(link: AppLink.addPaymentTokenPassenger, payload: {
|
||||
'passengerId': passengerId,
|
||||
'amount': amount.toString(),
|
||||
});
|
||||
var d = jsonDecode(res);
|
||||
print('paymentToken ${d['message']}');
|
||||
return d['message'];
|
||||
}
|
||||
|
||||
void finishRideFromDriver1() async {
|
||||
double distanceToDestination = Geolocator.distanceBetween(
|
||||
latLngPassengerDestination.latitude,
|
||||
@@ -455,11 +478,14 @@ class MapDriverController extends GetxController {
|
||||
isRideFinished = true;
|
||||
isRideStarted = false;
|
||||
isPriceWindow = false;
|
||||
totalCost =
|
||||
carType != 'Comfort' && carType != 'Mashwari' && carType != 'Lady'
|
||||
? totalPassenger
|
||||
: price < double.parse(totalPassenger)
|
||||
? totalPassenger
|
||||
totalCost = price < 30
|
||||
? carType != 'Comfort' && carType != 'Mashwari' && carType != 'Lady'
|
||||
? '20'
|
||||
: '30'
|
||||
: price < double.parse(totalPricePassenger)
|
||||
? totalPricePassenger
|
||||
: carType != 'Comfort' && carType != 'Mashwari' && carType != 'Lady'
|
||||
? totalPricePassenger
|
||||
: price.toStringAsFixed(2);
|
||||
paymentAmount = totalCost;
|
||||
box.write(BoxName.statusDriverLocation, 'off');
|
||||
@@ -472,22 +498,29 @@ class MapDriverController extends GetxController {
|
||||
});
|
||||
print('walletChecked is $walletChecked');
|
||||
if (walletChecked == 'true') {
|
||||
paymentToken = await generateTokenPassenger(
|
||||
((-1) * double.parse(paymentAmount)).toString());
|
||||
await CRUD().post(link: AppLink.addPassengersWallet, payload: {
|
||||
'passenger_id': passengerId,
|
||||
'balance': ((-1) * double.parse(paymentAmount)).toString()
|
||||
'balance': ((-1) * double.parse(paymentAmount)).toString(),
|
||||
'token': paymentToken,
|
||||
});
|
||||
}
|
||||
paymentToken = await generateToken(paymentAmount.toString());
|
||||
await CRUD().post(link: AppLink.addDriverpayment, payload: {
|
||||
'rideId': rideId,
|
||||
'amount': paymentAmount,
|
||||
'payment_method': paymentMethod,
|
||||
'passengerID': passengerId,
|
||||
'token': paymentToken,
|
||||
'driverID': box.read(BoxName.driverID).toString(),
|
||||
});
|
||||
print('passengerWalletBurc bef ${double.parse(passengerWalletBurc)}');
|
||||
if (double.parse(passengerWalletBurc) < 0) {
|
||||
var paymentToken1 = await generateToken(paymentAmount.toString());
|
||||
await CRUD().post(link: AppLink.addPassengersWallet, payload: {
|
||||
'passenger_id': passengerId,
|
||||
'token': paymentToken1,
|
||||
'balance': ((-1) * double.parse(passengerWalletBurc)).toString()
|
||||
});
|
||||
print('passengerWalletBurc aft ${double.parse(passengerWalletBurc)}');
|
||||
@@ -498,10 +531,12 @@ class MapDriverController extends GetxController {
|
||||
(-1) *
|
||||
double.parse(kazan) /
|
||||
100; // for eygpt /100
|
||||
var paymentToken2 = await generateToken(paymentAmount.toString());
|
||||
var res = await CRUD().post(link: AppLink.addDriversWalletPoints, payload: {
|
||||
'paymentID': 'rideId$rideId',
|
||||
'amount': (pointsSubstraction).toStringAsFixed(0),
|
||||
'paymentMethod': paymentMethod,
|
||||
'token': paymentToken2,
|
||||
'driverID': box.read(BoxName.driverID).toString(),
|
||||
});
|
||||
print(res);
|
||||
@@ -851,11 +886,13 @@ class MapDriverController extends GetxController {
|
||||
duration = Get.arguments['Duration'];
|
||||
totalCost = Get.arguments['totalCost'];
|
||||
passengerId = Get.arguments['passengerId'];
|
||||
print('passengerID argument =${Get.arguments['passengerId']} ');
|
||||
print('passengerID =$passengerId ');
|
||||
driverId = Get.arguments['driverId'];
|
||||
distance = Get.arguments['Distance'];
|
||||
passengerName = Get.arguments['name'];
|
||||
passengerEmail = Get.arguments['email'];
|
||||
totalPassenger = Get.arguments['totalPassenger'];
|
||||
totalPricePassenger = Get.arguments['totalPassenger'];
|
||||
passengerPhone = Get.arguments['phone'];
|
||||
walletChecked = Get.arguments['WalletChecked'];
|
||||
tokenPassenger = Get.arguments['tokenPassenger'];
|
||||
|
||||
@@ -159,19 +159,27 @@ class CaptainWalletController extends GetxController {
|
||||
});
|
||||
}
|
||||
|
||||
Future addtransferDriversWallet(String paymentMethod) async {
|
||||
Future addtransferDriversWallet(String paymentMethod1, paymentMethod2) async {
|
||||
paymentID =
|
||||
await addDriverPayment(paymentMethod, amountFromBudgetController.text);
|
||||
await addDriverPayment(paymentMethod1, amountFromBudgetController.text);
|
||||
paymentToken = await generateToken(amountFromBudgetController.text);
|
||||
await CRUD().post(link: AppLink.addDriversWalletPoints, payload: {
|
||||
'driverID': box.read(BoxName.driverID).toString(),
|
||||
'paymentID': paymentID.toString(),
|
||||
'amount': (int.parse(amountFromBudgetController.text) * -1).toString(),
|
||||
'token': paymentToken,
|
||||
'paymentMethod': paymentMethod.toString(),
|
||||
'paymentMethod': paymentMethod1.toString(),
|
||||
});
|
||||
paymentID =
|
||||
await addDriverPayment(paymentMethod, amountFromBudgetController.text);
|
||||
// paymentToken = await generateToken(amountFromBudgetController.text);
|
||||
// await CRUD().post(link: AppLink.addDriverpayment, payload: {
|
||||
// 'driverID': box.read(BoxName.driverID).toString(),
|
||||
// 'paymentID': paymentID.toString(),
|
||||
// 'amount': (int.parse(amountFromBudgetController.text) * -1).toString(),
|
||||
// 'token': paymentToken,
|
||||
// 'paymentMethod': paymentMethod1.toString(),
|
||||
// });
|
||||
paymentID = await addDriverPayment(paymentMethod2,
|
||||
(int.parse(amountFromBudgetController.text) - 5).toString());
|
||||
paymentToken = await generateToken(amountFromBudgetController.text);
|
||||
var res1 =
|
||||
await CRUD().post(link: AppLink.addDriversWalletPoints, payload: {
|
||||
@@ -179,7 +187,7 @@ class CaptainWalletController extends GetxController {
|
||||
'paymentID': paymentID.toString(),
|
||||
'amount': (int.parse(amountFromBudgetController.text) - 5).toString(),
|
||||
'token': paymentToken,
|
||||
'paymentMethod': paymentMethod.toString(),
|
||||
'paymentMethod': paymentMethod2.toString(),
|
||||
});
|
||||
if (res1 != 'failure') {
|
||||
FirebaseMessagesController().sendNotificationToDriverMAP(
|
||||
|
||||
@@ -30,7 +30,7 @@ class PaymentController extends GetxController {
|
||||
final formKey = GlobalKey<FormState>();
|
||||
final promo = TextEditingController();
|
||||
double totalPassenger =
|
||||
double.parse(Get.find<MapDriverController>().totalPassenger);
|
||||
double.parse(Get.find<MapDriverController>().totalPricePassenger);
|
||||
int? selectedAmount = 0;
|
||||
List<dynamic> totalPassengerWalletDetails = [];
|
||||
String passengerTotalWalletAmount = '';
|
||||
|
||||
@@ -120,7 +120,7 @@ class RateController extends GetxController {
|
||||
Get.find<MapDriverController>().passengerDestination.toString(),
|
||||
'name': Get.find<MapDriverController>().passengerName.toString(),
|
||||
'timeOfTrip': Get.find<MapDriverController>().timeOfOrder.toString(),
|
||||
'fee': Get.find<MapDriverController>().totalPassenger.toString(),
|
||||
'fee': Get.find<MapDriverController>().totalPricePassenger.toString(),
|
||||
'duration': Get.find<MapDriverController>().duration.toString(),
|
||||
'phone': Get.find<MapDriverController>().passengerPhone.toString(),
|
||||
'email': Get.find<MapDriverController>().passengerEmail.toString(),
|
||||
|
||||
@@ -21,6 +21,8 @@ class PassengerLocationMapPage extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
Get.put(MapDriverController());
|
||||
// Get.put(MapDriverController())
|
||||
// .startTimerToShowPassengerInfoWindowFromDriver();
|
||||
|
||||
return MyScafolld(
|
||||
title: 'Map Passenger'.tr,
|
||||
|
||||
@@ -156,24 +156,25 @@ GetBuilder<HomeCaptainController> leftMainMenuCaptainIcons() {
|
||||
),
|
||||
),
|
||||
),
|
||||
// AnimatedContainer(
|
||||
// duration: const Duration(microseconds: 200),
|
||||
// width: controller.widthMapTypeAndTraffic,
|
||||
// decoration: BoxDecoration(
|
||||
// color: AppColor.secondaryColor,
|
||||
// border: Border.all(color: AppColor.blueColor),
|
||||
// borderRadius: BorderRadius.circular(15)),
|
||||
// child: IconButton(
|
||||
// onPressed: () {
|
||||
|
||||
// },
|
||||
// icon: const Icon(
|
||||
// FontAwesome5.grin_tears,
|
||||
// size: 29,
|
||||
// color: AppColor.blueColor,
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
AnimatedContainer(
|
||||
duration: const Duration(microseconds: 200),
|
||||
width: controller.widthMapTypeAndTraffic,
|
||||
decoration: BoxDecoration(
|
||||
color: AppColor.secondaryColor,
|
||||
border: Border.all(color: AppColor.blueColor),
|
||||
borderRadius: BorderRadius.circular(15)),
|
||||
child: IconButton(
|
||||
onPressed: () {
|
||||
Get.to(() => PassengerLocationMapPage(),
|
||||
arguments: box.read(BoxName.rideArguments));
|
||||
},
|
||||
icon: const Icon(
|
||||
FontAwesome5.grin_tears,
|
||||
size: 29,
|
||||
color: AppColor.blueColor,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
)),
|
||||
);
|
||||
|
||||
@@ -169,7 +169,8 @@ class PassengerInfoWindow extends StatelessWidget {
|
||||
Text("cost is ".tr,
|
||||
style: AppStyle.title),
|
||||
Text(
|
||||
controller.totalPassenger.toString(),
|
||||
controller.totalPricePassenger
|
||||
.toString(),
|
||||
style: AppStyle.number,
|
||||
),
|
||||
],
|
||||
|
||||
@@ -329,7 +329,7 @@ class OrderRequestPage extends StatelessWidget {
|
||||
bodyToPassenger,
|
||||
);
|
||||
Get.back();
|
||||
Get.to(() => PassengerLocationMapPage(), arguments: {
|
||||
box.write(BoxName.rideArguments, {
|
||||
'passengerLocation': myList[0].toString(),
|
||||
'passengerDestination': myList[1].toString(),
|
||||
'Duration': myList[4].toString(),
|
||||
@@ -357,7 +357,7 @@ class OrderRequestPage extends StatelessWidget {
|
||||
'step2': myList[23].toString(),
|
||||
'step3': myList[24].toString(),
|
||||
'step4': myList[25].toString(),
|
||||
'passengerWalletBurc': myList[27].toString(),
|
||||
'passengerWalletBurc': myList[26].toString(),
|
||||
'timeOfOrder': DateTime.now().toString(),
|
||||
'totalPassenger': myList[2].toString(),
|
||||
'carType': myList[31].toString(),
|
||||
@@ -365,6 +365,10 @@ class OrderRequestPage extends StatelessWidget {
|
||||
'startNameLocation': myList[29].toString(),
|
||||
'endNameLocation': myList[30].toString(),
|
||||
});
|
||||
print(
|
||||
'passengerID =${box.read(BoxName.rideArguments)}');
|
||||
Get.to(() => PassengerLocationMapPage(),
|
||||
arguments: box.read(BoxName.rideArguments));
|
||||
},
|
||||
),
|
||||
GetBuilder<OrderRequestController>(
|
||||
|
||||
@@ -49,9 +49,9 @@ class PointsCaptain extends StatelessWidget {
|
||||
? 'EGP'
|
||||
: 'JOD', () async {
|
||||
await captainWalletController.addDriverPayment(
|
||||
'visa', pricePoint);
|
||||
'visa-in', pricePoint);
|
||||
await captainWalletController.addDriverWallet(
|
||||
'visa', countPoint);
|
||||
'visa-in', countPoint);
|
||||
await captainWalletController
|
||||
.getCaptainWalletFromBuyPoints();
|
||||
});
|
||||
@@ -70,9 +70,9 @@ class PointsCaptain extends StatelessWidget {
|
||||
? 'EGP'
|
||||
: 'JOD', () async {
|
||||
await captainWalletController.addDriverPayment(
|
||||
'visa', pricePoint);
|
||||
'visa-in', pricePoint);
|
||||
await captainWalletController.addDriverWallet(
|
||||
'visa', countPoint);
|
||||
'visa-in', countPoint);
|
||||
await captainWalletController
|
||||
.getCaptainWalletFromBuyPoints();
|
||||
});
|
||||
@@ -84,9 +84,9 @@ class PointsCaptain extends StatelessWidget {
|
||||
box.read(BoxName.countryCode) == 'Jordan' ? 'jod' : 'egp',
|
||||
() async {
|
||||
await captainWalletController.addDriverPayment(
|
||||
'visa', pricePoint);
|
||||
'visa-in', pricePoint);
|
||||
await captainWalletController.addDriverWallet(
|
||||
'visa', countPoint);
|
||||
'visa-in', countPoint);
|
||||
await captainWalletController.getCaptainWalletFromBuyPoints();
|
||||
});
|
||||
},
|
||||
|
||||
@@ -8,7 +8,6 @@ import 'package:SEFER/views/widgets/mycircular.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
|
||||
import '../../../constant/colors.dart';
|
||||
import '../../../controller/home/payment/captain_wallet_controller.dart';
|
||||
|
||||
class TransferBudgetPage extends StatelessWidget {
|
||||
@@ -110,7 +109,9 @@ class TransferBudgetPage extends StatelessWidget {
|
||||
onPressed: () async {
|
||||
await captainWalletController
|
||||
.addtransferDriversWallet(
|
||||
'Transfer');
|
||||
'TransferFrom',
|
||||
'TransferTo',
|
||||
);
|
||||
})
|
||||
: const SizedBox()
|
||||
],
|
||||
|
||||
@@ -29,7 +29,7 @@ class WalletCaptain extends StatelessWidget {
|
||||
Get.put(CaptainWalletController());
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
Get.put(MapDriverController()).totalPassenger = '0';
|
||||
Get.put(MapDriverController()).totalPricePassenger = '0';
|
||||
return MyScafolld(
|
||||
title: 'Driver Wallet'.tr,
|
||||
body: [
|
||||
@@ -222,7 +222,7 @@ class WalletCaptain extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
confirm: MyElevatedButton(
|
||||
title: 'Pay',
|
||||
title: 'Pay'.tr,
|
||||
onPressed: () async {
|
||||
if (double.parse(
|
||||
captainWalletController
|
||||
|
||||
Reference in New Issue
Block a user