Example #1
0
        public override void InitializeEntity()
        {
            Item = SampleDataCache.AllergyItems[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.AllergyItems.Count - 1)];

            VertificationStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.AllergyIntolerance_Verificationstatus>();
            Severity            = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.AllergyIntolerance_Criticality>();
            Type = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.AllergyIntolerance_Type>();
        }
Example #2
0
        public override void InitializeEntity()
        {
            Description = SampleDataCache.ReferralRequests[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.ReferralRequests.Count - 1)];
            Status      = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Status>();
            Intent      = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Intent>();
            Priority    = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Priority>();

            SampleDataCache.RandomDateTime rdt = new SampleDataCache.RandomDateTime(2017, 1, 1, (DateTime.Today.AddDays(90)));
            OccurrendateDate = rdt.Next();
        }
Example #3
0
        public override void InitializeEntity()
        {
            Description = SampleDataCache.Procedures[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Procedures.Count - 1)];
            Status      = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Procedure_Status>();
            SubjectType = (int)HealthCDMEnums.Procedure_Subjecttype.Patient;

            SampleDataCache.RandomDateTime rdt = new SampleDataCache.RandomDateTime(2017, 1, 1, (DateTime.Today.AddDays(90)));

            ProcedureDateTime = rdt.Next();
        }
Example #4
0
        public override void InitializeEntity()
        {
            SampleDataCache.RandomDateTime rdt = new SampleDataCache.RandomDateTime(2017, 1, 1, DateTime.Today);

            orderName = SampleDataCache.NutrionOrders[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.NutrionOrders.Count - 1)];

            DateTime requestedDateTime = rdt.Next();

            orderDateTime = requestedDateTime;

            OrderStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.NutritionOrder_Status>();
        }
        public override void InitializeEntity()
        {
            Name           = SampleDataCache.Medications[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Medications.Count - 1)];
            Status         = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.MedicationRequest_Status>();
            Priority       = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.MedicationRequest_Priority>();
            MedicationType = (int)HealthCDMEnums.MedicationRequest_Medicationtype.MedicationReference;

            SampleDataCache.RandomDateTime rdt = new SampleDataCache.RandomDateTime(2017, 1, 1, DateTime.Today);
            authoredOn = rdt.Next();

            SubjectType = (int)HealthCDMEnums.MedicationRequest_Subjecttype.Patient;
        }
        public override void InitializeEntity()
        {
            Description = SampleDataCache.Procedures[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Procedures.Count - 1)];
            Status      = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Procedure_Status>();
            SubjectType = (int)HealthCDMEnums.Procedure_Subjecttype.Patient;

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, (DateTime.Today.AddDays(90)));

            ProcedureDateTime = rdt.Next();
            identifier        = GenerateRandomNumber(8);

            NotDone = int.Parse(GenerateRandomNumber(1)) > 5 ? true : false;
        }
        public override void InitializeEntity()
        {
            DeviceNumber = GenerateDeviceNumber();
            Version      = GenerateDeviceVersion();
            Model        = GenerateModelNumber();

            SampleDataCache.RandomDateTime rdt = new SampleDataCache.RandomDateTime(2017, 1, 1, new DateTime(2022, 1, 1));

            ExpirationDate = rdt.Next();

            Name         = SampleDataCache.Devices[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Devices.Count - 1)];
            DeviceStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Device_Devicestatus>();
        }
Example #8
0
        public override void InitializeEntity()
        {
            ContextType = (int)HealthCDMEnums.CarePlan_Contexttype.Encounter;
            SubjectType = (int)HealthCDMEnums.CarePlan_Subjecttype.Patient;
            Intent      = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.CarePlan_Planintent>();

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2013, 1, 1, DateTime.Today);

            DateTime startDate = rdt.Next();
            DateTime endDate   = rdt.AddYears(startDate, 5, 10);

            StartDate = startDate;
            EndDate   = endDate;
        }
        public override void InitializeEntity()
        {
            EncounterClass = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Encounter_Class>();

            HospitalizationPreadmissionNumber = GenerateRandomNumber(12);
            EncounterIdentifier = GenerateRandomNumber(15);

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, DateTime.Today);

            DateTime startDate = rdt.Next();
            DateTime endDate   = rdt.AddYears(startDate, 1, 2);

            EncounterStartDate = startDate;
            EncounterEndDate   = endDate;
        }
