Exemplo n.º 1
0
        public IList <RangeUpdateModel> PrepExpenseUpdate(CategoriesExpense expenses, DateTime effectiveDate)
        {
            var expenseRange = GetExpenseRangeString(effectiveDate);
            var update       = new RangeUpdateModel();

            update.Dimension = DimensionEnums.Columns;
            update.Range     = expenseRange;
            update.Values    = new List <IList <object> > {
                new List <object> {
                    expenses.DailyFood,
                    expenses.Gifts,
                    expenses.Medical,
                    expenses.Health,
                    expenses.Necessities,
                    expenses.Transportation,
                    expenses.Personal,
                    expenses.Fun,
                    expenses.Utilities,
                    expenses.Travel,
                    expenses.Debt,
                    expenses.Electronics,
                    expenses.Goals,
                    expenses.Rent,
                    expenses.Car,
                    expenses.Restaurants,
                    expenses.Appartment,
                    expenses.Investment,
                    expenses.Other
                },
            };

            return(new List <RangeUpdateModel> {
                update
            });
        }
        public IList <RangeUpdateModel> PrepExpenseCategoryProjectionUpdate(CategoriesExpense expenses, UserEnum user)
        {
            var expenseUpdateModel = new RangeUpdateModel();

            expenseUpdateModel.Range = user == UserEnum.Green ?
                                       _sheetDetails.GreenExpenseProjectionRange :
                                       _sheetDetails.RedExpenseProjectionRange;

            expenseUpdateModel.Dimension = DimensionEnums.Columns;

            // TODO: use order-safe enum
            expenseUpdateModel.Values = new List <IList <object> > {
                new List <object> {
                    expenses.DailyFood,
                    expenses.Gifts,
                    expenses.Medical,
                    expenses.Health,
                    expenses.Necessities,
                    expenses.Transportation,
                    expenses.Personal,
                    expenses.Fun,
                    expenses.Utilities,
                    expenses.Travel,
                    expenses.Debt,
                    expenses.Electronics,
                    expenses.Goals,
                    expenses.Rent,
                    expenses.Car,
                    expenses.Restaurants,
                    expenses.Appartment,
                    expenses.Investment,
                    expenses.Other
                },
            };
            return(new List <RangeUpdateModel> {
                expenseUpdateModel
            });
        }
