Exemplo n.º 1
0
        public async Task <ActionResult <int> > GetDriversRacePositionTotalById(int id, int position)
        {
            var result = await _dataReader.GetDriversRaceResults(id);

            var mappedData = result.Select(x => RaceResults.MapFromDb(x)).ToList();

            return(_calculate.RacePositionCount(mappedData, position));
        }
        public async Task <List <RaceResults> > GetAllDriversRaceResultsForASeason(int season)
        {
            var raceData = await _driverReader.GetDriversSeasonRaceResults(season);

            var orderedData = raceData.OrderBy(x => x.StartDate);

            return(raceData.Select(x => RaceResults.MapFromDb(x)).ToList());
        }
Exemplo n.º 3
0
        public async Task <ActionResult <decimal> > GetDriverTotalPointsById(int id)
        {
            var result = await _dataReader.GetDriversRaceResults(id);

            var points = result.Select(x => RaceResults.MapFromDb(x)).ToList();

            return(_calculate.TotalDriverPoints(points));
        }
        public async Task <List <DriverStats> > BuildDriversSeasonStats(int season)
        {
            List <DriverStats> driverStats = new List <DriverStats>();

            var raceData = await _driverReader.GetDriversSeasonRaceResults(season);

            var driverData = raceData.GroupBy(x => x.DriverId);

            foreach (var driver in driverData)
            {
                var result   = driver.Select(x => RaceResults.MapFromDb(x)).ToList();
                var calcData = CalculateDriverData(result);

                driverStats.Add(DriverStats.Mapper(driver.Key, calcData));
            }

            return(driverStats);
        }