Exemplo n.º 1
0
        public async Task <ActionResult <FuelSummaryDto> > GetFuelSummaryForAdmin([FromQuery] FuelExpensesParams fuelExpensesParams)
        {
            var fuelExpenses = await _unitOfWork.FuelExpenseRepository.GetAdminSummaryExpenses(fuelExpensesParams);

            FuelSummaryDto summary = new FuelSummaryDto();

            foreach (FuelExpense f in fuelExpenses)
            {
                summary.totalAmount    += f.InvoiceAmount;
                summary.totalKm        += f.CarKm;
                summary.totalkmOutside += f.TripOutsideKm;
                summary.totalLitres    += f.InvoiceLitres;
                switch (f.FuelType)
                {
                case "benzene":
                    summary.totalAmountBenzene += f.InvoiceAmount;
                    summary.totalLitresBenzene += f.InvoiceLitres;
                    break;

                case "diesel":
                    summary.totalAmountDiesel += f.InvoiceAmount;
                    summary.totalLitresDiesel += f.InvoiceLitres;
                    break;

                case "gas":
                    summary.totalAmountGas += f.InvoiceAmount;
                    summary.totalLitresGas += f.InvoiceLitres;
                    break;
                }
            }
            return(summary);
        }
Exemplo n.º 2
0
        public async Task <PagedList <FuelExpenseDto> > GetAdminFuelExpenses(FuelExpensesParams fuelExpensesParams)
        {
            var query = _context.FuelExpenses
                        .Include(x => x.User)
                        .Where(x => x.InvoiceDate >= fuelExpensesParams.FromDate && x.InvoiceDate <= fuelExpensesParams.ToDate)
                        .AsQueryable();

            return(await PagedList <FuelExpenseDto> .CreateAsync(query.ProjectTo <FuelExpenseDto>(_mapper.ConfigurationProvider),
                                                                 fuelExpensesParams.PageNumber, fuelExpensesParams.PageSize));
        }
Exemplo n.º 3
0
 public async Task <IEnumerable <FuelExpense> > GetAdminSummaryExpenses(FuelExpensesParams fuelExpensesParams)
 {
     return(await _context.FuelExpenses.Where(x => x.InvoiceDate >= fuelExpensesParams.FromDate && x.InvoiceDate <= fuelExpensesParams.ToDate)
            .ToListAsync());
 }
Exemplo n.º 4
0
        public async Task <ActionResult <IEnumerable <FuelExpenseDto> > > GetFuelExpensesForAdmin([FromQuery] FuelExpensesParams fuelExpensesParams)
        {
            var fuelExpenses = await _unitOfWork.FuelExpenseRepository.GetAdminFuelExpenses(fuelExpensesParams);

            Response.AddPaginationHeader(fuelExpenses.CurrentPage, fuelExpenses.PageSize, fuelExpenses.TotalCount, fuelExpenses.TotalPages);

            return(fuelExpenses);
        }