import 'dart:convert';

import 'package:siro_driver/constant/box_name.dart';
import 'package:siro_driver/constant/links.dart';
import 'package:siro_driver/controller/functions/crud.dart';
import 'package:siro_driver/main.dart';
import 'package:siro_driver/views/widgets/error_snakbar.dart';
import 'package:get/get.dart';

class AssuranceHealthController extends GetxController {
  bool isLoading = false;
  Map tripCount = {};

  Future getTripCountByCaptain() async {
    var res = await CRUD().get(link: AppLink.getTripCountByCaptain, payload: {
      "driver_id": box.read(BoxName.driverID).toString(),
    });
    if (res != 'failure') {
      tripCount = jsonDecode(res)['message'];
      update();
    }
  }

  Future<void> addDriverHealthAssurance({
    String? driverId,
    String? assured,
    required String healthInsuranceProvider,
  }) async {
    // Define the URL to your PHP backend

    // Data to be sent to the backend
    Map<String, String> data = {
      "driver_id": box.read(BoxName.driverID).toString(),
      "assured": '1',
      "health_insurance_provider": healthInsuranceProvider,
    };

    try {
      // Send the POST request to your backend
      var response = await CRUD()
          .post(link: AppLink.addHealthInsuranceProvider, payload: data);

      if (response != 'failure') {
        // Handle success (e.g., show a success message)

        mySnackbarSuccess(
            "You have successfully opted for health insurance.".tr);
      } else {
        // Handle failure (e.g., show an error message)
        print("Failed to save health assurance data");
        mySnackeBarError("Please enter a health insurance status.".tr);
      }
    } catch (e) {
      // Handle any errors
      print("Error: $e");
    }
  }
}
