Beispiel #1
0
        public void CalculateForMonth()
        {
            DateTime currentDate    = BdTime.GetCurrentDate();
            DateTime oneMonthBefore = currentDate.AddMonths(-1);


            MonthCheckManager monthCheckManager = new MonthCheckManager();
            OrderManager      orderManager      = new OrderManager();
            ExpenseManager    expenseManager    = new ExpenseManager();


            if (monthCheckManager.GetMonthCheckByMonthYear(oneMonthBefore.Month, oneMonthBefore.Year) == null)
            {
                TransactionManager transactionManager = new TransactionManager();


                User currentUser = SetSession.GetCurrentUser();

                List <Order> totalMealOfOrderList = orderManager.TotalMealForMonthByUserList(oneMonthBefore.Month, oneMonthBefore.Year);

                List <Transaction> listOfTransaction =
                    transactionManager.MakeTransactionListByTotalMealOrderAndMonth
                        (totalMealOfOrderList, currentUser.Id, oneMonthBefore.Month, oneMonthBefore.Year);

                transactionManager.MakeTransactionFromTransactionListForTotalCalculation(listOfTransaction);


                double averageMealPriceOfMonth = expenseManager.GetAverageMealPriceOfMonth(oneMonthBefore.Month, oneMonthBefore.Year);


                orderManager.AddMealPriceForAllOrderByMonth(oneMonthBefore.Month, oneMonthBefore.Year, averageMealPriceOfMonth);


                monthCheckManager.AddCheckForMonthYear(oneMonthBefore.Month, oneMonthBefore.Year);
            }
        }