private PidDto GetPidDto() { var pidDto = new PidDto { IdentifierTypeCodeset = IdentifierTypeCodeset.MedicalRecordNumber, // BirthDate is currently not required in the domain. // If BirthDate is not provided when an Hl7 message is generated an exception will be thrown. PatientDateOfBirth = _patient.Profile.BirthDate.Value, IdNumber = _patient.Key.ToString(), PatientAdministrativeSex = Hl7TypeConverter.ConvertToHl7(_patient.Profile.PatientGender), PatientEthnicity = _patient.Ethnicity == null ? null : Hl7TypeConverter.ConvertToHl7(_patient.Ethnicity.Ethnicity), PatientFirstName = _patient.Name.First, PatientMiddleName = _patient.Name.Middle, PatientLastName = _patient.Name.Last, }; return(pidDto); }
private static PidDto GetPidDto( Activity activity ) { var patient = activity.ClinicalCase.Patient; var pidDto = new PidDto { IdentifierTypeCodeset = IdentifierTypeCodeset.MedicalRecordNumber }; if ( patient.Profile.BirthDate.HasValue ) { pidDto.PatientDateOfBirth = patient.Profile.BirthDate.Value; } pidDto.IdNumber = patient.Key.ToString (); pidDto.PatientFirstName = patient.Name.First; if ( !string.IsNullOrWhiteSpace ( patient.Name.Middle ) ) { pidDto.PatientMiddleName = patient.Name.Middle; } pidDto.PatientLastName = patient.Name.Last; var patientAddress = patient.Addresses.FirstOrDefault (); if ( patientAddress != null ) { pidDto.PatientCity = patientAddress.Address.CityName; pidDto.PatientState = patientAddress.Address.StateProvince.ShortName; pidDto.PatientStreetAddress = ( string.IsNullOrWhiteSpace ( patientAddress.Address.FirstStreetAddress ) ? string.Empty : patientAddress.Address.FirstStreetAddress ) + ( string.IsNullOrWhiteSpace ( patientAddress.Address.SecondStreetAddress ) ? string.Empty : " " + patientAddress.Address.SecondStreetAddress ); pidDto.PatientZipCode = patientAddress.Address.PostalCode.Code; pidDto.PatientAddressType = Hl7TypeConverter.ConvertToHl7 ( patientAddress.PatientAddressType ); } pidDto.PatientAdministrativeSex = Hl7TypeConverter.ConvertToHl7 ( patient.Profile.PatientGender ); if ( patient.Ethnicity != null ) { pidDto.PatientEthnicity = Hl7TypeConverter.ConvertToHl7 ( patient.Ethnicity.Ethnicity ); } var patientPhoneNumber = patient.PhoneNumbers.FirstOrDefault (); if ( patientPhoneNumber != null ) { if ( patientPhoneNumber.PhoneNumber != null ) { var phoneNumber = patientPhoneNumber.PhoneNumber.Replace ( "-", string.Empty ); pidDto.PatientHomeTelephoneAreaCityCode = phoneNumber.Substring ( 0, 3 ); pidDto.PatientHomeTelephoneLocalNumber = phoneNumber.Substring ( 3, phoneNumber.Length - 3 ); } pidDto.PatientTelecommunicationUseCode = Hl7TypeConverter.ConvertToHl7 ( patientPhoneNumber.PatientPhoneType ); } var patientRace = patient.PrimaryPatientRace; if ( patientRace != null ) { pidDto.PatientRace = Hl7TypeConverter.ConvertToHl7 ( patientRace.Race ); } return pidDto; }
private PidDto GetPidDto() { var pidDto = new PidDto { IdentifierTypeCodeset = IdentifierTypeCodeset.MedicalRecordNumber, // BirthDate is currently not required in the domain. // If BirthDate is not provided when an Hl7 message is generated an exception will be thrown. PatientDateOfBirth = _patient.Profile.BirthDate.Value, IdNumber = _patient.Key.ToString (), PatientAdministrativeSex = Hl7TypeConverter.ConvertToHl7 ( _patient.Profile.PatientGender ), PatientEthnicity = _patient.Ethnicity == null ? null : Hl7TypeConverter.ConvertToHl7 ( _patient.Ethnicity.Ethnicity ), PatientFirstName = _patient.Name.First, PatientMiddleName = _patient.Name.Middle, PatientLastName = _patient.Name.Last, }; return pidDto; }
private static PidDto GetPidDto(Activity activity) { var patient = activity.ClinicalCase.Patient; var pidDto = new PidDto { IdentifierTypeCodeset = IdentifierTypeCodeset.MedicalRecordNumber }; if (patient.Profile.BirthDate.HasValue) { pidDto.PatientDateOfBirth = patient.Profile.BirthDate.Value; } pidDto.IdNumber = patient.Key.ToString(); pidDto.PatientFirstName = patient.Name.First; if (!string.IsNullOrWhiteSpace(patient.Name.Middle)) { pidDto.PatientMiddleName = patient.Name.Middle; } pidDto.PatientLastName = patient.Name.Last; var patientAddress = patient.Addresses.FirstOrDefault(); if (patientAddress != null) { pidDto.PatientCity = patientAddress.Address.CityName; pidDto.PatientState = patientAddress.Address.StateProvince.ShortName; pidDto.PatientStreetAddress = (string.IsNullOrWhiteSpace(patientAddress.Address.FirstStreetAddress) ? string.Empty : patientAddress.Address.FirstStreetAddress) + (string.IsNullOrWhiteSpace(patientAddress.Address.SecondStreetAddress) ? string.Empty : " " + patientAddress.Address.SecondStreetAddress); pidDto.PatientZipCode = patientAddress.Address.PostalCode.Code; pidDto.PatientAddressType = Hl7TypeConverter.ConvertToHl7(patientAddress.PatientAddressType); } pidDto.PatientAdministrativeSex = Hl7TypeConverter.ConvertToHl7(patient.Profile.PatientGender); if (patient.Ethnicity != null) { pidDto.PatientEthnicity = Hl7TypeConverter.ConvertToHl7(patient.Ethnicity.Ethnicity); } var patientPhoneNumber = patient.PhoneNumbers.FirstOrDefault(); if (patientPhoneNumber != null) { if (patientPhoneNumber.PhoneNumber != null) { var phoneNumber = patientPhoneNumber.PhoneNumber.Replace("-", string.Empty); pidDto.PatientHomeTelephoneAreaCityCode = phoneNumber.Substring(0, 3); pidDto.PatientHomeTelephoneLocalNumber = phoneNumber.Substring(3, phoneNumber.Length - 3); } pidDto.PatientTelecommunicationUseCode = Hl7TypeConverter.ConvertToHl7(patientPhoneNumber.PatientPhoneType); } var patientRace = patient.PrimaryPatientRace; if (patientRace != null) { pidDto.PatientRace = Hl7TypeConverter.ConvertToHl7(patientRace.Race); } return(pidDto); }