import 'package:flutter/cupertino.dart'; import 'package:get/get.dart'; import 'package:ride/constant/box_name.dart'; import 'package:ride/constant/colors.dart'; import 'package:ride/constant/links.dart'; import 'package:ride/constant/style.dart'; import 'package:ride/controller/functions/crud.dart'; import 'package:ride/controller/home/map_passenger_controller.dart'; import 'package:ride/main.dart'; import 'package:ride/views/home/Captin/home_captin.dart'; import 'package:ride/views/home/map_page.dart'; import 'package:ride/views/widgets/elevated_btn.dart'; class RatePassengerController extends GetxController { double selectedRateItemId = -1; TextEditingController comment = TextEditingController(); late String rideId, passengerId, driverId; @override void onInit() { if (box.read(BoxName.driverID).toString() != '' || box.read(BoxName.driverID).toString() != null) { passengerId = Get.arguments['passengerId']; rideId = Get.arguments['rideId']; } else { driverId = Get.arguments['driverId']; rideId = Get.find().rideId; } super.onInit(); } void selectRateItem(double id) { selectedRateItemId = id; update(); } void addRateToPassenger() async { if (selectedRateItemId < 1) { Get.defaultDialog( title: 'You Should choose rate figure'.tr, titleStyle: AppStyle.title, middleText: '', confirm: MyElevatedButton(title: 'Ok', onPressed: () => Get.back())); } else { await CRUD().post(link: AppLink.addRateToPassenger, payload: { 'passenger_id': passengerId, 'driverID': box.read(BoxName.driverID).toString(), 'rideId': rideId, 'rating': selectedRateItemId.toString(), 'comment': comment.text, }).then((value) { Get.offAll(const HomeCaptain()); }); } } void addRateToDriver() async { if (selectedRateItemId < 1) { Get.defaultDialog( title: 'You Should choose rate figure'.tr, titleStyle: AppStyle.title, middleText: '', confirm: MyElevatedButton(title: 'Ok', onPressed: () => Get.back())); } else { await CRUD().post(link: AppLink.addRateToDriver, payload: { 'passenger_id': box.read(BoxName.pasengerID).toString(), 'driverID': driverId, 'rideId': rideId, 'rating': selectedRateItemId.toString(), 'comment': comment.text, }).then((value) { Get.offAll(const MapPage()); }); } } }