Exemple #1
0
        async Task <IReadOnlyList <int> > ITrainingService.GetTrainingPopulationUPNs(TrainingPopulationKey trainingPopulationKey, string auditSubGeoKey)
        {
            var sqlString = "";

            switch (trainingPopulationKey)
            {
            case TrainingPopulationKey.AuditSeniorsandAssociatesLevel2and3:
                sqlString = Sql.TrainingPopulation_GetAuditSeniorsandAssociateslevel2and3;
                break;

            case TrainingPopulationKey.AuditAssociatesLevel0and1:
                sqlString = Sql.TrainingPopulation_GetAuditAssociatesLevel0and1;
                break;

            case TrainingPopulationKey.AuditSeniorsandAssociates:
                sqlString = Sql.TrainingPopulation_GetAuditSeniorsandAssociates;
                break;

            case TrainingPopulationKey.AuditSeniorsLevel2andGreater:
                sqlString = Sql.TrainingPopulation_GetAuditSeniorsLevel2andGreater;
                break;

            case TrainingPopulationKey.AuditSeniorsLevel0:
                sqlString = Sql.TrainingPopulation_GetAuditSeniorsLevel0;
                break;

            case TrainingPopulationKey.AuditSeniorsLevel1:
                sqlString = Sql.TrainingPopulation_GetAuditSeniorsLevel1;
                break;

            case TrainingPopulationKey.AuditAssociatesLevel2andGreater:
                sqlString = Sql.TrainingPopulation_GetAuditAssociatesLevel2andGreater;
                break;

            default:
                throw new ArgumentOutOfRangeException("Unknown Training Population Key: " + trainingPopulationKey);
            }
            var upns = await _dapper.Query <int>(sqlString, new { AuditSubGeoKey = auditSubGeoKey });

            return(upns.ToList());
        }
Exemple #2
0
        async Task <IReadOnlyList <int> > ICachedTrainingService.GetTrainingPopulationUPNs(TrainingPopulationKey trainingPopulationKey, string auditSubGeoKey)
        {
            var cache_key = ListTrainingPopulation_CacheKey + trainingPopulationKey + "-" + auditSubGeoKey;
            var result    = await _cache.GetAsync <IReadOnlyList <int> >(cache_key);

            if (result == null)
            {
                result = await _trainingService.GetTrainingPopulationUPNs(trainingPopulationKey, auditSubGeoKey);

                await _cache.SetAsync(cache_key, result);
            }
            return(result);
        }