public async Task <IActionResult> PutBudget(int id, ApiBudget budget)
        {
            if (id != budget.BudgetId)
            {
                return(BadRequest("Budget does not exist."));
            }

            var resource = new CoreBudget
            {
                BudgetId      = budget.BudgetId,
                TotalAmtBills = budget.TotalAmtBills,
                User          = (await _userRepo.GetUserById(budget.UserId))
            };

            try
            {
                await _repo.UpdateBudgetAsync(resource);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!await _repo.BudgetExistAsync(id))
                {
                    return(NotFound("Budget not found."));
                }
                else
                {
                    throw;
                }
            }

            return(Ok("Budget updated!"));
        }
        public async Task <ActionResult> PostBudget(ApiBudget budget)
        {
            try
            {
                var resource = new CoreBudget
                {
                    BudgetId      = budget.BudgetId,
                    TotalAmtBills = budget.TotalAmtBills,
                    User          = (await _userRepo.GetUserById(budget.UserId))
                };

                await _repo.AddBudgetAsync(resource);

                return(Ok("Budget has been added!"));
            }
            catch (Exception e)
            {
                return(BadRequest(e));
            }
        }