Esempio n. 1
0
        public async Task <List <DataPointResource> > Handle(GetDataPointsForDayIntervalQuery request, CancellationToken cancellationToken)
        {
            var dataPoints = await _dataContext.DataPoints
                             .GetDataPointsForLast(request.Days, request.MetricId).AsNoTracking().ToListAsync(cancellationToken);


            dataPoints = AddMissingDataPointIntervals(dataPoints, request.Days, request.MetricId, request.Interval);
            dataPoints = NormalizeDataPointIntervals(dataPoints, request.MetricId, request.Interval);

            return(dataPoints.Select(DataPointResource.FromDataPoint).ToList());
        }
        public async Task <ActionResult <IEnumerable <DataPointResource> > > GetDataPointsForLastWeekAsync([FromRoute] int metricId)
        {
            var dataPointQuery = new GetDataPointsForDayIntervalQuery
            {
                MetricId = metricId,
                Days     = 7,
                Interval = 1800
            };

            var datapointResources = await _mediator.Send(dataPointQuery);

            if (datapointResources == null)
            {
                return(NotFound());
            }

            return(datapointResources);
        }