Пример #1
0
        public ActionResult <IEnumerable <BasicOrderlineDTO> > GetAllOrderlines(
            [FromQuery] OrderlineResourceParameters parameters)
        {
            var result = _orderlineService.GetAllOrderlines(parameters);
            var mapped = _mapper.Map <IEnumerable <BasicOrderlineDTO> >(result);

            _paginationMetaDataService.AddMetaDataToResponse(Response, result);

            return(Ok(mapped));
        }
        public IEnumerable <PersonOrderlineSummary> GetPersonSummary(OrderlineResourceParameters parameters)
        {
            var result = FilterOrderlinesByDates(parameters.Start, parameters.End, _orderlines.Include(x => x.OrderedFor));

            //This is evaluated on the client. Wait for EF Core to have proper support for GroupBy.
            var summary = result.ToList().GroupBy(x => x.OrderedFor).Select(x => (


                                                                                new PersonOrderlineSummary
            {
                AmountOfConsumptions = x.Sum(x => x.Quantity),
                TotalCost = x.Sum(x => x.Quantity * x.DrinkPrice),
                LeaderId = x.Key.Id,
                Leader = $"{x.Key.Voornaam} {x.Key.Naam}"
            })
                                                                            );

            return(summary);
        }
Пример #3
0
        public ActionResult <IEnumerable <PersonOrderlineSummary> > GetOrderlineSummary([FromQuery] OrderlineResourceParameters parameters)
        {
            var result = _orderlineService.GetOrderlineSummary(parameters);

            return(Ok(result));
        }
Пример #4
0
 public IEnumerable <PersonOrderlineSummary> GetOrderlineSummary(OrderlineResourceParameters parameters)
 {
     return(_orderlineRepository.GetPersonSummary(parameters));
 }
Пример #5
0
 public PagedList <Orderline> GetAllOrderlines(OrderlineResourceParameters parameters)
 {
     return(_orderlineRepository.FindAll(parameters));
 }