mirror of
https://github.com/escalante29/WealthySmart.git
synced 2026-05-19 08:48:48 +02:00
Remove MPAT and MEMP fund references from pension module
All checks were successful
Deploy to VPS / deploy (push) Successful in 56s
All checks were successful
Deploy to VPS / deploy (push) Successful in 56s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -46,8 +46,6 @@ class Bank(str, enum.Enum):
|
|||||||
FCL = "FCL"
|
FCL = "FCL"
|
||||||
ROP = "ROP"
|
ROP = "ROP"
|
||||||
VOL = "VOL"
|
VOL = "VOL"
|
||||||
MEMP = "MEMP"
|
|
||||||
MPAT = "MPAT"
|
|
||||||
MORTGAGE = "MORTGAGE"
|
MORTGAGE = "MORTGAGE"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -44,9 +44,6 @@ DEFAULT_ACCOUNTS = [
|
|||||||
(Bank.FCL, Currency.CRC, "FCL", AccountType.PENSION),
|
(Bank.FCL, Currency.CRC, "FCL", AccountType.PENSION),
|
||||||
(Bank.ROP, Currency.CRC, "ROP", AccountType.PENSION),
|
(Bank.ROP, Currency.CRC, "ROP", AccountType.PENSION),
|
||||||
(Bank.VOL, Currency.CRC, "VOL", AccountType.PENSION),
|
(Bank.VOL, Currency.CRC, "VOL", AccountType.PENSION),
|
||||||
# Savings (CRC)
|
|
||||||
(Bank.MEMP, Currency.CRC, "MEMP", AccountType.SAVINGS),
|
|
||||||
(Bank.MPAT, Currency.CRC, "MPAT", AccountType.SAVINGS),
|
|
||||||
# Liabilities
|
# Liabilities
|
||||||
(Bank.MORTGAGE, Currency.USD, "Mortgage", AccountType.LIABILITY),
|
(Bank.MORTGAGE, Currency.USD, "Mortgage", AccountType.LIABILITY),
|
||||||
# Crypto
|
# Crypto
|
||||||
@@ -174,21 +171,6 @@ DEFAULT_RECURRING_ITEMS = [
|
|||||||
"month_of_year": 1,
|
"month_of_year": 1,
|
||||||
"notes": "Car insurance every 6 months (Jan, Jul)",
|
"notes": "Car insurance every 6 months (Jan, Jul)",
|
||||||
},
|
},
|
||||||
# Savings
|
|
||||||
{
|
|
||||||
"name": "Ahorro MEMP",
|
|
||||||
"amount": 200000,
|
|
||||||
"item_type": RecurringItemType.SAVINGS,
|
|
||||||
"frequency": RecurringFrequency.MONTHLY,
|
|
||||||
"notes": "Monthly savings to MEMP account",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Ahorro MPAT",
|
|
||||||
"amount": 200000,
|
|
||||||
"item_type": RecurringItemType.SAVINGS,
|
|
||||||
"frequency": RecurringFrequency.MONTHLY,
|
|
||||||
"notes": "Monthly savings to MPAT account",
|
|
||||||
},
|
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ import { ClipboardPaste } from 'lucide-react';
|
|||||||
|
|
||||||
// ─── Types ────────────────────────────────────────────────────────────────────
|
// ─── Types ────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
type FundKey = 'FCL' | 'ROP' | 'MPAT' | 'MEMP' | 'VOL';
|
type FundKey = 'FCL' | 'ROP' | 'VOL';
|
||||||
|
|
||||||
interface FundDef {
|
interface FundDef {
|
||||||
key: FundKey;
|
key: FundKey;
|
||||||
@@ -75,7 +75,7 @@ interface TooltipEntry {
|
|||||||
|
|
||||||
const CURRENT_AGE = 30;
|
const CURRENT_AGE = 30;
|
||||||
|
|
||||||
const FUND_KEYS: FundKey[] = ['FCL', 'ROP', 'MPAT', 'MEMP', 'VOL'];
|
const FUND_KEYS: FundKey[] = ['FCL', 'ROP', 'VOL'];
|
||||||
|
|
||||||
const FUNDS_DEFAULT: Record<FundKey, FundDef> = {
|
const FUNDS_DEFAULT: Record<FundKey, FundDef> = {
|
||||||
FCL: {
|
FCL: {
|
||||||
@@ -102,30 +102,6 @@ const FUNDS_DEFAULT: Record<FundKey, FundDef> = {
|
|||||||
withdrawalRule: 'Retirable a los 65 años',
|
withdrawalRule: 'Retirable a los 65 años',
|
||||||
defaultTargetAge: 65,
|
defaultTargetAge: 65,
|
||||||
},
|
},
|
||||||
MPAT: {
|
|
||||||
key: 'MPAT',
|
|
||||||
name: 'MPAT',
|
|
||||||
fullName: 'Ministerio Patronal',
|
|
||||||
color: '#f59e0b',
|
|
||||||
startBalance: 300_000,
|
|
||||||
monthlyContribution: 200_000,
|
|
||||||
annualRate: 3.0,
|
|
||||||
isDividend: true,
|
|
||||||
withdrawalRule: 'Dividendos anuales en marzo',
|
|
||||||
defaultTargetAge: 65,
|
|
||||||
},
|
|
||||||
MEMP: {
|
|
||||||
key: 'MEMP',
|
|
||||||
name: 'MEMP',
|
|
||||||
fullName: 'Fondo del Empleado',
|
|
||||||
color: '#8b5cf6',
|
|
||||||
startBalance: 300_000,
|
|
||||||
monthlyContribution: 200_000,
|
|
||||||
annualRate: 3.0,
|
|
||||||
isDividend: true,
|
|
||||||
withdrawalRule: '₡100K deducción dos veces al mes · Dividendos en marzo',
|
|
||||||
defaultTargetAge: 65,
|
|
||||||
},
|
|
||||||
VOL: {
|
VOL: {
|
||||||
key: 'VOL',
|
key: 'VOL',
|
||||||
name: 'VOL',
|
name: 'VOL',
|
||||||
@@ -182,8 +158,6 @@ function buildChartFromSnapshots(snapshots: PensionSnapshot[]): ChartDataPoint[]
|
|||||||
month: label,
|
month: label,
|
||||||
FCL: values.FCL ?? 0,
|
FCL: values.FCL ?? 0,
|
||||||
ROP: values.ROP ?? 0,
|
ROP: values.ROP ?? 0,
|
||||||
MPAT: values.MPAT ?? 0,
|
|
||||||
MEMP: values.MEMP ?? 0,
|
|
||||||
VOL: values.VOL ?? 0,
|
VOL: values.VOL ?? 0,
|
||||||
} as ChartDataPoint;
|
} as ChartDataPoint;
|
||||||
});
|
});
|
||||||
@@ -271,8 +245,6 @@ export default function Pensions() {
|
|||||||
const [projections, setProjections] = useState<Record<FundKey, ProjectionState>>({
|
const [projections, setProjections] = useState<Record<FundKey, ProjectionState>>({
|
||||||
FCL: { contribution: 150_000, rate: 7.5, targetAge: 35 },
|
FCL: { contribution: 150_000, rate: 7.5, targetAge: 35 },
|
||||||
ROP: { contribution: 120_000, rate: 6.0, targetAge: 65 },
|
ROP: { contribution: 120_000, rate: 6.0, targetAge: 65 },
|
||||||
MPAT: { contribution: 200_000, rate: 3.0, targetAge: 65 },
|
|
||||||
MEMP: { contribution: 200_000, rate: 3.0, targetAge: 65 },
|
|
||||||
VOL: { contribution: 400_000, rate: 8.0, targetAge: 57 },
|
VOL: { contribution: 400_000, rate: 8.0, targetAge: 57 },
|
||||||
});
|
});
|
||||||
const [uploadedFiles, setUploadedFiles] = useState<File[]>([]);
|
const [uploadedFiles, setUploadedFiles] = useState<File[]>([]);
|
||||||
|
|||||||
Reference in New Issue
Block a user