Ejemplo n.º 1
0
        public void AddExpenseWeb([FromBody] string expenseToAdd)
        {
            try
            {
                ExpenseDB _expense           = new ExpenseDB();
                string    expenseToAddString = expenseToAdd;
                string[]  elements           = expenseToAddString.Split(',');
                foreach (string it in elements)
                {
                    string   _expenseName   = elements[0];
                    decimal  _expenseAmount = decimal.Parse(elements[1]);
                    DateTime _expenseDate   = DateTime.Parse(elements[2]);
                    String   _category      = elements[3];
                    int      _userid        = Int32.Parse(FrontendController.Instance().userId());

                    _expense.expenseName     = _expenseName;
                    _expense.expenseAmount   = _expenseAmount;
                    _expense.expenseDate     = _expenseDate;
                    _expense.categoryId      = CategoriesController.Instance().getId(_category);
                    _expense.expenseCategory = CategoriesController.Instance().getCategory(_expense.categoryId);
                    _expense.UserId          = _userid;
                }
                using (var context = new Data.Smart_Saver_APIContext())
                {
                    context.ExpenseDB.Add(_expense);
                    context.SaveChanges();
                }
            }
            catch (Exception e)
            {
                _logger.LogError(e.ToString());
            }
        }
Ejemplo n.º 2
0
        // GET: Expense
        public ActionResult Index()
        {
            // If employer look up by employer ID that matched user ID if employee then look them up based on user ID
            ExpenseDB expenseDB = new ExpenseDB(_configuration);
            UserDB    userDB    = new UserDB(_configuration);
            var       user      = _accessor.HttpContext.Session.GetObjectFromJson <User>("LoggedInUser");

            ViewBag.Type = user.RoleId;
            IEnumerable <Expense> expenses;

            if (user.RoleId == 0)
            {
                expenses = expenseDB.GetExpensesByEmployer(user.EmployerId);
                foreach (var expense in expenses)
                {
                    if (expense.EmployeeName == " ")
                    {
                        var tempUser = userDB.GetUserById(expense.UserID);
                        expense.EmployeeName = tempUser.FirstName + " " + tempUser.LastName;
                    }
                }
            }
            else
            {
                expenses = expenseDB.GetExpenseByUserID(user.IDNumber);
            }
            return(View(expenses));
        }
Ejemplo n.º 3
0
        // GET: Expense/Edit/5
        public ActionResult Edit(int id)
        {
            ExpenseDB expenseDb = new ExpenseDB(_configuration);
            User      user      = _accessor.HttpContext.Session.GetObjectFromJson <User>("LoggedInUser");

            ViewBag.Type = user.RoleId;
            return(View(expenseDb.GetExpenseById(id)));
        }
Ejemplo n.º 4
0
        public ActionResult DeleteConfirmed(int id)
        {
            try
            {
                ExpenseDB expenseDb = new ExpenseDB(_configuration);
                expenseDb.DeleteExpense(id);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
Ejemplo n.º 5
0
        public ActionResult Edit(Expense expense)
        {
            try
            {
                ExpenseDB expenseDB = new ExpenseDB(_configuration);
                User      user      = _accessor.HttpContext.Session.GetObjectFromJson <User>("LoggedInUser");

                if (user.RoleId == 0)
                {
                    expenseDB.UpdateExpenseStatus(expense);
                }
                else
                {
                    expenseDB.UpdateExpense(expense);
                }
                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View(expense));
            }
        }
Ejemplo n.º 6
0
        public ActionResult Create(Expense expense)
        {
            try
            {
                User user = _accessor.HttpContext.Session.GetObjectFromJson <User>("LoggedInUser");

                // sanity check, should never by false
                if (user != null)
                {
                    // Currently, hard code all expenses as belonging to company 1
                    // Need the expense to be connected to the same employer as the employee creating the expense
                    // TODO: Add employer to User model
                    expense.EmployerId = user.EmployerId;
                    ExpenseDB expenseDB = new ExpenseDB(_configuration);
                    expenseDB.InsertExpense(expense, user.IDNumber);
                }
                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View(expense));
            }
        }
Ejemplo n.º 7
0
 public void AddExpense(ExpenseDB expenseToAdd)
 {
     try
     {
         ExpenseDB _expense = new ExpenseDB()
         {
             expenseName     = expenseToAdd.expenseName,
             expenseAmount   = expenseToAdd.expenseAmount,
             expenseDate     = expenseToAdd.expenseDate,
             categoryId      = CategoriesController.Instance().getId(expenseToAdd.expenseCategory),
             expenseCategory = CategoriesController.Instance().getCategory(CategoriesController.Instance().getId(expenseToAdd.expenseCategory)),
             UserId          = Int32.Parse(FrontendController.Instance().userId())
         };
         using (var context = new Data.Smart_Saver_APIContext())
         {
             context.ExpenseDB.Add(_expense);
             context.SaveChanges();
         }
     }
     catch (Exception e)
     {
         _logger.LogError(e.ToString());
     }
 }
Ejemplo n.º 8
0
        // GET: Expense/Details/5
        public ActionResult Details(int id)
        {
            ExpenseDB expenseDb = new ExpenseDB(_configuration);

            return(View(expenseDb.GetExpenseById(id)));
        }