Example #10
0
        public override void InitializeEntity()
        {
            Description           = SampleDataCache.ReferralRequests[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.ReferralRequests.Count - 1)];
            Status                = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Status>();
            Intent                = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Intent>();
            Priority              = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Priority>();
            ContextType           = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.ReferralRequest_Contexttype>();
            Subject               = (int)HealthCDMEnums.ReferralRequest_Subject.Patient;
            ReferralRequestNumber = GenerateRandomNumber(8);
            RequestAgent          = (int)HealthCDMEnums.ReferralRequest_Requesteragent.Practitioner;
            OccurrenceType        = (int)HealthCDMEnums.ReferralRequest_Occurrencetype.Date;

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, (DateTime.Today.AddDays(90)));
            OccurrendateDate = rdt.Next();
        }
Example #11
0
        public override void InitializeEntity()
        {
            DeviceNumber = GenerateDeviceNumber();
            Version      = GenerateDeviceVersion();
            Model        = SampleDataCache.DeviceModels[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.DeviceModels.Count - 1)];;
            Manufacturer = SampleDataCache.Manufacturers[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Manufacturers.Count - 1)];;

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, new DateTime(2022, 1, 1));

            ExpirationDate   = rdt.Next();
            ManufacturedDate = rdt.Next();

            Name         = SampleDataCache.Devices[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Devices.Count - 1)];
            DeviceStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Device_Devicestatus>();

            CarrierAIDC = GenerateCarrierAIDC();
        }
