Update: 2026-06-25 02:28:33

This commit is contained in:
Hamza-Ayed
2026-06-25 02:28:33 +03:00
parent 1ff13f09ac
commit 98a8a2ae3d
43 changed files with 992 additions and 812 deletions

View File

@@ -16,6 +16,7 @@ import '../functions/crud.dart';
import 'paymob/e_cash_screen.dart';
import '../../views/home/my_wallet/payment_screen_mtn.dart';
import '../../views/home/my_wallet/payment_screen_cliq.dart';
import '../../views/widgets/error_snakbar.dart';
class PaymentController extends GetxController {
bool isLoading = false;
@@ -28,14 +29,14 @@ class PaymentController extends GetxController {
final walletphoneController = TextEditingController();
double totalPassenger = double.parse(
Get.find<RideLifecycleController>().totalPassenger.toString());
int? selectedAmount = 0;
double? selectedAmount = 0;
List<dynamic> totalPassengerWalletDetails = [];
String passengerTotalWalletAmount = '';
String ip = '1';
DateTime now = DateTime.now();
late int timestamp;
void updateSelectedAmount(int value) {
void updateSelectedAmount(double value) {
selectedAmount = value;
update();
}
@@ -80,8 +81,7 @@ class PaymentController extends GetxController {
'passengerId': box.read(BoxName.passengerID).toString(),
'amount': amount.toString(),
});
var d = jsonDecode(res);
return d['message'];
return res['message'];
}
Future<String> generateTokenDriver(String amount) async {
@@ -89,8 +89,7 @@ class PaymentController extends GetxController {
'driverID': Get.find<RideLifecycleController>().driverId,
'amount': amount.toString(),
});
var d = jsonDecode(res);
return d['message'];
return res['message'];
}
Future<void> payToDriverForCancelAfterAppliedAndHeNearYou(
@@ -430,14 +429,14 @@ class PaymentController extends GetxController {
Future<void> payWithClickWallet(BuildContext context, String amount, String currency) async {
try {
final phone = walletphoneController.text.trim();
final phone = box.read(BoxName.phoneWallet) ?? walletphoneController.text.trim();
if (phone.isEmpty) {
Get.defaultDialog(title: 'Error'.tr, content: Text('Please enter phone number'.tr));
mySnackeBarError('Please enter a phone number'.tr);
return;
}
Get.dialog(const Center(child: CircularProgressIndicator()), barrierDismissible: false);
var res = await CRUD().postWalletMtn(
link: AppLink.createCliqInvoice,
payload: {
@@ -447,9 +446,9 @@ class PaymentController extends GetxController {
"click_phone": phone,
},
);
Get.back(); // close loading
if (Get.isDialogOpen ?? false) Get.back();
late final Map<String, dynamic> resMap;
if (res is Map<String, dynamic>) {
resMap = res;
@@ -466,14 +465,11 @@ class PaymentController extends GetxController {
amount: double.parse(amount),
));
} else {
Get.defaultDialog(
title: 'Error'.tr,
content: Text(resMap['message']?.toString() ?? 'Failed to create invoice'.tr),
);
mySnackeBarError(resMap['message']?.toString() ?? 'Failed to create invoice'.tr);
}
} catch (e) {
if (Get.isDialogOpen ?? false) Get.back();
Get.defaultDialog(title: 'Error'.tr, content: Text(e.toString()));
mySnackeBarError(e.toString());
}
}