示例#1
0
        public async Task <PagedResponse <List <Measure> > > GetMeasures(MeasurePaginationFilter paginationFilter)
        {
            try
            {
                var data = await httpClient.GetFromJsonAsync <PagedResponse <List <Measure> > >($"Measures?{paginationFilter.ToQueryString()}", jsonSerializerOptions);

                data.Data.ForEach(value =>
                {
                    value.Date = value.Date.ToLocalTime();
                });

                return(data);
            }
            catch (AccessTokenNotAvailableException exception)
            {
                exception.Redirect();
                return(null);
            }
        }
示例#2
0
        public async Task <ActionResult <PagedResponse <List <Measure> > > > GetMeasure([FromQuery] MeasurePaginationFilter filter)
        {
            var userId = HttpContext.User
                         .Claims
                         .Where(claim => claim.Type.Equals(ClaimTypes.NameIdentifier))
                         .First()
                         .Value;

            (var pagedData, var totalCount) = await filter.Process(_context.Measure, _context.Thing, new Guid(userId));

            var pagedReponse = PaginationHelper.CreatePagedReponse(
                await pagedData.ToListAsync(),
                filter,
                totalCount,
                _uriService,
                Request
                );

            return(Ok(pagedReponse));
        }