public async Task <IActionResult> GetAsync()
        {
            var query = new GetAllDocumentsQuery();

            var response = await _mediator.Send(query);

            return(JsonResult(response));
        }
        public async Task <IEnumerable <DocumentResponseModel> > Handle(GetAllDocumentsQuery request,
                                                                        CancellationToken cancellationToken)
        {
            var documents = await _documentRepository.GetAllDocuments();

            var responseModels = documents.Adapt <ICollection <DocumentResponseModel> >();

            return(responseModels);
        }
        public async Task <PagedApiResponse <IEnumerable <ReadDocumentListResponse> > > Handle(GetAllDocumentsQuery request, CancellationToken cancellationToken)
        {
            request.ValidateValues();

            PaginatedList <Document> paginatedList = await _repository.GetPagedReponseAsync(_authenticatedUser.UserId, request.Page, request.PageSize);

            IEnumerable <ReadDocumentListResponse> dto = _mapper.Map <IEnumerable <ReadDocumentListResponse> >(paginatedList.Items);

            ApiResponsePagination pagination = ApiResponsePagination.Build(paginatedList);

            return(new PagedApiResponse <IEnumerable <ReadDocumentListResponse> >(dto, pagination));
        }
 public async Task <IActionResult> Latest([FromQuery] GetAllDocumentsQuery filter)
 => Ok(await Mediator.Send(filter));