class ServiceUserModel { AboutPatient aboutPatient = AboutPatient.empty(); String id = ""; String suLastName = ""; String suFirstMiddleName = ""; String suPreferredName = ""; String name = ""; String suSsn = ""; String providerName = ""; String suSex = ""; String suTitle = ""; DateTime suDob = DateTime.now(); String suAge = ""; String suReferredBy = ""; String suFamilyHead = ""; String suAddress1 = ""; String suAddress2 = ""; String suCity = ""; String suState = ""; String suZip = ""; DateTime suFirstVisitDate = DateTime.now(); DateTime suLastVisitDate = DateTime.now(); List suProvider = []; bool currSu = false; String suHomePhone = ""; String suWorkPhone = ""; String suMobileHomeNo = ""; String suMobileWorkNo = ""; String suEmailHome = ""; String suEmailWork = ""; String suPrefHomeNo = ""; String suPrefWorkNo = ""; String suEmergencyContact = ""; String seMedicalAlert = ""; String suNote = ""; List diagnosises = []; String user = ""; List shifts = []; List serviceUserMedications = []; List homeVisitSignOut = []; List srUsShiftsRequired = []; List suEnquiries = []; bool active = false; DateTime createdAt = DateTime.now(); DateTime updatedAt = DateTime.now(); int v = 0; ServiceUserModel({ required this.aboutPatient, required this.id, required this.suLastName, required this.suFirstMiddleName, required this.suPreferredName, required this.name, required this.suSsn, required this.providerName, required this.suSex, required this.suTitle, required this.suDob, required this.suAge, required this.suReferredBy, required this.suFamilyHead, required this.suAddress1, required this.suAddress2, required this.suCity, required this.suState, required this.suZip, required this.suFirstVisitDate, required this.suLastVisitDate, required this.suProvider, required this.currSu, required this.suHomePhone, required this.suWorkPhone, required this.suMobileHomeNo, required this.suMobileWorkNo, required this.suEmailHome, required this.suEmailWork, required this.suPrefHomeNo, required this.suPrefWorkNo, required this.suEmergencyContact, required this.seMedicalAlert, required this.suNote, required this.diagnosises, required this.user, required this.shifts, required this.serviceUserMedications, required this.homeVisitSignOut, required this.srUsShiftsRequired, required this.suEnquiries, required this.active, required this.createdAt, required this.updatedAt, required this.v, }); String get phoneNo { if (suMobileWorkNo.isNotEmpty) { return suMobileWorkNo; } else if (suMobileHomeNo.isNotEmpty) { return suMobileHomeNo; } else if (suEmergencyContact.isNotEmpty) { return suEmergencyContact; } else if (suPrefHomeNo.isNotEmpty) { return suPrefHomeNo; } else if (suPrefWorkNo.isNotEmpty) { return suPrefWorkNo; } else if (suWorkPhone.isNotEmpty) { return suWorkPhone; } else if (suHomePhone.isNotEmpty) { return suHomePhone; } return "000000000000"; } String get nameOfUser { if (suFirstMiddleName.isNotEmpty) { return suFirstMiddleName; } else if (suLastName.isNotEmpty) { return suLastName; } else if (suPreferredName.isNotEmpty) { return suPreferredName; } else if (name.isNotEmpty) { return name; } return "Name"; } String get homeAddress { if (suAddress1.isNotEmpty) { return suAddress1; } else if (suAddress2.isNotEmpty) { return suAddress2; } return "Address"; } ServiceUserModel.empty(); ServiceUserModel.fromJson(Map json) { aboutPatient = json['aboutPatient'] != null ? AboutPatient.fromJson(json['aboutPatient']) : AboutPatient.empty(); id = json['_id'] ?? ""; suLastName = json['suLastName'] ?? ""; suFirstMiddleName = json['suFirstMiddleName'] ?? ""; suPreferredName = json['suPreferredName'] ?? ""; name = json['name'] ?? ""; suSsn = json['suSsn'] ?? ""; providerName = json['providerName'] ?? ""; suSex = json['suSex'] ?? ""; suTitle = json['suTitle'] ?? ""; suDob = json['suDOB'] != null ? DateTime.parse(json['suDOB']).toLocal() : DateTime.now(); suAge = json['suAge'] ?? ''; suReferredBy = json['suReferredBY'] ?? ""; suFamilyHead = json['suFamilyHead'] ?? ""; suAddress1 = json['suAddress1'] ?? ""; suAddress2 = json['suAddress2'] ?? ""; suCity = json['suCity'] ?? ""; suState = json['suState'] ?? ""; suZip = json['suZip'] ?? ""; suFirstVisitDate = json['suFirstVisitDate'] != null ? DateTime.parse(json['suFirstVisitDate']).toLocal() : DateTime.now(); suLastVisitDate = json['suLastVisitDate'] != null ? DateTime.parse(json['suLastVisitDate']).toLocal() : DateTime.now(); if (json['suProvider'] != null) { suProvider = []; json['suProvider'].forEach((v) { suProvider.add(v); }); } currSu = json['currSU'] ?? false; suHomePhone = json['suHomePhone'] ?? ''; suWorkPhone = json['suWorkPhone'] ?? ''; suMobileHomeNo = json['suMobileHomeNo'] ?? ''; suMobileWorkNo = json['suMobileWorkNo'] ?? ''; suEmailHome = json['suEmailHome'] ?? ''; suEmailWork = json['suEmailWork'] ?? ''; suPrefHomeNo = json['suPrefHomeNo'] ?? ''; suPrefWorkNo = json['suPrefWorkNo'] ?? ''; suEmergencyContact = json['suEmergencyContact'] ?? ''; seMedicalAlert = json['seMedicalAlert'] ?? ''; suNote = json['suNote'] ?? ''; if (json['diagnosises'] != null) { diagnosises = []; json['diagnosises'].forEach((v) { diagnosises.add(Diagnosise.fromJson(v)); }); } user = json['user'] ?? ""; if (json['shifts'] != null) { shifts = []; json['shifts'].forEach((v) { shifts.add(v); }); } if (json['serviceUserMedications'] != null) { serviceUserMedications = []; json['serviceUserMedications'].forEach((v) { serviceUserMedications.add(v); }); } if (json['homeVisitSignOut'] != null) { homeVisitSignOut = []; json['homeVisitSignOut'].forEach((v) { homeVisitSignOut.add(v); }); } if (json['srUsShiftsRequired'] != null) { srUsShiftsRequired = []; json['srUsShiftsRequired'].forEach((v) { srUsShiftsRequired.add(v); }); } if (json['suEnquiries'] != null) { suEnquiries = []; json['suEnquiries'].forEach((v) { suEnquiries.add(v); }); } active = json['active'] ?? false; createdAt = json['createdAt'] != null ? DateTime.parse(json['createdAt']).toLocal() : DateTime.now(); updatedAt = json['updatedAt'] != null ? DateTime.parse(json['updatedAt']).toLocal() : DateTime.now(); v = json['__v'] ?? 0; } Map toJson() { final Map data = {}; // data['aboutPatient'] = this.aboutPatient.toJson(); data['_id'] = id; data['suLastName'] = suLastName; data['suFirstMiddleName'] = suFirstMiddleName; data['suPreferredName'] = suPreferredName; data['name'] = name; data['suSsn'] = suSsn; data['providerName'] = providerName; data['suSex'] = suSex; data['suTitle'] = suTitle; data['suDOB'] = suDob; data['suAge'] = suAge; data['suReferredBY'] = suReferredBy; data['suFamilyHead'] = suFamilyHead; data['suAddress1'] = suAddress1; data['suAddress2'] = suAddress2; data['suCity'] = suCity; data['suState'] = suState; data['suZip'] = suZip; data['suFirstVisitDate'] = suFirstVisitDate; data['suLastVisitDate'] = suLastVisitDate; data['suProvider'] = suProvider.map((v) => v.toJson()).toList(); data['currSU'] = currSu; data['suHomePhone'] = suHomePhone; data['suWorkPhone'] = suWorkPhone; data['suMobileHomeNo'] = suMobileHomeNo; data['suMobileWorkNo'] = suMobileWorkNo; data['suEmailHome'] = suEmailHome; data['suEmailWork'] = suEmailWork; data['suPrefHomeNo'] = suPrefHomeNo; data['suPrefWorkNo'] = suPrefWorkNo; data['suEmergencyContact'] = suEmergencyContact; data['seMedicalAlert'] = seMedicalAlert; data['suNote'] = suNote; // data['diagnosises'] = this.diagnosises.map((v) => v.toJson()).toList(); data['user'] = user; data['shifts'] = shifts.map((v) => v.toJson()).toList(); data['serviceUserMedications'] = serviceUserMedications.map((v) => v.toJson()).toList(); data['homeVisitSignOut'] = homeVisitSignOut.map((v) => v.toJson()).toList(); data['srUsShiftsRequired'] = srUsShiftsRequired.map((v) => v.toJson()).toList(); data['suEnquiries'] = suEnquiries.map((v) => v.toJson()).toList(); data['active'] = active; data['createdAt'] = createdAt; data['updatedAt'] = updatedAt; data['__v'] = v; return data; } @override String toString() { return 'ServiceUserModel{aboutPatient: $aboutPatient, id: $id, suLastName: $suLastName, suFirstMiddleName: $suFirstMiddleName, suPreferredName: $suPreferredName, name: $name, suSsn: $suSsn, providerName: $providerName, suSex: $suSex, suTitle: $suTitle, suDob: $suDob, suAge: $suAge, suReferredBy: $suReferredBy, suFamilyHead: $suFamilyHead, suAddress1: $suAddress1, suAddress2: $suAddress2, suCity: $suCity, suState: $suState, suZip: $suZip, suFirstVisitDate: $suFirstVisitDate, suLastVisitDate: $suLastVisitDate, suProvider: $suProvider, currSu: $currSu, suHomePhone: $suHomePhone, suWorkPhone: $suWorkPhone, suMobileHomeNo: $suMobileHomeNo, suMobileWorkNo: $suMobileWorkNo, suEmailHome: $suEmailHome, suEmailWork: $suEmailWork, suPrefHomeNo: $suPrefHomeNo, suPrefWorkNo: $suPrefWorkNo, suEmergencyContact: $suEmergencyContact, seMedicalAlert: $seMedicalAlert, suNote: $suNote, diagnosises: $diagnosises, user: $user, shifts: $shifts, serviceUserMedications: $serviceUserMedications, homeVisitSignOut: $homeVisitSignOut, srUsShiftsRequired: $srUsShiftsRequired, suEnquiries: $suEnquiries, active: $active, createdAt: $createdAt, updatedAt: $updatedAt, v: $v}'; } } class AboutPatient { String aboutText = ""; DateTime aboutDate = DateTime.now(); String aboutBy = ""; AboutPatient({ required this.aboutText, required this.aboutDate, required this.aboutBy, }); AboutPatient.empty(); AboutPatient.fromJson(Map json) { aboutText = json['aboutText'] ?? ""; aboutDate = json['aboutDate'] != null ? DateTime.parse(json['aboutDate']).toLocal() : DateTime.now(); aboutBy = json['aboutBy'] ?? ""; } @override String toString() { return 'AboutPatient{aboutText: $aboutText, aboutDate: $aboutDate, aboutBy: $aboutBy}'; } } class Diagnosise { String diagnosisText = ""; DateTime diagnosisDate = DateTime.now(); String diagnosisBy = ""; bool isCurrentDiagnosis = false; String id = ""; Diagnosise({ required this.diagnosisText, required this.diagnosisDate, required this.diagnosisBy, required this.isCurrentDiagnosis, required this.id, }); Diagnosise.empty(); Diagnosise.fromJson(Map json) { diagnosisText = json['diagnosisText'] ?? ""; diagnosisDate = json['diagnosisDate'] != null ? DateTime.parse(json['diagnosisDate']).toLocal() : DateTime.now(); diagnosisBy = json['diagnosisBy'] ?? ""; isCurrentDiagnosis = json['isCurrentDiagnosis'] ?? false; id = json['_id'] ?? ""; } @override String toString() { return 'Diagnosise{diagnosisText: $diagnosisText, diagnosisDate: $diagnosisDate, diagnosisBy: $diagnosisBy, isCurrentDiagnosis: $isCurrentDiagnosis, id: $id}'; } }