Пример #1
0
        public async Task <PatientCohort> GetPatientCohortAsync(PatientCountQuery query, CancellationToken token)
        {
            token.ThrowIfCancellationRequested();

            var cohort = await GetCohortAsync(query, token);

            return(cohort);
        }
Пример #2
0
        public async Task <PatientCohort> GetPatientCohortAsync(PatientCountQuery query, CancellationToken token)
        {
            token.ThrowIfCancellationRequested();
            log.LogInformation("Patient count query starting");

            var cohort = await GetCohortAsync(query, token);

            return(cohort);
        }
Пример #3
0
        protected override async Task <PatientCohort> GetCohortAsync(PatientCountQuery query, CancellationToken token)
        {
            var leafQueries = GetLeafQueries(query.Panels);

            return(new PatientCohort
            {
                QueryId = query.QueryId,
                PatientIds = await GetPatientSetAsync(leafQueries, token),
                SqlStatements = leafQueries.Select(q => q.SqlStatement)
            });
        }
Пример #4
0
        protected override async Task <PatientCohort> GetCohortAsync(PatientCountQuery query, CancellationToken token)
        {
            var cteQuery = GetCteQuery(query.Panels);

            return(new PatientCohort
            {
                QueryId = query.QueryId,
                PatientIds = await GetPatientSetAsync(cteQuery, token),
                SqlStatements = new string[]
                {
                    cteQuery.SqlStatement
                }
            });
        }
Пример #5
0
 protected abstract Task <PatientCohort> GetCohortAsync(PatientCountQuery query, CancellationToken token);