public ActionResult DoughnutGraph()
        {
            var       context = new HBMContext();
            ArrayList xValue  = new ArrayList();
            ArrayList yValue  = new ArrayList();

            var results = (from c in context.Transactions select c);

            results.ToList().ForEach(rs => xValue.Add(rs.Budgets.Name));
            results.ToList().ForEach(rs => yValue.Add(rs.Price));


            string myTheme = @"<Chart>
                <ChartAreas>
                    <ChartArea Name=""Default"">
                    </ChartArea>
                </ChartAreas>
                <Series>
                    <Series Name=""Default"" CustomProperties=""PieLabelStyle = Disabled""></Series>
                </Series>
                <Titles>
                    <Title Name=""Default""></Title>
                </Titles>
            </Chart>";

            new Chart(width: 600, height: 400, theme: myTheme)
            .AddSeries("Default", chartType: "Doughnut", xValue: xValue, yValues: yValue)
            .AddLegend("Kategorie")

            .Write("bmp");

            return(null);
        }
        public ActionResult CharterColumn()
        {
            var       context = new HBMContext();
            ArrayList xValue  = new ArrayList();
            ArrayList yValue  = new ArrayList();

            var results = (from c in context.Transactions select c);

            results.ToList().ForEach(rs => xValue.Add(rs.Budgets.Name));
            results.ToList().ForEach(rs => yValue.Add(rs.Price));

            new Chart(width: 600, height: 400, theme: ChartTheme.Blue)
            .AddTitle("Twoje wydatki")
            .AddSeries("Default", chartType: "Column", xValue: xValue, yValues: yValue)
            .Write("bmp");

            return(null);
        }
示例#3
0
        public ActionResult CharterBar(BalanceListingModel model)
        {
            var       context = new HBMContext();
            ArrayList xValue  = new ArrayList();
            ArrayList yValue  = new ArrayList();

            // balance = GetBalances();
            xValue.Add("Przychody");
            xValue.Add("Wydatki");

            yValue.Add(model.Incomes);
            yValue.Add(model.Expenses);

            new Chart(width: 600, height: 400, theme: Color.CHARTS_THEME)
            .AddSeries("Default", xValue: xValue, yValues: yValue)
            .Write("bmp");

            return(null);
            ///*64, 165, 191, 228*/
            /////163, 163, 163, 163
        }
示例#4
0
        public BalanceListingModel GetBalances()
        {
            BalanceListingModel   model                = new BalanceListingModel();
            DebtCardsListingModel debtsCardModel       = new DebtCardsListingModel();
            DebtCardServices      debtCardServices     = new DebtCardServices();
            TransactionsServices  transactionsServices = new TransactionsServices();
            float countRemaningLimit = 0;
            var   context = new HBMContext();
            float incomes = 0, expenses = 0;
            int   valueCompare = 0;

            debtsCardModel.DebtCards    = debtCardServices.GetAllDebtCards();
            debtsCardModel.Transactions = transactionsServices.GetAllTransactions();

            DateTime now             = DateTime.Today;
            DateTime searchTermStart = new DateTime(now.Year, now.Month, 1);

            foreach (var transactions in context.Transactions)
            {
                valueCompare = DateTime.Compare(transactions.Date, (DateTime)now);
                if (valueCompare <= 0)
                {
                    valueCompare = DateTime.Compare((DateTime)searchTermStart, transactions.Date);
                    {
                        if (valueCompare <= 0) //daty zgodne
                        {
                            if (transactions.Budgets.KBudgetID == 1)
                            {
                                incomes += transactions.Price;
                            }
                            else
                            {
                                expenses += transactions.Price;
                            }
                        }
                    }
                }
            }


            foreach (var debts in debtsCardModel.DebtCards)
            {
                float remaning = debts.Limit;
                foreach (var transactionsDebts in debtsCardModel.Transactions)
                {
                    valueCompare = DateTime.Compare(transactionsDebts.Date, (DateTime)now);
                    if (valueCompare <= 0)
                    {
                        valueCompare = DateTime.Compare((DateTime)searchTermStart, transactionsDebts.Date);
                        {
                            if (valueCompare <= 0) //daty zgodne
                            {
                                if (transactionsDebts.BudgetsName == debts.Name)
                                {
                                    remaning   -= transactionsDebts.Price;
                                    debts.Price = remaning;
                                }
                            }
                        }
                    }
                }
                model.DebtCardRemaning = debts.Limit - remaning;
                countRemaningLimit    += model.DebtCardRemaning;
            }

            model.Incomes  = incomes;
            model.Expenses = expenses;

            model.DebtCardRemaning = countRemaningLimit;

            return(model);
        }