Exemplo n.º 3
0
        public CategoriesPersonal LoadProjections()
        {
            var rawExpense = LoadRange(_sheetDetails.ExpenseProjectionRange);

            var expense = new CategoriesExpense();

            if (rawExpense != null && rawExpense.Count > 0)
            {
                expense.DailyFood = decimal
                                    .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.DailyFood][0].ToString(), NumberStyles.Currency);
                expense.Gifts = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Gifts][0].ToString(), NumberStyles.Currency);
                expense.Medical = decimal
                                  .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Medical][0].ToString(), NumberStyles.Currency);
                expense.Health = decimal
                                 .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Health][0].ToString(), NumberStyles.Currency);
                expense.Necessities = decimal
                                      .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Necessities][0].ToString(), NumberStyles.Currency);
                expense.Transportation = decimal
                                         .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Transportation][0].ToString(), NumberStyles.Currency);
                expense.Personal = decimal
                                   .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Personal][0].ToString(), NumberStyles.Currency);
                expense.Fun = decimal
                              .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Fun][0].ToString(), NumberStyles.Currency);
                expense.Utilities = decimal
                                    .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Utilities][0].ToString(), NumberStyles.Currency);
                expense.Travel = decimal
                                 .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Travel][0].ToString(), NumberStyles.Currency);
                expense.Debt = decimal
                               .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Debt][0].ToString(), NumberStyles.Currency);
                expense.Electronics = decimal
                                      .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Electronics][0].ToString(), NumberStyles.Currency);
                expense.Goals = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Goals][0].ToString(), NumberStyles.Currency);
                expense.Rent = decimal
                               .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Rent][0].ToString(), NumberStyles.Currency);
                expense.Car = decimal
                              .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Car][0].ToString(), NumberStyles.Currency);
                expense.Restaurants = decimal
                                      .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Restaurants][0].ToString(), NumberStyles.Currency);
                expense.Appartment = decimal
                                     .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Appartment][0].ToString(), NumberStyles.Currency);
                expense.Investment = decimal
                                     .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Investment][0].ToString(), NumberStyles.Currency);
                expense.Other = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseProjectionEnum.Other][0].ToString(), NumberStyles.Currency);
            }

            var rawIncome = LoadRange(_sheetDetails.IncomeProjectionRange);
            var income    = new CategoriesIncome();

            if (rawIncome != null && rawIncome.Count > 0)
            {
                income.Savings = decimal
                                 .Parse(rawExpense[(int)CategoriesIncomeProjectionEnum.Savings][0].ToString(), NumberStyles.Currency);
                income.Paycheck = decimal
                                  .Parse(rawExpense[(int)CategoriesIncomeProjectionEnum.Paycheck][0].ToString(), NumberStyles.Currency);
                income.Bonus = decimal
                               .Parse(rawExpense[(int)CategoriesIncomeProjectionEnum.Bonus][0].ToString(), NumberStyles.Currency);
                income.Personal = decimal
                                  .Parse(rawExpense[(int)CategoriesIncomeProjectionEnum.Personal][0].ToString(), NumberStyles.Currency);
                income.Gifts = decimal
                               .Parse(rawExpense[(int)CategoriesIncomeProjectionEnum.Gifts][0].ToString(), NumberStyles.Currency);
                income.Other = decimal
                               .Parse(rawExpense[(int)CategoriesIncomeProjectionEnum.Other][0].ToString(), NumberStyles.Currency);
            }


            return(new CategoriesPersonal
            {
                Expense = expense,
                Income = income,
                RawExpense = rawExpense,
                RawIncome = rawIncome
            });
        }
        private CategoriesPersonal LoadPersonalCategories(UserEnum user)
        {
            string expenseRange = null;
            string incomeRange  = null;

            switch (user)
            {
            case UserEnum.Green:
                expenseRange = _sheetDetails.GreenExpenseCategoriesRange;
                incomeRange  = _sheetDetails.GreenIncomeCategoriesRange;
                break;

            case UserEnum.Red:
                expenseRange = _sheetDetails.RedExpenseCategoriesRange;
                incomeRange  = _sheetDetails.RedIncomeCategoriesRange;
                break;

            default: break;
            }

            // load expense categories
            var rawExpense = LoadRange(expenseRange);
            var expense    = new CategoriesExpense();

            if (rawExpense != null && rawExpense.Count > 0)
            {
                expense.Total = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Total][0].ToString());
                expense.DailyFood = decimal
                                    .Parse(rawExpense[(int)CategoriesExpenseRowEnum.DailyFood][0].ToString());
                expense.Gifts = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Gifts][0].ToString());
                expense.Medical = decimal
                                  .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Medical][0].ToString());
                expense.Health = decimal
                                 .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Health][0].ToString());
                expense.Necessities = decimal
                                      .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Necessities][0].ToString());
                expense.Transportation = decimal
                                         .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Transportation][0].ToString());
                expense.Personal = decimal
                                   .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Personal][0].ToString());
                expense.Fun = decimal
                              .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Fun][0].ToString());
                expense.Utilities = decimal
                                    .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Utilities][0].ToString());
                expense.Travel = decimal
                                 .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Travel][0].ToString());
                expense.Debt = decimal
                               .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Debt][0].ToString());
                expense.Electronics = decimal
                                      .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Electronics][0].ToString());
                expense.Goals = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Goals][0].ToString());
                expense.Rent = decimal
                               .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Rent][0].ToString());
                expense.Car = decimal
                              .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Car][0].ToString());
                expense.Restaurants = decimal
                                      .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Restaurants][0].ToString());
                expense.Appartment = decimal
                                     .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Appartment][0].ToString());
                expense.Investment = decimal
                                     .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Investment][0].ToString());
                expense.Other = decimal
                                .Parse(rawExpense[(int)CategoriesExpenseRowEnum.Other][0].ToString());
            }

            // load income categories
            var rawIncome = LoadRange(incomeRange);
            var income    = new CategoriesIncome();

            if (rawIncome != null && rawIncome.Count > 0)
            {
                income.Total = decimal
                               .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Total][0].ToString());
                income.Savings = decimal
                                 .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Savings][0].ToString());
                income.Paycheck = decimal
                                  .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Paycheck][0].ToString());
                income.Bonus = decimal
                               .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Bonus][0].ToString());
                income.Personal = decimal
                                  .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Personal][0].ToString());
                income.Gifts = decimal
                               .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Gifts][0].ToString());
                income.Refund = decimal
                                .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Refund][0].ToString());
                income.Payment = decimal
                                 .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Payment][0].ToString());
                income.Other = decimal
                               .Parse(rawIncome[(int)CategoriesIncomeRowEnum.Other][0].ToString());
            }


            return(new CategoriesPersonal
            {
                Expense = expense,
                RawExpense = rawExpense,
                Income = income,
                RawIncome = rawIncome
            });
        }