Files
tripz/lib/controller/payment/payment_controller.dart
Hamza-Ayed 4380826253 9/5/1
2023-09-05 11:24:45 +03:00

82 lines
2.4 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;
bool isWalletFound = false;
final formKey = GlobalKey<FormState>();
final promo = TextEditingController();
double totalPassenger = MapController().totalPassenger;
List<dynamic> totalPassengerWalletDetails = [];
String passengerTotalWalletAmount = '';
getPassengerWallet() async {
isloading = true;
update();
box.write(BoxName.passengerWalletFound, isWalletFound);
// totalPassengerWalletDetails = box.read(BoxName.passengerWalletDetails);
if (totalPassengerWalletDetails.isEmpty) {
await CRUD().get(link: AppLink.getWalletByPassenger, payload: {
'passenger_id': box.read(BoxName.pasengerID)
}).then((value) {
print(value);
totalPassengerWalletDetails = jsonDecode(value)['message'];
passengerTotalWalletAmount = totalPassengerWalletDetails[0]['total'];
box.write(BoxName.passengerWalletDetails, totalPassengerWalletDetails);
});
}
isloading = false;
update();
print(totalPassengerWalletDetails);
}
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']));
MapController().promoTaken = true;
update();
print(totalPassenger);
}
});
}
@override
void onInit() {
getPassengerWallet();
super.onInit();
}
}