From 613f79f6eec5dbd7f8af3f0f1b01e578bf47ff56 Mon Sep 17 00:00:00 2001 From: Josh Date: Mon, 21 Jul 2025 18:36:25 +0000 Subject: [PATCH] Identified the need for separate Career and College Profile editors --- .../PremiumOnboarding/CareerOnboarding.js | 1 + .../PremiumOnboarding/CollegeOnboarding.js | 2 ++ src/components/PremiumOnboarding/ReviewPage.js | 3 +++ src/utils/FinancialProjectionService.js | 15 +++++---------- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/components/PremiumOnboarding/CareerOnboarding.js b/src/components/PremiumOnboarding/CareerOnboarding.js index cda102a..96cfcc9 100644 --- a/src/components/PremiumOnboarding/CareerOnboarding.js +++ b/src/components/PremiumOnboarding/CareerOnboarding.js @@ -48,6 +48,7 @@ const CareerOnboarding = ({ nextStep, prevStep, data, setData, finishNow }) => { setCareerObj(navCareerObj); localStorage.setItem('selectedCareer', JSON.stringify(navCareerObj)); + setData(prev => ({ ...prev, career_name : navCareerObj.title, diff --git a/src/components/PremiumOnboarding/CollegeOnboarding.js b/src/components/PremiumOnboarding/CollegeOnboarding.js index 5204398..63adc4d 100644 --- a/src/components/PremiumOnboarding/CollegeOnboarding.js +++ b/src/components/PremiumOnboarding/CollegeOnboarding.js @@ -434,6 +434,8 @@ useEffect(() => { setData(prev => ({ ...prev, + interest_rate, + loan_term, tuition: chosenTuition, program_length: chosenProgramLength })); diff --git a/src/components/PremiumOnboarding/ReviewPage.js b/src/components/PremiumOnboarding/ReviewPage.js index 893ec18..c7648ba 100644 --- a/src/components/PremiumOnboarding/ReviewPage.js +++ b/src/components/PremiumOnboarding/ReviewPage.js @@ -1,6 +1,7 @@ import React from 'react'; // Hypothetical Button component from your UI library import { Button } from '../ui/button.js'; // Adjust path if needed +import { data } from 'autoprefixer'; /** * Helper to format numeric fields for display. @@ -126,6 +127,8 @@ function ReviewPage({
Loan Deferral Until Graduation?: {formatYesNo(collegeData.loan_deferral_until_graduation)}
Annual Financial Aid: {formatNum(collegeData.annual_financial_aid)}
Existing College Debt: {formatNum(collegeData.existing_college_debt)}
+
Loan Interest Rate:{formatNum(data.interest_rate)}
+
Loan Term (yrs):{formatNum(data.loan_term)}
Extra Monthly Payment: {formatNum(collegeData.extra_payment)}
Expected Graduation: {collegeData.expected_graduation || 'N/A'}
Expected Salary: {formatNum(collegeData.expected_salary)}
diff --git a/src/utils/FinancialProjectionService.js b/src/utils/FinancialProjectionService.js index 998fcba..065bdd8 100644 --- a/src/utils/FinancialProjectionService.js +++ b/src/utils/FinancialProjectionService.js @@ -120,6 +120,7 @@ const { // Student-loan config ---------------------------------------- studentLoanAmount: _studentLoanAmount = 0, + existing_college_debt: _existingCollegeDebt = 0, interestRate: _interestRate = 5, loanTerm: _loanTerm = 10, loanDeferralUntilGraduation = false, @@ -172,6 +173,7 @@ const additionalIncome = num(_additionalIncome); const extraPayment = num(_extraPayment); const studentLoanAmount = num(_studentLoanAmount); +const existingCollegeDebt = num(_existingCollegeDebt); const interestRate = num(_interestRate); const loanTerm = num(_loanTerm); const isProgrammeActive = @@ -316,18 +318,11 @@ function simulateDrawdown(opts){ /*************************************************** * 5) LOAN PAYMENT (if not deferring) ***************************************************/ + const initialLoanPrincipal = studentLoanAmount + existingCollegeDebt; + let monthlyLoanPayment = loanDeferralUntilGraduation ? 0 - : calculateLoanPayment(studentLoanAmount, interestRate, loanTerm); - - // Log the initial loan info: - console.log("Initial loan payment setup:", { - studentLoanAmount, - interestRate, - loanTerm, - loanDeferralUntilGraduation, - monthlyLoanPayment - }); + : calculateLoanPayment(initialLoanPrincipal, interestRate, loanTerm); /*************************************************** * 6) SETUP FOR THE SIMULATION LOOP