import 'package:diplomaticquarterapp/models/Appointments/AppoimentAllHistoryResultList.dart';

import '../google-analytics.dart';

class TodoList{

  final GALogger logger;
  TodoList(this.logger);

  // R047.1
  to_do_list_pay_now(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_pay_now', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R047.2
  to_do_list_more_details(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_more_details', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R048
  to_do_list_confirm_payment_details(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_confirm_payment_details', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R048
  to_do_list_cancel_payment_details(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_cancel_payment_details', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }



  // R049.2
  to_do_list_cancel_appointment(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_cancel_appointment', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R049.3
  to_do_list_confirm_appointment(AppoitmentAllHistoryResultList appointment){
    logger('confirm_appointment', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'flow_type' : 'todo list',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R050
  to_do_list_check_in(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_check_in', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R051
  to_do_list_nfc(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_nfc', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }

  // R052
  to_do_list_nfc_cancel(AppoitmentAllHistoryResultList appointment){
    logger('to_do_list_nfc_cancel', parameters: {
      'appointment_type' : appointment.isLiveCareAppointment ? 'livecare' : 'regular',
      'clinic_type_online' : appointment.clinicName,
      'hospital_name' : appointment.projectName,
      'doctor_name' : (appointment.doctorName == null || appointment.doctorName == '') ?  appointment.doctorNameObj : appointment.doctorName,
      'payment_type' : 'appointment',
    });
  }
}