Esempio n. 1
0
        public void should_Create_Encounter()
        {
            testIQPatientId = -1;
            var patient = _testEncounters.First().Patient;

            Assert.NotNull(patient);
            IQLocation location = _emrRepository.GetLocation(locationId);

            Assert.NotNull(location);
            _createEmrPatientHandler.Handle(new PatientCreated(patient, location));
            Assert.That(_createEmrPatientHandler.GetSqlActions(), Is.Not.Empty);
            _emrRepository.CreatePatient(_createEmrPatientHandler.GetSqlActions(), patient.UuId);
            var iqpatient = _emrRepository.GetPatient(patient.UuId);

            Assert.NotNull(iqpatient);
            Assert.That(iqpatient.ClientCode, Is.EqualTo(patient.Clientcode));
            testIQPatientId = iqpatient.Id;
            Assert.True(testIQPatientId > -1);
            Debug.Print($"New Patient:{iqpatient.ToStringDetail()}");

            _createEmrEncounterHandler.Handle(_encounterCreated);
            Assert.That(_createEmrEncounterHandler.GetSqlActions(), Is.Not.Empty);
            _emrRepository.CreateEncounter(_createEmrEncounterHandler.GetSqlActions(), patient.UuId);

            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [ord_Visit] where Ptn_Pk in ({testIQPatientId}) AND VisitType=219"), Is.EqualTo(1));
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(1));
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [dtl_fb_MARPsHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(2));
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [dtl_fb_DisabilityHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(3));
        }
Esempio n. 2
0
        public void should_sync_new_patient_with_encounters()
        {
            testIQPatientId = -1;
            var patient = _testEncounters.First().Patient;

            Assert.NotNull(patient);
            Assert.That(patient, Is.Not.Null);
            Assert.That(patient.Encounters, Is.Not.Empty);


            _patientService.Sync(patient, false);
            var savedPatient = _patientService.GetAll().FirstOrDefault(x => x.Lastname == patient.Lastname);

            Assert.That(savedPatient, Is.Not.Null);
            Debug.Print(savedPatient.ToString());
            Assert.That(savedPatient.Encounters, Is.Not.Empty);
            foreach (var e in savedPatient.Encounters)
            {
                Debug.Print($" >.{e.ToString()}");
                foreach (var o in e.Observations)
                {
                    Debug.Print($"  >>.{o}");
                }
            }

            Assert.False(string.IsNullOrWhiteSpace(_createEmrPatientHandler.GetNotification()));
            Debug.Print(_createEmrPatientHandler.GetNotification());
            var iqpatient = _emrRepository.GetPatient(savedPatient.UuId);

            Assert.NotNull(iqpatient);
            testIQPatientId = iqpatient.Id;
            Debug.Print($"IQCare:{iqpatient.ToStringDetail()}");

            Assert.That(_createEmrEncounterHandler.GetSqlActions(), Is.Not.Empty);
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [ord_Visit] where Ptn_Pk in ({testIQPatientId}) AND VisitType=219"), Is.EqualTo(1));
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(1));
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [dtl_fb_MARPsHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(2));
            Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk)  from  [dtl_fb_DisabilityHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(3));
            Assert.That(_emrRepository.ExecuteQueryStringResult($"select remarks  from  [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.StringContaining("No remark"));
        }