Example #12
0
        public override void InitializeEntity()
        {
            DosageDose         = int.Parse(GenerateRandomNumber(1));
            DosageRateQuantity = 1;

            DosageRateType = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Dosage_Dosetype>();

            SubjectType = (int)HealthCDMEnums.MedicationAdministration_Subjecttype.Patient;

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, DateTime.Today);

            DateTime startDate = rdt.Next();
            DateTime endDate   = rdt.AddDays(startDate, 10, 20);

            StartDate = startDate;
            EndDate   = endDate;
        }
        public override void InitializeEntity()
        {
            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, DateTime.Today);

            orderName = SampleDataCache.NutrionOrders[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.NutrionOrders.Count - 1)];

            DateTime requestedDateTime = rdt.Next();

            orderDateTime = requestedDateTime;

            OrderStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.NutritionOrder_Status>();

            NutritioOrderNumber = GenerateRandomNumber(8);

            MaxVolumeToDeliver = int.Parse(GenerateRandomNumber(1));

            CaloricDensity = int.Parse(GenerateRandomNumber(2));
        }
        public override void InitializeEntity()
        {
            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2010, 1, 1, DateTime.Today);

            DateTime startDate = rdt.Next();

            subjectType = (int)HealthCDMEnums.Condition_Subjecttype.Patient;
            OnsetDate   = startDate;

            Description = SampleDataCache.Conditions[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Conditions.Count - 1)];
            OnsetType   = (int)HealthCDMEnums.Condition_Onsettype.Age;

            OnsetAge = int.Parse(GenerateRandomNumber(2));

            ContextType    = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Condition_Contexttype>();
            ClinicalStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Condition_Clinicalstatus>();

            AsserterId = PatientId;
            AssertDate = DateTime.Now;
        }
        public override void InitializeEntity()
        {
            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, DateTime.Today);

            DateTime startDate = rdt.Next();
            DateTime endDate   = rdt.AddHours(startDate, 1, 2);

            AppointmentStartDateTime = startDate;
            AppointmentEndDateTime   = endDate;

            ParticipantActorType = (int)HealthCDMEnums.AppointmentEMRParticipant_Participantactortype.Patient;
            ParticipantStatus    = (int)HealthCDMEnums.AppointmentEMR_Participantstatus.Accepted;

            Priority     = int.Parse(GenerateRandomNumber(1));
            PriorityCode = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.AppointmentEMR_Prioritycode>();

            MinutesDuration = int.Parse(GenerateRandomNumber(2));

            Instructions      = "Enter through location specified to office";
            regardingObjectId = patientId;
        }
        public override void InitializeEntity()
        {
            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2018, 1, 1, DateTime.Today);

            DateTime startDate = rdt.Next();
            DateTime endDate   = rdt.AddDays(startDate, 5, 10);

            StartDate = startDate;
            EndDate   = endDate;

            IssuedDate = rdt.Next();

            DeviceType = (int)HealthCDMEnums.Observation_Devicetype.Device;

            ValueTypeQuantityComparator = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Observation_Valuerationumeratorcomparator>();
            ValueTypeQuantityValue      = int.Parse(GenerateRandomNumber(2));

            EffectiveType     = (int)HealthCDMEnums.Observation_Effectivetype.Datetime;
            EffectiveDateTime = rdt.Next();

            ContextType = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Observation_Contexttype>();
        }
        public override void InitializeEntity()
        {
            Name           = SampleDataCache.Medications[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Medications.Count - 1)];
            Status         = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.MedicationRequest_Status>();
            Priority       = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.MedicationRequest_Priority>();
            MedicationType = (int)HealthCDMEnums.MedicationRequest_Medicationtype.MedicationReference;

            SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2017, 1, 1, DateTime.Today);
            authoredOn = rdt.Next();

            SubjectType        = (int)HealthCDMEnums.MedicationRequest_Subjecttype.Patient;
            RequestorAgentType = (int)HealthCDMEnums.MedicationRequest_Requesteragenttype.Practitioner;
            intent             = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.MedicationRequest_Intent>();

            DateTime startDate = rdt.Next();
            DateTime endDate   = rdt.AddYears(startDate, 1, 2);

            PeriodStartDate = startDate;
            PeriodEndDate   = endDate;

            Refills       = SampleDataCache.SelectRandomItem.Next(1, 3);
            DispenseCount = SampleDataCache.SelectRandomItem.Next(1, 2);
        }
