import 'package:doctor_app_flutter/utils/date-utils.dart';

class Prescriptions {
  String? setupID;
  int? projectID;
  int? patientID;
  int? appointmentNo;
  String? appointmentDate;
  String? doctorName;
  String? clinicDescription;
  String? name;
  int? episodeID;
  int? actualDoctorRate;
  int? admission;
  int? clinicID;
  String? companyName;
  String? despensedStatus;
  DateTime? dischargeDate;
  int? dischargeNo;
  int? doctorID;
  String? doctorImageURL;
  int? doctorRate;
  String? doctorTitle;
  int? gender;
  String? genderDescription;
  bool? isActiveDoctorProfile;
  bool? isDoctorAllowVedioCall;
  bool? isExecludeDoctor;
  bool? isInOutPatient;
  bool? isLiveCareAppointment;
  String? isInOutPatientDescription;
  String? isInOutPatientDescriptionN;
  bool? isInsurancePatient;
  String? nationalityFlagURL;
  int? noOfPatientsRate;
  String? qR;
  List<String>? speciality;

  Prescriptions(
      {this.setupID,
      this.projectID,
      this.patientID,
      this.appointmentNo,
      this.appointmentDate,
      this.doctorName,
      this.clinicDescription,
      this.name,
      this.episodeID,
      this.actualDoctorRate,
      this.admission,
      this.clinicID,
      this.companyName,
      this.despensedStatus,
      this.dischargeDate,
      this.dischargeNo,
      this.doctorID,
      this.doctorImageURL,
      this.doctorRate,
      this.doctorTitle,
      this.gender,
      this.genderDescription,
      this.isActiveDoctorProfile,
      this.isDoctorAllowVedioCall,
      this.isExecludeDoctor,
      this.isInOutPatient,
      this.isInOutPatientDescription,
      this.isInOutPatientDescriptionN,
      this.isInsurancePatient,
      this.nationalityFlagURL,
      this.noOfPatientsRate,
      this.qR,
      this.speciality,
      this.isLiveCareAppointment});

  Prescriptions.fromJson(Map<String, dynamic> json) {
    setupID = json['SetupID'];
    projectID = json['ProjectID'];
    patientID = json['PatientID'];
    appointmentNo = json['AppointmentNo'];
    appointmentDate = json['AppointmentDate'];
    doctorName = json['DoctorName'];
    clinicDescription = json['ClinicDescription'];
    name = json['Name'];
    episodeID = json['EpisodeID'];
    actualDoctorRate = json['ActualDoctorRate'];
    admission = json['Admission'];
    clinicID = json['ClinicID'];
    companyName = json['CompanyName'];
    despensedStatus = json['Despensed_Status'];
    dischargeDate = AppDateUtils.convertStringToDate(json['DischargeDate']);
    dischargeNo = json['DischargeNo'];
    doctorID = json['DoctorID'];
    doctorImageURL = json['DoctorImageURL'];
    doctorRate = json['DoctorRate'];
    doctorTitle = json['DoctorTitle'];
    gender = json['Gender'];
    genderDescription = json['GenderDescription'];
    isActiveDoctorProfile = json['IsActiveDoctorProfile'];
    isDoctorAllowVedioCall = json['IsDoctorAllowVedioCall'];
    isExecludeDoctor = json['IsExecludeDoctor'];
    isInOutPatient = json['IsInOutPatient'];
    isInOutPatientDescription = json['IsInOutPatientDescription'];
    isInOutPatientDescriptionN = json['IsInOutPatientDescriptionN'];
    isInsurancePatient = json['IsInsurancePatient'];
    nationalityFlagURL = json['NationalityFlagURL'];
    noOfPatientsRate = json['NoOfPatientsRate'];
    qR = json['QR'];
    isLiveCareAppointment = json['IsLiveCareAppointment'];
    // speciality = json['Speciality'].cast<String>();
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['SetupID'] = this.setupID;
    data['ProjectID'] = this.projectID;
    data['PatientID'] = this.patientID;
    data['AppointmentNo'] = this.appointmentNo;
    data['AppointmentDate'] = this.appointmentDate;
    data['DoctorName'] = this.doctorName;
    data['ClinicDescription'] = this.clinicDescription;
    data['Name'] = this.name;
    data['EpisodeID'] = this.episodeID;
    data['ActualDoctorRate'] = this.actualDoctorRate;
    data['Admission'] = this.admission;
    data['ClinicID'] = this.clinicID;
    data['CompanyName'] = this.companyName;
    data['Despensed_Status'] = this.despensedStatus;
    data['DischargeDate'] = this.dischargeDate;
    data['DischargeNo'] = this.dischargeNo;
    data['DoctorID'] = this.doctorID;
    data['DoctorImageURL'] = this.doctorImageURL;
    data['DoctorRate'] = this.doctorRate;
    data['DoctorTitle'] = this.doctorTitle;
    data['Gender'] = this.gender;
    data['GenderDescription'] = this.genderDescription;
    data['IsActiveDoctorProfile'] = this.isActiveDoctorProfile;
    data['IsDoctorAllowVedioCall'] = this.isDoctorAllowVedioCall;
    data['IsExecludeDoctor'] = this.isExecludeDoctor;
    data['IsInOutPatient'] = this.isInOutPatient;
    data['IsInOutPatientDescription'] = this.isInOutPatientDescription;
    data['IsInOutPatientDescriptionN'] = this.isInOutPatientDescriptionN;
    data['IsInsurancePatient'] = this.isInsurancePatient;
    data['NationalityFlagURL'] = this.nationalityFlagURL;
    data['NoOfPatientsRate'] = this.noOfPatientsRate;
    data['QR'] = this.qR;
    data['Speciality'] = this.speciality;
    data['IsLiveCareAppointment'] = this.isLiveCareAppointment;
    return data;
  }
}

class PrescriptionsList {
  String? filterName = "";
  List<Prescriptions>? prescriptionsList = [];

  PrescriptionsList({this.filterName, Prescriptions? prescriptions}) {
    prescriptionsList!.add(prescriptions!);
  }
}
