Example #1
0
        public async Task <IActionResult> GetAll(
            [FromRoute] Guid tenantId,
            [FromQuery] int?contentTypeCode      = null,
            [FromQuery] DateTime?filterDateBegin = null,
            [FromQuery] DateTime?filterDateEnd   = null,
            [FromQuery] int?pageIndex            = null,
            [FromQuery] int?pageSize             = null)
        {
            RulesFilterDto rulesFilterDto = null;
            PaginationDto  paginationDto  = null;

            if (contentTypeCode != null || filterDateBegin != null || filterDateEnd != null)
            {
                rulesFilterDto = new RulesFilterDto
                {
                    ContentTypeCode = contentTypeCode,
                    FilterDateBegin = filterDateBegin,
                    FilterDateEnd   = filterDateEnd
                };
            }

            if (pageIndex != null && pageSize != null)
            {
                paginationDto = new PaginationDto
                {
                    PageIndex = pageIndex.GetValueOrDefault(),
                    PageSize  = pageSize.GetValueOrDefault()
                };
            }

            IEnumerable <RuleDto> ruleDtos = await this.ruleService.GetAll(tenantId, rulesFilterDto, paginationDto);

            return(this.Ok(ruleDtos));
        }
Example #2
0
        public async Task <IEnumerable <RuleDto> > GetAll(Guid tenantId, RulesFilterDto rulesFilterDto, PaginationDto paginationDto)
        {
            RulesFilter rulesFilter = rulesFilterDto?.ToRulesFilter();
            Pagination  pagination  = paginationDto?.ToPagination();

            return(await this.ruleRepository.GetAll(tenantId, rulesFilter, pagination)
                   .ContinueWith(rulesTask =>
            {
                IEnumerable <Rule> rules = rulesTask.GetAwaiter().GetResult();

                return rules.Select(r => this.ConvertToDto(r));
            }));
        }