public byte[] GetExpenseReport(ExpenseFilterDTO expenseFilter) { try { ExpenseDSL expenseDSL = new ExpenseDSL(mapper); List <ExpenseDTO> expenseList = expenseDSL.GetExpenseReport(expenseFilter.DateFrom, expenseFilter.DateTo, expenseFilter.ClinicId, expenseFilter.UserId, expenseFilter.Type); expenseFilter.InSum = expenseList.Where(e => e.Type == ExpenseType.In).Sum(e => e.Cost); expenseFilter.OutSum = expenseList.Where(e => e.Type == ExpenseType.Out).Sum(e => e.Cost); expenseFilter.ClinicName = expenseFilter.ClinicId == 0 ? "الكل" : new ClinicDSL(mapper).GetById(expenseFilter.ClinicId).Name; expenseFilter.UserFullName = expenseFilter.UserId == 0 ? "الكل" : new UserDSL(mapper).GetById(expenseFilter.UserId).FullName; switch (expenseFilter.Type) { case 0: expenseFilter.TypeName = "الكل"; break; case ExpenseType.In: expenseFilter.TypeName = "داخل للعيادة"; break; case ExpenseType.Out: expenseFilter.TypeName = "خارج من العيادة"; break; } List <ExpenseFilterDTO> parameterList = new List <ExpenseFilterDTO> { expenseFilter }; return(GenerateReportAsync("ExpenseReport", "ExpenseList", expenseList, parameterList)); } catch (Exception e) { throw e; } }
public ExpenseController(IMapper _mapper) { expenseDSL = new ExpenseDSL(_mapper); }