public PagedListSieve <ChannelEnterpriseInfo> GetAllChannelsEnterprise(SieveModel sieveModel)
        {
            var entityFilter = _unitOfWork.AdministrationSwitchProceduresRepository.GetAllChannelEnterprise();
            var page         = sieveModel?.Page ?? 1;
            var pageSize     = sieveModel?.PageSize ?? 10;

            if (sieveModel != null)
            {
                // apply pagination in a later step
                entityFilter = _sieveProcessor.Apply(sieveModel, entityFilter, applyPagination: false);
            }
            var pagedPosts = PagedListSieve <ChannelEnterpriseInfo> .CreateFromQuerable(entityFilter, page, pageSize);

            return(pagedPosts);
        }
Exemplo n.º 2
0
        public IActionResult GetAllChannelsEnterprise(SieveModel sieveModel)
        {
            _channelEnterpriseService.SieveProcessor = _sieveProcessor;
            PagedListSieve <ChannelEnterpriseInfo> entity    = _channelEnterpriseService.GetAllChannelsEnterprise(sieveModel);
            IEnumerable <ChannelEnterpriseInfoDTO> entityDTO = _mapper.Map <IEnumerable <ChannelEnterpriseInfoDTO> >(entity);
            Metadata metadata = new Metadata
            {
                TotalCount      = entity.TotalCount,
                PageSize        = entity.PageSize,
                CurrentPage     = entity.CurrentPage,
                TotalPages      = entity.TotalPages,
                HasNextPage     = entity.HasNextPage,
                HasPreviousPage = entity.HasPreviousPage,
            };
            ApiResponse <IEnumerable <ChannelEnterpriseInfoDTO> > response = new ApiResponse <IEnumerable <ChannelEnterpriseInfoDTO> >(entityDTO)
            {
                Meta = metadata
            };

            Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata));
            return(Ok(response));
        }