Esempio n. 1
0
        private string FhirAsJsonString(IResource fhirObj)
        {
            var serializer = new FhirJsonSerializer(new SerializerSettings()
            {
                Pretty = true
            });

            return(serializer.SerializeToString(PocoBuilderExtensions.ToPoco(fhirObj)));
        }
Esempio n. 2
0
        public void BuildTestBundle()
        {
            var bundle = CreateBundle();

            string patientId = "test";
            var    iResource = CreateTestPatientNoReferences(patientId);

            var entry   = new Bundle.EntryComponent();
            var patient = PocoBuilderExtensions.ToPoco <Patient>(iResource);

            entry.FullUrl  = $"/{patient.ResourceType.ToString()}/{patientId}";
            entry.Resource = patient;
            entry.Request  = new Bundle.RequestComponent()
            {
                Method  = Bundle.HTTPVerb.PUT,
                Url     = entry.Resource.TypeName,
                IfMatch = $"/{entry.Resource.TypeName}?identifier={patientId}"
            };
            //entry.Request = new Bundle.RequestComponent() { Method = Bundle.HTTPVerb.POST, Url = entry.Resource.TypeName, IfNoneExist = $"identifier={entry.FullUrl}" };
            bundle.Entry.Add(entry);

            string resourceId = "acct1";

            iResource = CreateTestAccountForPatient(resourceId, patientId);
            Account account = PocoBuilderExtensions.ToPoco <Account>(iResource);

            entry          = new Bundle.EntryComponent();
            entry.FullUrl  = $"/{account.ResourceType.ToString()}/{resourceId}";
            entry.Resource = account;
            entry.Request  = new Bundle.RequestComponent()
            {
                Method  = Bundle.HTTPVerb.PUT,
                Url     = entry.Resource.TypeName,
                IfMatch = $"/{entry.Resource.TypeName}?identifier={resourceId}"
            };
            //entry.Request = new Bundle.RequestComponent() { Method = Bundle.HTTPVerb.POST, Url = entry.Resource.TypeName, IfNoneExist = $"identifier={entry.FullUrl}" };
            bundle.Entry.Add(entry);

            resourceId = "obs1";
            iResource  = CreateTestObservation(resourceId, "hr-code", 72, "bpm", patientId);
            entry      = new Bundle.EntryComponent();
            Observation observation = PocoBuilderExtensions.ToPoco <Observation>(iResource);

            entry.FullUrl  = $"/{observation.ResourceType.ToString()}/{resourceId}";
            entry.Resource = observation;
            entry.Request  = new Bundle.RequestComponent()
            {
                Method  = Bundle.HTTPVerb.PUT,
                Url     = entry.Resource.TypeName,
                IfMatch = $"/{entry.Resource.TypeName}?identifier={resourceId}"
            };
            //entry.Request = new Bundle.RequestComponent() { Method = Bundle.HTTPVerb.POST, Url = entry.Resource.TypeName, IfNoneExist = $"identifier={entry.FullUrl}" };
            bundle.Entry.Add(entry);

            resourceId     = "obs2";
            iResource      = CreateTestObservation(resourceId, "temp-code", 36.8M, "C", patientId);
            entry          = new Bundle.EntryComponent();
            observation    = PocoBuilderExtensions.ToPoco <Observation>(iResource);
            entry.FullUrl  = $"/{observation.ResourceType.ToString()}/{resourceId}";
            entry.Resource = observation;
            entry.Request  = new Bundle.RequestComponent()
            {
                Method  = Bundle.HTTPVerb.PUT,
                Url     = entry.Resource.TypeName,
                IfMatch = $"/{entry.Resource.TypeName}?identifier={resourceId}"
            };
            //entry.Request = new Bundle.RequestComponent() { Method = Bundle.HTTPVerb.POST, Url = entry.Resource.TypeName, IfNoneExist = $"identifier={entry.FullUrl}" };
            bundle.Entry.Add(entry);

            string bundleStr = FhirAsJsonString(bundle);
        }