Example #18
0
        /// <summary>
        /// Generation interactions based on a #
        /// </summary>
        /// <param name="profiles">the number of profiles to create</param>
        /// <returns>Give back a list of the speicfic type of interactions generated</returns>
        public static new List <Profile> GenerateProfilesByCount(int profiles, object configuration)
        {
            try
            {
                SampleDataCache.InitializeDataCache();

                List <Profile>       listPatients = new List <Profile>();
                List <RelatedPerson> listRelatedPersons;
                List <Practitioner>  listPractitioners;
                List <Organization>  listOrganizations = null;

                //SampleDataCache.RandomDateTime birthDayrdt = new SampleDataCache.RandomDateTime(1955, 1, 1, new DateTime(2000, 1, 1));

                for (int i = 0; i < profiles; i++)
                {
                    ////generate our fake data
                    Patient a = new Patient();

                    a.PatientConfiguration = ((PatientConfiguration)(configuration));

                    int maleorfemale = SampleDataCache.SelectRandomItem.Next(1, 100);

                    a.FirstName = maleorfemale < 50 ? SampleDataCache.Malenames[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Malenames.Count - 1)] : SampleDataCache.Femalenames[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Femalenames.Count - 1)];
                    a.LastName  = SampleDataCache.Lastnames[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Lastnames.Count - 1)];

                    SampleDataCache.AddressInfo addressInfo = SampleDataCache.AddressInfos[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.AddressInfos.Count - 1)];

                    // Now set the Emergency and Primary Contact etc
                    string practitionersfile  = a.PatientConfiguration.PractionerFileName;
                    string relatedpersonsfile = a.PatientConfiguration.RelatedPersonsFileName;
                    string locationsfile      = a.patientConfiguration.LocationsFileName;
                    string organizationsfile  = a.patientConfiguration.AccountsFileName;

                    if (!string.IsNullOrEmpty(locationsfile))
                    {
                        // this will get used in multiple places lower on
                        a.Locations = Location.ImportProfiles(locationsfile);
                    }

                    if (!string.IsNullOrEmpty(organizationsfile))
                    {
                        // this will get used in multiple places lower on
                        listOrganizations = Organization.ImportProfiles(organizationsfile);
                    }

                    if (!string.IsNullOrEmpty(relatedpersonsfile))
                    {
                        listRelatedPersons = RelatedPerson.ImportProfiles(relatedpersonsfile);

                        if (listRelatedPersons != null)
                        {
                            Profile emergencyContact = listRelatedPersons[SampleDataCache.SelectRandomItem.Next(0, listRelatedPersons.Count - 1)];
                            Profile primaryContact   = listRelatedPersons[SampleDataCache.SelectRandomItem.Next(0, listRelatedPersons.Count - 1)];

                            a.EmergencyContactId = emergencyContact.ContactId;
                            a.PrimaryContactId   = primaryContact.ContactId;

                            a.EmergencyContactRelationshipTypeId = SampleDataCache.RelatedPersonTypes[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.RelatedPersonTypes.Count - 1)];
                            a.PrimaryContactRelationshipTypeId   = SampleDataCache.RelatedPersonTypes[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.RelatedPersonTypes.Count - 1)];
                        }
                    }

                    if (!string.IsNullOrEmpty(practitionersfile))
                    {
                        listPractitioners = Practitioner.ImportProfiles(practitionersfile);

                        if (listPractitioners != null)
                        {
                            Profile primaryPractitioner = listPractitioners[SampleDataCache.SelectRandomItem.Next(0, listPractitioners.Count - 1)];

                            a.PrimaryPractitionerId = primaryPractitioner.ContactId;
                        }
                    }

                    if (a.PatientConfiguration.AllergyIntoleranceCount > 0)
                    {
                        for (int iAllergies = 0; iAllergies < a.PatientConfiguration.AllergyIntoleranceCount; iAllergies++)
                        {
                            AllergyIntolerance ai = new AllergyIntolerance();
                            a.AllergyIntolerances.Add(ai);
                        }
                    }

                    if (a.PatientConfiguration.NutritionOrderCount > 0)
                    {
                        for (int iNutritionOrders = 0; iNutritionOrders < a.PatientConfiguration.NutritionOrderCount; iNutritionOrders++)
                        {
                            NutritionOrder no = new NutritionOrder();
                            a.NutritionOrders.Add(no);
                        }
                    }


                    if (a.PatientConfiguration.ConditionCount > 0)
                    {
                        for (int iConditions = 0; iConditions < a.PatientConfiguration.ConditionCount; iConditions++)
                        {
                            Condition condition = new Condition();

                            condition.VerificationStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Condition_Verificationstatus>();
                            a.Conditions.Add(condition);
                        }
                    }

                    if (a.PatientConfiguration.DeviceCount > 0)
                    {
                        for (int iDevice = 0; iDevice < a.PatientConfiguration.DeviceCount; iDevice++)
                        {
                            Device device = new Device();

                            if (a.Locations != null)
                            {
                                Location location = a.Locations[SampleDataCache.SelectRandomItem.Next(0, a.Locations.Count - 1)];

                                device.LocationId = location.LocationId;
                            }

                            a.Devices.Add(device);
                        }
                    }

                    if (a.PatientConfiguration.ProcedureCount > 0)
                    {
                        for (int iProcedure = 0; iProcedure < a.PatientConfiguration.ProcedureCount; iProcedure++)
                        {
                            Procedure procedure = new Procedure();

                            if (a.Locations != null)
                            {
                                Location location = a.Locations[SampleDataCache.SelectRandomItem.Next(0, a.Locations.Count - 1)];

                                procedure.LocationId = location.LocationId;
                            }

                            a.Procedures.Add(procedure);
                        }
                    }

                    if (a.PatientConfiguration.ReferralCount > 0)
                    {
                        for (int iReferral = 0; iReferral < a.PatientConfiguration.ReferralCount; iReferral++)
                        {
                            ReferralRequest request = new ReferralRequest();
                            a.ReferralRequests.Add(request);
                        }
                    }

                    // COMPLETE THIS ONE THE ENCOUNTERS ARE DONE
                    if (a.PatientConfiguration.MedicationCount > 0)
                    {
                        for (int iMedication = 0; iMedication < a.PatientConfiguration.MedicationCount; iMedication++)
                        {
                            MedicationRequest medication = new MedicationRequest();
                            a.MedicationRequests.Add(medication);
                        }
                    }

                    if (a.PatientConfiguration.EpisodesOfCareCount > 0)
                    {
                        for (int iEpisode = 0; iEpisode < a.PatientConfiguration.EpisodesOfCareCount; iEpisode++)
                        {
                            EpisodeOfCare episode = new EpisodeOfCare();

                            episode.PractitionerId = a.PrimaryPractitionerId;
                            episode.Description    = a.FullName + " - Episode of Care";
                            episode.AccountId      = listOrganizations[SampleDataCache.SelectRandomItem.Next(0, listOrganizations.Count - 1)].OrganizationId;

                            a.EpisodesOfCare.Add(episode);
                        }
                    }

                    if (a.PatientConfiguration.EncountersCount > 0)
                    {
                        for (int iEncounter = 0; iEncounter < a.PatientConfiguration.EncountersCount; iEncounter++)
                        {
                            Encounter encounter = new Encounter();

                            if (a.Locations != null)
                            {
                                Location location = a.Locations[SampleDataCache.SelectRandomItem.Next(0, a.Locations.Count - 1)];

                                encounter.HospitalizationOriginId      = location.LocationId;
                                encounter.HospitalizationDestinationId = location.LocationId;
                            }

                            a.Encounters.Add(encounter);
                        }
                    }

                    if (a.PatientConfiguration.AppointmentCount > 0)
                    {
                        for (int iAppointment = 0; iAppointment < a.PatientConfiguration.AppointmentCount; iAppointment++)
                        {
                            Appointment appointment = new Appointment();


                            if (a.Locations != null)
                            {
                                Location location = a.Locations[SampleDataCache.SelectRandomItem.Next(0, a.Locations.Count - 1)];

                                appointment.LocationId = location.LocationId;
                            }

                            appointment.PractitionerId = a.PrimaryPractitionerId;

                            a.Appointments.Add(appointment);
                        }
                    }

                    if (a.PatientConfiguration.CarePlanCount > 0)
                    {
                        CarePlan careplan = new CarePlan();

                        a.Careplans.Add(careplan);
                    }


                    if (a.PatientConfiguration.CareTeamCount > 0)
                    {
                        CareTeam team = new CareTeam();

                        a.Careteams.Add(team);
                    }

                    if (a.PatientConfiguration.RiskAssessmentCount > 0)
                    {
                        for (int iAssessment = 0; iAssessment < a.PatientConfiguration.RiskAssessmentCount; iAssessment++)
                        {
                            RiskAssessment assessment = new RiskAssessment();

                            a.RiskAssessments.Add(assessment);
                        }
                    }

                    if (a.PatientConfiguration.SpecimenCount > 0)
                    {
                        for (int iSpecimen = 0; iSpecimen < a.PatientConfiguration.SpecimenCount; iSpecimen++)
                        {
                            Specimen specimen = new DataModel.Specimen();
                            a.Specimens.Add(specimen);
                        }
                    }

                    if (a.PatientConfiguration.TaskCount > 0)
                    {
                        for (int iTask = 0; iTask < a.PatientConfiguration.TaskCount; iTask++)
                        {
                            PatientTask task = new PatientTask();
                            a.Tasks.Add(task);
                        }
                    }

                    if (a.PatientConfiguration.ProductCount > 0)
                    {
                        for (int iProduct = 0; iProduct < a.PatientConfiguration.ProductCount; iProduct++)
                        {
                            Medication product = new Medication();
                            a.Products.Add(product);
                        }
                    }

                    a.PrimaryLanguageCode = SampleDataCache.CodeableConcepts[HealthCDMEnums.CodeableConcept_Type.Language.ToString()]
                                            .Values.ElementAt(SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.CodeableConcepts[HealthCDMEnums.CodeableConcept_Type.Language.ToString()]
                                                                                                    .Values.Count - 1)).Key;


                    a.Address1City            = addressInfo.City;
                    a.Address1Country         = addressInfo.Country;
                    a.Address1Line1           = addressInfo.Address;
                    a.Telephone1              = addressInfo.Areacode + "-" + addressInfo.Telephone; //(business)
                    a.MobilePhone             = addressInfo.Areacode + "-" + addressInfo.Telephone;
                    a.Telephone2              = addressInfo.Areacode + "-" + addressInfo.Telephone; //(home)
                    a.Address1PostalCode      = addressInfo.Zipcode;
                    a.Address1StateOrProvince = addressInfo.State;
                    a.Age                  = SampleDataCache.SelectRandomItem.Next(18, 100);
                    a.EmailAddress1        = a.FirstName + "_" + a.LastName + "@testlive.com";
                    a.FullName             = a.FirstName + " " + a.LastName;
                    a.GenderCode           = maleorfemale < 50 ? (int)ContactGenderCode.Male : (int)ContactGenderCode.Female;
                    a.Salutation           = maleorfemale < 50 ? "Mr." : "Mrs.";
                    a.CDMContactType       = ProfileType.Patient;
                    a.PatientMedicalNumber = GenerateMedicalNumber();
                    a.BirthDate            = birthDayRandomGenerator.Next();

                    listPatients.Add(a);
                }

                return(listPatients);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString());
            }
        }
