public async Task <IActionResult> BudgetSummary() { var id = RouteData.Values["id"]; if (id == null) { return(RedirectToAction("Index", "MyAccounts")); } ApplicationSessionState.CheckSessionStatus(id.ToString()); Guid guid = Guid.Parse(id.ToString()); IncomeAndExpenditure incomeAndExpenditure = ApplicationSessionState.GetIncomeAndExpenditure(guid); string lowellReference = ApplicationSessionState.GetLowellReferenceFromSurrogate(guid); var budgetSummary = GetBudgetSummary(incomeAndExpenditure, guid); if (budgetSummary != null && incomeAndExpenditure != null) { string employmentStatus = incomeAndExpenditure.EmploymentStatus; string housingStatus = incomeAndExpenditure.HousingStatus; _gtmService.RaiseBudgetCalculatorCompletedEvent(budgetSummary, LoggedInUserId, employmentStatus, housingStatus); } if (LoggedInUser.IsLoggedInUser && incomeAndExpenditure.BudgetSource != "MyBudget Tool") { await SaveBudgetSummary(incomeAndExpenditure, lowellReference); budgetSummary.IsSaved = true; } if (incomeAndExpenditure.BudgetSource == "MyBudget Tool" && incomeAndExpenditure.IncomeTotal <= 0) { return(RedirectToAction("ZeroIncome")); } else if (incomeAndExpenditure.BudgetSource == "MyBudget Tool") { budgetSummary.IsSaved = true; } budgetSummary.ExternallyLaunched = ApplicationSessionState.IandELaunchedExternally; budgetSummary.BudgetSource = incomeAndExpenditure.BudgetSource ?? "Budget Calculator"; return(View(budgetSummary)); }