public async Task <PagedResponse <IEnumerable <Entity> > > Handle(GetPositionsQuery request, CancellationToken cancellationToken) { var validFilter = request; var pagination = request; //filtered fields security if (!string.IsNullOrEmpty(validFilter.Fields)) { //limit to fields in view model validFilter.Fields = _modelHelper.ValidateModelFields <GetPositionsViewModel>(validFilter.Fields); } if (string.IsNullOrEmpty(validFilter.Fields)) { //default fields from view model validFilter.Fields = _modelHelper.GetModelFields <GetPositionsViewModel>(); } // query based on filter var entityPositions = await _positionRepository.GetPagedPositionReponseAsync(validFilter); var data = entityPositions.data; RecordsCount recordCount = entityPositions.recordsCount; // response wrapper return(new PagedResponse <IEnumerable <Entity> >(data, validFilter.PageNumber, validFilter.PageSize, recordCount)); }
public async Task <PagedResponse <IEnumerable <Entity> > > Handle(GetEmployeesQuery request, CancellationToken cancellationToken) { var validFilter = request; //filtered fields security if (!string.IsNullOrEmpty(validFilter.Fields)) { //limit to fields in view model validFilter.Fields = _modelHelper.ValidateModelFields <GetEmployeesViewModel>(validFilter.Fields); } if (string.IsNullOrEmpty(validFilter.Fields)) { //default fields from view model validFilter.Fields = _modelHelper.GetModelFields <GetEmployeesViewModel>(); } // query based on filter var entityEmployees = await _employeeRepository.GetPagedEmployeeReponseAsync(validFilter); // response wrapper return(new PagedResponse <IEnumerable <Entity> >(entityEmployees, validFilter.PageNumber, validFilter.PageSize)); }