Example #19
0
        public static new List <Profile> GenerateProfilesByCount(int profiles, object configuration)
        {
            try
            {
                string accountsFile = (string)configuration;

                SampleDataCache.InitializeDataCache();
                SampleDataCache.GenerateRandomDateTime rdt = new SampleDataCache.GenerateRandomDateTime(2010, 1, 1, DateTime.Today);

                List <Profile>      listAccounts = new List <Profile>();
                List <Organization> listOrganizations;

                for (int i = 0; i < profiles; i++)
                {
                    Location a = new Location();

                    SampleDataCache.AddressInfo addressInfo = SampleDataCache.AddressInfos[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.AddressInfos.Count - 1)];

                    a.Name = SampleDataCache.Accounts[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Accounts.Count - 1)];

                    a.Address1City            = addressInfo.City;
                    a.Address1Country         = addressInfo.Country;
                    a.Address1Line1           = addressInfo.Address;
                    a.Address1PostalCode      = addressInfo.Zipcode;
                    a.Address1StateOrProvince = addressInfo.State;

                    a.PeriodStart = rdt.Next();
                    a.PeriodEnd   = rdt.AddYears(a.PeriodStart, 5, 10);

                    a.AddressType = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Location_Addresstype>();
                    a.AddressUse  = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Location_Addressuse>();

                    a.LocationNumber = GenerateRandomNumber(10);

                    a.Mode = (int)HealthCDMEnums.Location_Mode.instance;
                    //a.OrganizationId = (string)configuration;

                    a.OperationalStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Location_Operationalstatus>();

                    //a.LocationType = SampleDataCache.Accounts[SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.Accounts.Count - 1)];
                    a.LocationType = SampleDataCache.CodeableConcepts[HealthCDMEnums.CodeableConcept_Type.LocationType.ToString()]
                                     .Values.ElementAt(SampleDataCache.SelectRandomItem.Next(0, SampleDataCache.CodeableConcepts[HealthCDMEnums.CodeableConcept_Type.LocationType.ToString()]
                                                                                             .Values.Count - 1)).Key;

                    if (!string.IsNullOrEmpty(accountsFile))
                    {
                        listOrganizations = Organization.ImportProfiles(accountsFile);

                        if (listOrganizations != null)
                        {
                            Organization account = listOrganizations[SampleDataCache.SelectRandomItem.Next(0, listOrganizations.Count - 1)];

                            a.OrganizationId = account.OrganizationId;
                        }
                    }

                    listAccounts.Add(a);
                }

                return(listAccounts);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString());
            }
        }
