public async Task <JsonResult> GetIsCurrentBudgetFinalized()
        {
            User currentUser = await this.authService.GetCurrentUser();

            GetRootBudgetQuery query = new GetRootBudgetQuery(this.unitOfWork, this.budgetLoader, currentUser.Id);
            Fund currentRootFund     = await query.Run();

            return(new JsonResult(new {
                isFinalized = currentRootFund.CurrentBudget.DateFinalizedTo.HasValue
            }));
        }
        public async Task <JsonResult> GetRootBudget()
        {
            User currentUser = await this.authService.GetCurrentUser();

            GetRootBudgetQuery query = new GetRootBudgetQuery(this.unitOfWork, this.budgetLoader, currentUser.Id);
            Fund rootFund            = await query.Run();

            RootBudgetResponse response = new RootBudgetResponse(rootFund);

            return(new JsonResult(response));
        }