Files
driver_tripz/lib/controller/payment/payment_controller.dart
Hamza-Ayed 4628f91d3e 8-28/2
2023-08-29 01:22:43 +03:00

79 lines
2.1 KiB
Dart

import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:ride/controller/home/map_page_controller.dart';
import '../../constant/box_name.dart';
import '../../constant/links.dart';
import '../../main.dart';
import '../functions/crud.dart';
class PaymentController extends GetxController {
bool isloading = false;
bool isWalletCheced = false;
bool isCashCheced = false;
final formKey = GlobalKey<FormState>();
final promo = TextEditingController();
double totalPassenger = MapController().totalPassenger;
getPassengerWallet() async {
isloading = true;
update();
if (box.read(BoxName.passengerWalletDetails) == null) {
await CRUD().get(link: AppLink.getWalletByPassenger, payload: {
'passenger_id': box.read(BoxName.pasengerID)
}).then((value) {
final total = jsonDecode(value)['message'];
box.write(BoxName.passengerWalletDetails, total);
});
isloading = false;
update();
print('from empty');
print(box.read(BoxName.passengerWalletDetails));
} else {
box.read(BoxName.passengerWalletDetails);
update();
print('from full');
print(box.read(BoxName.passengerWalletDetails));
}
}
void onChangedPymentethodWallet(bool? value) {
isWalletCheced = !isWalletCheced;
isWalletCheced ? isCashCheced = false : isCashCheced = true;
update();
}
void onChangedPymentethodCash(bool? value) {
isCashCheced = !isCashCheced;
isCashCheced ? isWalletCheced = false : isWalletCheced = true;
update();
}
void applyPromoCodetoPassenger() async {
//TAWJIHI
CRUD().get(link: AppLink.getPassengersPromo, payload: {
'promo_code': promo.text,
}).then((value) {
var decod = jsonDecode(value);
if (decod["status"] == "success") {
print(totalPassenger);
var firstElement = decod["message"][0];
totalPassenger = totalPassenger -
(totalPassenger * int.parse(firstElement['amount']));
update();
print(totalPassenger);
}
});
}
@override
void onInit() {
getPassengerWallet();
super.onInit();
}
}