Example #20
0
        /// <summary>
        /// Generation interactions based on a #
        /// </summary>
        /// <param name="profiles">the number of profiles to create</param>
        /// <returns>Give back a list of the speicfic type of interactions generated</returns>
        public static new List <Profile> GenerateProfilesByCount(int profiles, object configuration)
        {
            try
            {
                SampleDataCache.InitializeFakeDataHelpers();

                List <Profile>       listPatients = new List <Profile>();
                List <RelatedPerson> listRelatedPersons;
                List <Practitioner>  listPractitioners;

                //SampleDataCache.RandomDateTime birthDayrdt = new SampleDataCache.RandomDateTime(1955, 1, 1, new DateTime(2000, 1, 1));

                for (int i = 0; i < profiles; i++)
                {
                    ////generate our fake data
                    Patient a = new Patient();

                    a.PatientConfiguration = ((PatientConfiguration)(configuration));

                    int maleorfemale = SampleDataCache.RandomContactGenerator.Next(1, 100);

                    a.FirstName = maleorfemale < 50 ? SampleDataCache.Malenames[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Malenames.Count - 1)] : SampleDataCache.Femalenames[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Femalenames.Count - 1)];
                    a.LastName  = SampleDataCache.Lastnames[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Lastnames.Count - 1)];

                    SampleDataCache.AddressInfo addressInfo = SampleDataCache.AddressInfos[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.AddressInfos.Count - 1)];

                    // Now set the Emergency and Primary Contact etc
                    string practitionersfile  = a.PatientConfiguration.PractionerFileName;
                    string relatedpersonsfile = a.PatientConfiguration.RelatedPersonsFileName;

                    if (!string.IsNullOrEmpty(relatedpersonsfile))
                    {
                        listRelatedPersons = RelatedPerson.ImportProfiles(relatedpersonsfile);

                        if (listRelatedPersons != null)
                        {
                            Profile emergencyContact = listRelatedPersons[SampleDataCache.RandomContactGenerator.Next(0, listRelatedPersons.Count - 1)];
                            Profile primaryContact   = listRelatedPersons[SampleDataCache.RandomContactGenerator.Next(0, listRelatedPersons.Count - 1)];

                            a.EmergencyContactId = emergencyContact.ContactId;
                            a.PrimaryContactId   = primaryContact.ContactId;

                            a.EmergencyContactRelationshipTypeId = SampleDataCache.RelatedPersonTypes[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.RelatedPersonTypes.Count - 1)];
                            a.PrimaryContactRelationshipTypeId   = SampleDataCache.RelatedPersonTypes[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.RelatedPersonTypes.Count - 1)];
                        }
                    }

                    if (!string.IsNullOrEmpty(practitionersfile))
                    {
                        listPractitioners = Practitioner.ImportProfiles(practitionersfile);

                        if (listPractitioners != null)
                        {
                            Profile primaryPractitioner = listPractitioners[SampleDataCache.RandomContactGenerator.Next(0, listPractitioners.Count - 1)];

                            a.PrimaryPractitionerId = primaryPractitioner.ContactId;
                        }
                    }

                    if (a.PatientConfiguration.AllergyIntoleranceCount > 0)
                    {
                        for (int iAllergies = 0; iAllergies < a.PatientConfiguration.AllergyIntoleranceCount; iAllergies++)
                        {
                            AllergyIntolerance ai = new AllergyIntolerance();
                            a.AllergyIntolerances.Add(ai);
                        }
                    }

                    if (a.PatientConfiguration.NutritionOrderCount > 0)
                    {
                        for (int iNutritionOrders = 0; iNutritionOrders < a.PatientConfiguration.NutritionOrderCount; iNutritionOrders++)
                        {
                            NutritionOrder no = new NutritionOrder();
                            a.NutritionOrders.Add(no);
                        }
                    }


                    if (a.PatientConfiguration.ConditionCount > 0)
                    {
                        for (int iConditions = 0; iConditions < a.PatientConfiguration.ConditionCount; iConditions++)
                        {
                            Condition condition = new Condition();

                            condition.VerificationStatus = HealthCDMEnums.RandomEnumInt <HealthCDMEnums.Condition_Verificationstatus>();
                            a.Conditions.Add(condition);
                        }
                    }

                    if (a.PatientConfiguration.DeviceCount > 0)
                    {
                        for (int iDevice = 0; iDevice < a.PatientConfiguration.DeviceCount; iDevice++)
                        {
                            Device device = new Device();
                            a.Devices.Add(device);
                        }
                    }

                    if (a.PatientConfiguration.ProcedureCount > 0)
                    {
                        for (int iProcedure = 0; iProcedure < a.PatientConfiguration.ProcedureCount; iProcedure++)
                        {
                            Procedure procedure = new Procedure();
                            a.Procedures.Add(procedure);
                        }
                    }

                    if (a.PatientConfiguration.ReferralCount > 0)
                    {
                        for (int iReferral = 0; iReferral < a.PatientConfiguration.ReferralCount; iReferral++)
                        {
                            ReferralRequest request = new ReferralRequest();
                            a.ReferralRequests.Add(request);
                        }
                    }

                    if (a.PatientConfiguration.MedicationCount > 0)
                    {
                        for (int iMedication = 0; iMedication < a.PatientConfiguration.MedicationCount; iMedication++)
                        {
                            MedicationRequest medication = new MedicationRequest();
                            a.MedicationRequests.Add(medication);
                        }
                    }

                    a.PrimaryLanguageCode = SampleDataCache.Languages[SampleDataCache.RandomContactGenerator.Next(0, SampleDataCache.Languages.Count - 1)];


                    a.Address1City            = addressInfo.City;
                    a.Address1Country         = addressInfo.Country;
                    a.Address1Line1           = addressInfo.Address;
                    a.Telephone1              = addressInfo.Areacode + "-" + addressInfo.Telephone; //(business)
                    a.MobilePhone             = addressInfo.Areacode + "-" + addressInfo.Telephone;
                    a.Telephone2              = addressInfo.Areacode + "-" + addressInfo.Telephone; //(home)
                    a.Address1PostalCode      = addressInfo.Zipcode;
                    a.Address1StateOrProvince = addressInfo.State;
                    a.Age                  = SampleDataCache.RandomContactGenerator.Next(18, 100);
                    a.EmailAddress1        = a.FirstName + "_" + a.LastName + "@testlive.com";
                    a.FullName             = a.FirstName + " " + a.LastName;
                    a.GenderCode           = maleorfemale < 50 ? (int)ContactGenderCode.Male : (int)ContactGenderCode.Female;
                    a.Salutation           = maleorfemale < 50 ? "Mr." : "Mrs.";
                    a.CDMContactType       = ContactType.Patient;
                    a.PatientMedicalNumber = GenerateMedicalNumber();
                    a.BirthDate            = birthDayRandomGenerator.Next();

                    listPatients.Add(a);
                }

                return(listPatients);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString());
            }
        }