class RegisterUserRequest {
  Patientobject? patientobject;
  String? patientIdentificationID;
  dynamic patientMobileNumber;
  String? logInTokenID;
  double? versionID;
  int? channel;
  int? languageID;
  String? iPAdress;
  String? generalid;
  int? patientOutSA;
  dynamic sessionID;
  bool? isDentalAllowedBackend;
  int? deviceTypeID;
  String? dob;
  int? isHijri;
  String? healthId;
  String? zipCode;
  // String? occupationID;

  RegisterUserRequest(
      {this.patientobject,
      this.patientIdentificationID,
      this.patientMobileNumber,
      this.logInTokenID,
      this.versionID,
      this.channel,
      this.languageID,
      this.iPAdress,
      this.generalid,
      this.patientOutSA,
      this.sessionID,
      this.isDentalAllowedBackend,
      this.deviceTypeID,
      this.dob,
      this.isHijri,
      this.healthId,
      this.zipCode,
      // this.occupationID
      });

  RegisterUserRequest.fromJson(Map<String, dynamic> json) {
    patientobject = json['Patientobject'] != null ? new Patientobject.fromJson(json['Patientobject']) : null;
    patientIdentificationID = json['PatientIdentificationID'];
    patientMobileNumber = json['PatientMobileNumber'];
    logInTokenID = json['LogInTokenID'];
    versionID = json['VersionID'];
    channel = json['Channel'];
    languageID = json['LanguageID'];
    iPAdress = json['IPAdress'];
    generalid = json['generalid'];
    patientOutSA = json['PatientOutSA'];
    sessionID = json['SessionID'];
    isDentalAllowedBackend = json['isDentalAllowedBackend'];
    deviceTypeID = json['DeviceTypeID'];
    dob = json['DOB'];
    isHijri = json['IsHijri'];
    healthId = json['HealthId'];
    zipCode = json['ZipCode'];
    // occupationID = json['OccupationID'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.patientobject != null) {
      data['Patientobject'] = this.patientobject!.toJson();
    }
    data['PatientIdentificationID'] = this.patientIdentificationID;
    data['PatientMobileNumber'] = this.patientMobileNumber;
    data['LogInTokenID'] = this.logInTokenID;
    data['VersionID'] = this.versionID;
    data['Channel'] = this.channel;
    data['LanguageID'] = this.languageID;
    data['IPAdress'] = this.iPAdress;
    data['generalid'] = this.generalid;
    data['PatientOutSA'] = this.patientOutSA;
    data['SessionID'] = this.sessionID;
    data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
    data['DeviceTypeID'] = this.deviceTypeID;
    data['DOB'] = this.dob;
    data['IsHijri'] = this.isHijri;
    data['HealthId'] = this.healthId;
    data['ZipCode'] = this.zipCode;
    // data['OccupationID'] = this.occupationID;
    return data;
  }
}

class Patientobject {
  bool? tempValue;
  int? patientIdentificationType;
  String? patientIdentificationNo;
  dynamic mobileNumber;
  int? patientOutSA;
  String? firstName;
  String? middleName;
  String? lastName;
  String? firstNameN;
  String? middleNameN;
  String? lastNameN;
  dynamic strDateofBirth;
  String? dateofBirth;
  int? gender;
  String? nationalityID;
  String? eHealthIDField;
  String? dateofBirthN;
  String? emailAddress;
  String? sourceType;
  String? preferredLanguage;
  String? marital;
  // String? occupationID;

  Patientobject(
      {this.tempValue,
      this.patientIdentificationType,
      this.patientIdentificationNo,
      this.mobileNumber,
      this.patientOutSA,
      this.firstName,
      this.middleName,
      this.lastName,
      this.firstNameN,
      this.middleNameN,
      this.lastNameN,
      this.strDateofBirth,
      this.dateofBirth,
      this.gender,
      this.nationalityID,
      this.eHealthIDField,
      this.dateofBirthN,
      this.emailAddress,
      this.sourceType,
      this.preferredLanguage,
      this.marital,
      // this.occupationID
      });

  Patientobject.fromJson(Map<String, dynamic> json) {
    tempValue = json['TempValue'];
    patientIdentificationType = json['PatientIdentificationType'];
    patientIdentificationNo = json['PatientIdentificationNo'];
    mobileNumber = json['MobileNumber'];
    patientOutSA = json['PatientOutSA'];
    firstName = json['FirstName'];
    middleName = json['MiddleName'];
    lastName = json['LastName'];
    firstNameN = json['FirstNameN'];
    middleNameN = json['MiddleNameN'];
    lastNameN = json['LastNameN'];
    strDateofBirth = json['StrDateofBirth'];
    dateofBirth = json['DateofBirth'];
    gender = json['Gender'];
    nationalityID = json['NationalityID'];
    eHealthIDField = json['eHealthIDField'];
    dateofBirthN = json['DateofBirthN'];
    emailAddress = json['EmailAddress'];
    sourceType = json['SourceType'];

    preferredLanguage = json['PreferredLanguage'];
    marital = json['Marital'];
    // occupationID = json['OccupationID'] ?? "";
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['TempValue'] = this.tempValue;
    data['PatientIdentificationType'] = this.patientIdentificationType;
    data['PatientIdentificationNo'] = this.patientIdentificationNo;
    data['MobileNumber'] = this.mobileNumber;
    data['PatientOutSA'] = this.patientOutSA;
    data['FirstName'] = this.firstName;
    data['MiddleName'] = this.middleName;
    data['LastName'] = this.lastName;
    data['FirstNameN'] = this.firstNameN;
    data['MiddleNameN'] = this.middleNameN;
    data['LastNameN'] = this.lastNameN;
    data['StrDateofBirth'] = this.strDateofBirth;
    data['DateofBirth'] = this.dateofBirth;
    data['Gender'] = this.gender;
    data['NationalityID'] = this.nationalityID;
    data['eHealthIDField'] = this.eHealthIDField;
    data['DateofBirthN'] = this.dateofBirthN;
    data['EmailAddress'] = this.emailAddress;
    data['SourceType'] = this.sourceType;
    data['PreferredLanguage'] = this.preferredLanguage;
    data['Marital'] = this.marital;
    // data['OccupationID'] = this.occupationID;
    return data;
  }
}
