Esempio n. 1
0
        public int Create(ContactParameter parameters)
        {
            var viewModel = MapFromClientParameters(parameters);
            var entity    = viewModel.MapTo <Contact>();

            var savedEntity = MasterFileService.Add(entity);

            return(savedEntity.Id);
        }
Esempio n. 2
0
 public ActionResult <ContactModel> Contact_NthDegree_TTP_Degree([FromBody] ContactParameter parameter)
 {
     _logger.LogInformation("CALLED Contact_NthDegree_TTP_Degree with parameters: \n\r PatientID: {patID}\n\r Starttime: {start} \n\r Endtime: {end} \n\r Degree: {d} ", parameter.PatientID, parameter.Starttime, parameter.Endtime, parameter.Degree);
     try
     {
         System.Diagnostics.Debug.WriteLine("CALLED Contact_NthDegree_TTKP_Degree " + parameter.PatientID + " - " + parameter.Starttime + " - " + parameter.Endtime + " - " + parameter.Degree);
         return(_contact.Process(parameter));
     }
     catch (Exception e)
     {
         _logger.LogWarning("CALLED Contact_NthDegree_TTP_Degree:" + e.Message);
         return(ErrorHandling(e));
     }
 }
Esempio n. 3
0
        public void ProcessorTest(int degree, string ehr_id, int start_year, int start_month, int start_day, int end_year, int end_month, int end_day, int expectedResultSet)
        {
            IRestDataAccess _data = TestConnection.Initialize();

            ContactParameter contactParams = new ContactParameter()
            {
                Degree    = degree,
                PatientID = ehr_id,
                Starttime = new DateTime(start_year, start_month, start_day),
                Endtime   = new DateTime(end_year, end_month, end_day)
            };

            IPatientInformation   patientInformation = CreatePatientInformation(_data);
            ContactNetworkFactory factory            = new ContactNetworkFactory(_data, NullLogger <ContactNetworkFactory> .Instance, patientInformation);
            ContactModel          actual             = factory.Process(contactParams);
            ContactModel          expected           = getExpectedContactModels(expectedResultSet);

            Assert.Equal(expected.PatientMovements.Count, actual.PatientMovements.Count);
            Assert.Equal(expected.LaborData.Count, actual.LaborData.Count);

            for (int i = 0; i < actual.PatientMovements.Count; i++)
            {
                Assert.Equal(expected.PatientMovements[i].PatientID, actual.PatientMovements[i].PatientID);
                Assert.Equal(expected.PatientMovements[i].FallID, actual.PatientMovements[i].FallID);
                Assert.Equal(expected.PatientMovements[i].Bewegungsart_l, actual.PatientMovements[i].Bewegungsart_l);
                Assert.Equal(expected.PatientMovements[i].Bewegungstyp, actual.PatientMovements[i].Bewegungstyp);
                Assert.Equal(expected.PatientMovements[i].BewegungstypID, actual.PatientMovements[i].BewegungstypID);
                Assert.Equal(expected.PatientMovements[i].Beginn.ToString("s"), actual.PatientMovements[i].Beginn.ToString("s"));
                Assert.Equal(expected.PatientMovements[i].Ende.ToString("g"), actual.PatientMovements[i].Ende.ToString("g"));
                Assert.Equal(expected.PatientMovements[i].StationID, actual.PatientMovements[i].StationID);
                Assert.Equal(expected.PatientMovements[i].Raum, actual.PatientMovements[i].Raum);
            }

            for (int i = 0; i < actual.LaborData.Count; i++)
            {
                Assert.Equal(expected.LaborData[i].PatientID, actual.LaborData[i].PatientID);
                Assert.Equal(expected.LaborData[i].FallID, actual.LaborData[i].FallID);
                Assert.Equal(expected.LaborData[i].Befund, actual.LaborData[i].Befund);
                Assert.Equal(expected.LaborData[i].Befunddatum.ToString("s"), actual.LaborData[i].Befunddatum.ToUniversalTime().ToString("s"));
                Assert.Equal(expected.LaborData[i].Befundkommentar, actual.LaborData[i].Befundkommentar);
                Assert.Equal(expected.LaborData[i].KeimID, actual.LaborData[i].KeimID);
                Assert.Equal(expected.LaborData[i].LabordatenID, actual.LaborData[i].LabordatenID);
                Assert.Equal(expected.LaborData[i].MaterialID, actual.LaborData[i].MaterialID);
                Assert.Equal(expected.LaborData[i].Material_l, actual.LaborData[i].Material_l);
                Assert.Equal(expected.LaborData[i].ProbeID, actual.LaborData[i].ProbeID);
                Assert.Equal(expected.LaborData[i].ZeitpunktProbeneingang.ToString("s"), actual.LaborData[i].ZeitpunktProbeneingang.ToUniversalTime().ToString("s"));
                Assert.Equal(expected.LaborData[i].ZeitpunktProbenentnahme.ToString("s"), actual.LaborData[i].ZeitpunktProbenentnahme.ToUniversalTime().ToString("s"));
            }
        }
Esempio n. 4
0
        public ActionResult Update(ContactParameter parameters)
        {
            var viewModel = MapFromClientParameters(parameters);

            byte[] lastModified = null;

            if (ModelState.IsValid)
            {
                var entity       = MasterFileService.GetById(viewModel.SharedViewModel.Id);
                var mappedEntity = viewModel.MapPropertiesToInstance(entity);

                lastModified = MasterFileService.Update(mappedEntity).LastModified;
            }

            return(Json(new { Error = string.Empty, Data = new { LastModified = lastModified } }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 5
0
 public static AQLQuery ContactPatientWards(ContactParameter parameter)
 {
     return(new AQLQuery("ContactPatientWards", $@"SELECT m/data[at0001]/items[at0004]/value/value as Beginn, 
                         m/data[at0001]/items[at0005]/value/value as Ende, 
                         o/items[at0024]/value/defining_code/code_string as Fachabteilung, 
                         k/items[at0027]/value/value as StationID 
                         FROM EHR e 
                         CONTAINS COMPOSITION c[openEHR-EHR-COMPOSITION.event_summary.v0] 
                         CONTAINS ADMIN_ENTRY m[openEHR-EHR-ADMIN_ENTRY.hospitalization.v0] 
                         CONTAINS (CLUSTER k[openEHR-EHR-CLUSTER.location.v1] and CLUSTER o[openEHR-EHR-CLUSTER.organization.v0])
                         WHERE c/name/value='Patientenaufenthalt' 
                         and e/ehr_id/value = '{ parameter.PatientID }' 
                         and m/data[at0001]/items[at0004]/value/value <= '{ parameter.Endtime.ToString("o") }' 
                         and (m/data[at0001]/items[at0005]/value/value >= '{ parameter.Starttime.ToString("o") }'
                         or NOT EXISTS m/data[at0001]/items[at0005]/value/value)
                         ORDER BY m/data[at0001]/items[at0004]/value/value ASC"));
 }