Ejemplo n.º 1
0
        public ManageBudget(YearTop year)
        {
            _skipRefreshing = true;

            InitializeComponent();

            if (year == null)
            {
                throw new ArgumentException("Uninitialized year!");
            }

            _year                 = year;
            _dateSelected         = DateTime.Today;
            _showAnnual           = false;
            _allDatesTransactions = false;
            _selectedAccountName  = string.Empty;
            var accounts = _year.GetAccounts();

            if (accounts.Count <= 0)
            {
                throw new ArgumentException("Must instantiate at least one account.");
            }
            dateDtp.Value        = DateTime.Today;
            showAnnualCb.Checked = false;
            allDatesCb.Checked   = false;

            _year.FastForward(DateTime.Today);

            transactionsLv.MouseUp += new MouseEventHandler(purchasesLv_MouseUp);
            hardBillsLv.MouseUp    += new MouseEventHandler(hardBillsLv_MouseUp);
            softBillsLv.MouseUp    += new MouseEventHandler(softBillsLv_MouseUp);

            accountsLv.Items.Clear();
            foreach (var account in accounts)
            {
                ListViewItem lvi = new ListViewItem(account.Name);
                accountsLv.Items.Add(lvi);
            }
            accountsLv.Items[0].Checked = true;

            _skipRefreshing = false;
            RefreshPage();
        }
Ejemplo n.º 2
0
        private void softBillsLv_MouseUp(object sender, MouseEventArgs e)
        {
            int index = -1;

            if (e.Button == MouseButtons.Right)
            {
                if (softBillsLv.Items.Count > 0)
                {
                    ListViewItem selectedItem = softBillsLv.GetItemAt(e.X, e.Y);
                    if (selectedItem != null)
                    {
                        index = selectedItem.Index;
                    }
                }

                if (_year.GetAccounts().Count > 0)
                {
                    sbAdd.Enabled = true;
                }
                else
                {
                    sbAdd.Enabled = false;
                }

                if (index > -1)
                {
                    sbDelete.Enabled = true;
                    sbEdit.Enabled   = true;
                }
                else
                {
                    sbDelete.Enabled = false;
                    sbEdit.Enabled   = false;
                }
                sbCms.Show(this, new Point(e.X + ((Control)sender).Left + 20, e.Y + ((Control)sender).Top + 20));
                //accountCms.Show(this, new Point(e.X, e.Y));
            }
        }
Ejemplo n.º 3
0
        public EditSbTransactionForm(YearTop year, DateTime currentDate)
        {
            InitializeComponent();

            if (year == null)
            {
                throw new ArgumentException("Year must be initialized.");
            }

            _year = year;

            var accounts = _year.GetAccounts();

            foreach (var keyValue in accounts)
            {
                accountCb.Items.Add(keyValue.Name);
            }
            _dateSelected  = currentDate;
            _monthSelected = _dateSelected.Month;
            dateDtp.Value  = _dateSelected;

            UpdateEntireTpl();
        }
Ejemplo n.º 4
0
        private void RefreshPage()
        {
            accountsLv.Items.Clear();
            var accounts = _year.GetAccounts();

            foreach (var account in accounts)
            {
                ListViewItem lvi = new ListViewItem(account.Name);
                lvi.SubItems.Add(account.GetType().Name);
                lvi.SubItems.Add(account.BalanceHistory[account.StartingDate].ToString());
                accountsLv.Items.Add(lvi);
            }

            incomeLv.Items.Clear();
            var incomes = _year.GetIncomeSources();

            foreach (var incomeSrc in incomes)
            {
                ListViewItem lvi = new ListViewItem(incomeSrc.Name);
                lvi.SubItems.Add(incomeSrc.PaydayAmount.ToString());
                lvi.SubItems.Add(incomeSrc.PaydayFrequency.ToString());
                lvi.SubItems.Add(incomeSrc.DepositAccount.Name);
                incomeLv.Items.Add(lvi);
            }

            var hardBills = _year.GetHardBills();

            hardBillsLv.Items.Clear();
            foreach (var hardBill in hardBills)
            {
                ListViewItem lvi = new ListViewItem(hardBill.Name);
                lvi.SubItems.Add(hardBill.Amount.ToString());
                lvi.SubItems.Add(hardBill.Frequency.ToString());
                lvi.SubItems.Add(hardBill.PaymentAccount.Name);
                lvi.SubItems.Add(hardBill.FirstBillDue.ToString("d"));
                hardBillsLv.Items.Add(lvi);
            }

            annualSbLv.Items.Clear();
            foreach (var softBill in _year.GetSoftBillGroup(0))
            {
                ListViewItem lvi = new ListViewItem(softBill.Key);
                lvi.SubItems.Add(softBill.Value.ToString());
                annualSbLv.Items.Add(lvi);
            }

            monthlySbLv.Items.Clear();
            foreach (var softBill in _year.GetSoftBillGroup(1))
            {
                ListViewItem lvi = new ListViewItem(softBill.Key);
                lvi.SubItems.Add(softBill.Value.ToString());
                monthlySbLv.Items.Add(lvi);
            }

            decimal totalSalary = _year.AnnualIncome;
            decimal totalHb     = _year.AnnualHardBillAmount;
            decimal totalSb     = _year.AnnualSoftBillAmount;
            decimal totalBills  = totalHb + totalSb;
            decimal totalDiff   = totalSalary - totalBills;

            totSalaryTb.Text    = totalSalary.ToString();
            totHardBillsTb.Text = totalHb.ToString();
            totSoftBillsTb.Text = totalSb.ToString();
            totBillsTb.Text     = totalBills.ToString();
            totDiffTb.Text      = totalDiff.ToString();
        }