public async Task <LoadResult> Get(DataSourceLoadOptions loadOptions, [FromQuery] DocumentNumberSequenceSearchRequest request)
        {
            var response =
                (WrappedResponse <IQueryable <DocumentNumberSequence> >) await _numberSequencesService
                .Search(request);

            return(await DataSourceLoader.LoadAsync(response.Data, loadOptions));
        }
Exemplo n.º 2
0
        public async Task <IWrappedResponse> Search(DocumentNumberSequenceSearchRequest request)
        {
            var query = _documentNumberSequenceRepo.FindAll().IgnoreQueryFilters().AsNoTracking().Where(ns => !ns.IsDeleted);

            if (request.CustomerId.HasValue)
            {
                query = query.Where(dns => dns.CustomerId == request.CustomerId);
                return(Ok(query.ProjectTo <DocumentNumberSequence>(Mapper.ConfigurationProvider)));
            }

            return(new WrappedResponse
            {
                ResultType = ResultType.BadRequest,
                State = ErrorHandler.Create().AddMessage(new GeneralError()).GetServiceState()
            });
        }
        public async Task <ActionResult <IEnumerable <DocumentNumberSequence> > > GetByCustomerId(int id)
        {
            var request = new DocumentNumberSequenceSearchRequest
            {
                CustomerId = id
            };

            var response = (IWrappedResponse <IQueryable <DocumentNumberSequence> >) await _numberSequencesService.Search(request);

            var responseToConvert = new WrappedResponse <IEnumerable <DocumentNumberSequence> >
            {
                Data       = response.Data.AsEnumerable(),
                Errors     = response.Errors,
                Id         = response.Id,
                State      = response.State,
                Warnings   = response.Warnings,
                ResultType = response.ResultType
            };

            return(await Task.FromResult <IWrappedResponse>(responseToConvert).Convert <IEnumerable <DocumentNumberSequence> >(this));
        }