public async Task <AddExpenseResponseModel> AddExpense(AddExpenseModel addExpense)
        {
            var expense = new Expenditures()
            {
                UserId      = addExpense.UserId,
                Amount      = addExpense.Amount,
                Description = addExpense.Description,
                ExpDate     = addExpense.ExpDate,
                Remarks     = addExpense.Remarks
            };

            var createdexpense = await _expenseRepository.AddAsync(expense);


            // map user object to UserRegisterResponseModel object
            var createdExpResponse = new AddExpenseResponseModel
            {
                UserId      = createdexpense.UserId,
                Amount      = createdexpense.Amount,
                Description = createdexpense.Description,
                ExpDate     = createdexpense.ExpDate,
                Remarks     = createdexpense.Remarks
            };

            return(createdExpResponse);
        }
Пример #2
0
        public async Task <IActionResult> addNewExpense(AddExpenseModel model)
        {
            var exp = await _expenseService.AddExpense(model);

            // 201
            return(Ok(exp));
        }
Пример #3
0
 public IActionResult AddExpense(
     [Bind(nameof(AddExpenseModel.Name),
           nameof(AddExpenseModel.Category),
           nameof(AddExpenseModel.Amount),
           nameof(AddExpenseModel.Date))] AddExpenseModel model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             model.AddExpense();
             model.Response = new ResponseModel("Expense Added Successfully", ResponseType.Success);
             return(RedirectToAction("Index"));
         }
         catch (DuplicationException ex)
         {
             model.Response = new ResponseModel(ex.Message, ResponseType.Failure);
         }
         catch (Exception ex)
         {
             model.Response = new ResponseModel("Failed To Add Expense", ResponseType.Failure);
         }
     }
     return(View(model));
 }
 public ActionResult Add(AddExpenseModel model)
 {
     if (ModelState.IsValid)
     {
         _repository.Add(model);
         return(RedirectToAction("List"));
     }
     return(View(model));
 }
Пример #5
0
        public async Task <bool> AddExpenseAsync(AddExpenseModel addModel)
        {
            var newExpense = _mapper.Map <Expense>(addModel);

            _context.Expenses.Add(newExpense);

            await _context.SaveChangesAsync();

            return(true);
        }
Пример #6
0
        public async Task <ActionResult <Expense> > PostAsync([FromBody] AddExpenseModel expense)
        {
            _logger.LogInformation("Creating expense...");

            var created = await _service.CreateExpenseAsync(
                _mapper.Map <DAL.Entities.Expense>(expense));

            _logger.LogInformation($"Created expense [{created.Id}].");

            return(CreatedAtAction(
                       "GetAllExpenses",
                       _mapper.Map <Expense>(created)));
        }
Пример #7
0
        public async Task <IActionResult> AddExpenseAsync([FromBody] AddExpenseModel addModel)
        {
            try
            {
                var createResult = await _expensesService.AddExpenseAsync(addModel);

                return(createResult ? (IActionResult)NoContent() : BadRequest());
            }
            catch (Exception e)
            {
                return(StatusCode((int)HttpStatusCode.InternalServerError, new ErrorResponseModel(e.Message)));
            }
        }
        public ActionResult Add()
        {
            var categories = _categoryRepository.GetAllCategories();

            AddExpenseModel model = new AddExpenseModel();

            model.Categories = categories.Select(c => new SelectListItem
            {
                Text  = c.Name,
                Value = c.Id.ToString()
            }).ToList();

            return(View(model));
        }
Пример #9
0
        public IActionResult AddExpense()
        {
            var accountId = HttpContext.Session.Get <long>(SessionHelper.SessionKeyAccountId);

            if (accountId == default)
            {
                return(RedirectToAction("Login", "Account", new { id = LoginHelper.BudgetApp }));
            }

            var model = new AddExpenseModel(accountId);

            model.SetBaseViewModel(accountId);
            return(View(SettingsHelper.GetExpenseControllerViewPath("AddExpense"), model));
        }
        public void Add(AddExpenseModel model)
        {
            using (var ctx = new ManageExpensesContext2())
            {
                var currentUserId = _currentUserProvider.GetCurrentUserId();
                var user          = ctx.Users.Find(currentUserId);

                ExpenseCategory category = ctx.ExpenseCategiries.SingleOrDefault(ec => ec.Id == model.CategoryId);
                //User user = ctx.Users.SingleOrDefault(u => u.Id == model.UserId);


                Expense expense = new Expense()
                {
                    User     = user,
                    Category = category,
                    Name     = model.Name,
                    Value    = model.Value
                };
                ctx.Expenses.Add(expense);
                ctx.SaveChanges();
            }
        }
Пример #11
0
        public IActionResult AddExpense()
        {
            var model = new AddExpenseModel();

            return(View(model));
        }
Пример #12
0
 public Task <Expense> CreateExpenseAsync(AddExpenseModel expense)
 {
     return(_clientFactory.CreateClient().PostAsync(expense));
 }