public void should_sync_existing_Encounter() { var encounters = new List <Encounter>(); var patient = _testEncounters.First().Patient; var encounter = _testEncounters.First(); encounters.Add(encounter); _encounterService.Sync(encounters, patient); _uow = new UnitOfWork(new SyncContext()); _patientService = new PatientService(_uow, _emrRepository, _createEmrPatientHandler, _createEmrEncounterHandler); _encounterService = _patientService.EncounterService; var savedEncounter = _encounterService.GetAll().First(x => x.UuId == encounter.UuId); Assert.That(savedEncounter, Is.Not.Null); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [ord_Visit] where Ptn_Pk in ({_iqPatient.Id}) AND VisitType=219"), Is.EqualTo(1)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({_iqPatient.Id})"), Is.EqualTo(1)); Assert.That(_emrRepository.ExecuteQueryStringResult($"select remarks from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({_iqPatient.Id})"), Is.StringContaining("No remark")); foreach (var o in savedEncounter.Observations) { if (o.MConceptId == 16) { o.ValueText = "color blind left eye"; } if (o.MConceptId == 48) { o.ValueText = "Screen for TB2"; } } var updateEncounters = new List <Encounter>(); updateEncounters.Add(savedEncounter); _encounterService.Sync(updateEncounters, patient); var emrRepository = new EmrRepository(); Assert.That(emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [ord_Visit] where Ptn_Pk in ({_iqPatient.Id}) AND VisitType=219"), Is.EqualTo(1)); Assert.That(emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({_iqPatient.Id})"), Is.EqualTo(1)); Assert.That(emrRepository.ExecuteQueryStringResult($"select remarks from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({_iqPatient.Id})"), Is.StringContaining("Screen for TB2")); }
public void should_sync_existing_patient_with_encounters() { testIQPatientId = -1; var patient = _testEncounters.First().Patient; _patientService.Sync(patient, false); var savedPatient = _patientService.GetAll().FirstOrDefault(x => x.UuId == patient.UuId); Assert.That(savedPatient, Is.Not.Null); Assert.That(savedPatient.Encounters, Is.Not.Empty); var iqpatient = _emrRepository.GetPatient(savedPatient.UuId); Assert.NotNull(iqpatient); testIQPatientId = iqpatient.Id; Debug.Print($"IQCare before Edit:{iqpatient.ToStringDetail()}"); 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.ExecuteQueryStringResult($"select remarks from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.StringContaining("No remark")); //var conceptText = encounterType.Concepts.FirstOrDefault(x => x.Id == 16); //var conceptText2 = encounterType.Concepts.FirstOrDefault(x => x.Id == 48); savedPatient.Lastname = "BonnyK"; savedPatient.Clientcode = "XC"; foreach (var encounter in savedPatient.Encounters) { encounter.Geoloctaion = "KISUMU"; foreach (var o in encounter.Observations) { if (o.MConceptId == 16) { o.ValueText = "color blind left eye"; } if (o.MConceptId == 48) { o.ValueText = "Screen for TB2"; } } } //_uow.PatientRepository.Update(savedPatient); //_uow = new UnitOfWork(new SyncContext()); //var p = _uow.PatientRepository.FindBySyncId(patient.UuId); _patientService.Sync(savedPatient, false); _uow = new UnitOfWork(new SyncContext()); _patientService = new PatientService(_uow, new EmrRepository(), _createEmrPatientHandler, _createEmrEncounterHandler); var savedSyncedPatient = _patientService.GetAll().FirstOrDefault(x => x.UuId == patient.UuId); Assert.That(savedSyncedPatient, Is.Not.Null); Assert.AreEqual("BonnyK", savedSyncedPatient.Lastname); var emrRepository = new EmrRepository(); var iqsyncedpatient = emrRepository.GetPatient(patient.UuId); Assert.NotNull(iqsyncedpatient); Assert.AreEqual("BonnyK", iqsyncedpatient.LastName); Debug.Print($"IQCare After Edit:{iqsyncedpatient.ToStringDetail()}"); 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.ExecuteQueryStringResult($"select remarks from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.StringContaining("Screen for TB2")); }