예제 #1
0
        public async Task <int> Clear(List <Guid> extractIds)
        {
            Log.Debug($"Executing ClearDwhExtracts command...");

            foreach (var extractId in extractIds)
            {
                DomainEvents.Dispatch(
                    new ExtractActivityNotification(extractId, new DwhProgress(
                                                        nameof(PatientExtract),
                                                        nameof(ExtractStatus.Clearing),
                                                        0, 0, 0, 0, 0)));
            }

            await _historyRepository.ClearHistory(extractIds);

            _validatorRepository.ClearByDocket("NDWH");
            await _tempPatientExtractRepository.Clear();


            foreach (var extractId in extractIds)
            {
                DomainEvents.Dispatch(
                    new ExtractActivityNotification(extractId, new DwhProgress(
                                                        nameof(PatientExtract),
                                                        nameof(ExtractStatus.Cleared),
                                                        0, 0, 0, 0, 0)));
            }

            return(1);
        }
예제 #2
0
        public async Task Clean(List <Guid> extractIds)
        {
            Log.Debug($"Executing ClearHtsExtracts command...");

            await _historyRepository.ClearHistory(extractIds);

            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HTSClientExtract), "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HTSClientPartnerExtract), "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HTSClientLinkageExtract), "clearing...")));


            foreach (var extractId in extractIds)
            {
                DomainEvents.Dispatch(new HtsStatusNotification(extractId, ExtractStatus.Clearing));
            }


            _validatorRepository.ClearByDocket("HTS");
            await _tempPatientExtractRepository.Clear();

            foreach (var extractId in extractIds)
            {
                DomainEvents.Dispatch(new HtsStatusNotification(extractId, ExtractStatus.Cleared));
            }

            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HTSClientExtract), "cleared")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HTSClientPartnerExtract), "cleared")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HTSClientLinkageExtract), "cleared")));
        }
예제 #3
0
        public async Task Clean(Guid extractId)
        {
            _historyRepository.ClearHistory(extractId);

            DomainEvents.Dispatch(new CbsNotification(new ExtractProgress(nameof(MasterPatientIndex), "clearing...")));
            DomainEvents.Dispatch(new CbsStatusNotification(extractId, ExtractStatus.Clearing));

            await _repository.Clear();


            DomainEvents.Dispatch(new CbsStatusNotification(extractId, ExtractStatus.Cleared));
        }
예제 #4
0
        public async Task Clear(List <Guid> extractIds)
        {
            Log.Debug($"Executing ClearMetricExtracts command...");

            await _historyRepository.ClearHistory(extractIds);

            // DomainEvents.Dispatch(new MgsNotification(new ExtractProgress(nameof(IndicatorExtract), "clearing...")));

            foreach (var extractId in extractIds)
            {
                // DomainEvents.Dispatch(new MgsStatusNotification(extractId, ExtractStatus.Clearing));
            }

            _validatorRepository.ClearByDocket("MTS");
            await _tempMetricMigrationExtractRepository.Clear();

            foreach (var extractId in extractIds)
            {
                // DomainEvents.Dispatch(new MgsStatusNotification(extractId, ExtractStatus.Cleared));
            }
        }
예제 #5
0
        public void Find(DbExtractProtocolDTO dbExtractProtocolDto)
        {
            var extract  = dbExtractProtocolDto.Extract;
            var protocol = dbExtractProtocolDto.DatabaseProtocol;

            _extractHistoryRepository.ClearHistory(extract.Id);

            _extractHistoryRepository.UpdateStatus(extract.Id, ExtractStatus.Idle);
            _extractHistoryRepository.UpdateStatus(extract.Id, ExtractStatus.Finding);

            try
            {
                var found = _psmartSourceReader.Find(protocol, extract);
                _extractHistoryRepository.UpdateStatus(extract.Id, ExtractStatus.Found, found);
            }

            catch (Exception ex)
            {
                _extractHistoryRepository.UpdateStatus(extract.Id, ExtractStatus.Idle, express: true);
                throw ex;
            }
        }
예제 #6
0
        public async Task Clear(List <Guid> extractIds)
        {
            Log.Debug($"Executing ClearHtsExtracts command...");

            await _historyRepository.ClearHistory(extractIds);

            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClientTests) + "Extracts", "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsTestKits) + "Extracts", "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsPartnerNotificationServices) + "Extracts", "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClientTracing) + "Extracts", "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsPartnerTracing) + "Extracts", "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClientLinkage) + "Extracts", "clearing...")));
            DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClients) + "Extracts", "clearing...")));


            foreach (var extractId in extractIds)
            {
                DomainEvents.Dispatch(new HtsStatusNotification(extractId, ExtractStatus.Clearing));
            }


            _validatorRepository.ClearByDocket("HTS");
            await _tempPatientExtractRepository.Clear();

            foreach (var extractId in extractIds)
            {
                DomainEvents.Dispatch(new HtsStatusNotification(extractId, ExtractStatus.Cleared));
            }

            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClientTests), "clearing...")));
            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsTestKits), "clearing...")));
            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsPartnerNotificationServices), "clearing...")));
            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClientTracing), "clearing...")));
            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsPartnerTracing), "clearing...")));
            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClientLinkage), "clearing...")));
            //DomainEvents.Dispatch(new HtsNotification(new ExtractProgress(nameof(HtsClients), "clearing...")));
        }