Esempio n. 1
0
        public void SaveTest(ObsTestResult testResult, Guid clientId)
        {
            _obsTestResultRepository.SaveOrUpdate(testResult);
            UpdateKitHistories(testResult);

            var final = _obsFinalTestResultRepository.GetAll(x => x.EncounterId == testResult.EncounterId)
                        .FirstOrDefault();

            if (testResult.TestName.Contains("1"))
            {
                if (null != final)
                {
                    //         update
                    final.UpdateSetFirstResult(testResult.IsValid ? testResult.Result : Guid.Empty);
                    _obsFinalTestResultRepository.SaveOrUpdate(final);
                }
                else
                {
                    if (testResult.IsValid)
                    {
                        final = ObsFinalTestResult.CreateFirst(testResult.Result, testResult.EncounterId, clientId);
                        _obsFinalTestResultRepository.Save(final);
                    }
                }
            }

            if (testResult.TestName.Contains("2"))
            {
                if (null != final)
                {
                    //         update
                    final.UpdateSetSecondResult(testResult.IsValid ? testResult.Result : Guid.Empty);
                    _obsFinalTestResultRepository.SaveOrUpdate(final);
                }
            }

            UpdateFinalResult(testResult.EncounterId, clientId);
        }