private Step(DateTime now, int niContributingYearsSoFar, int existingSavings, int existingPrivatePension, EmergencyFundSpec emergencyFundSpec, decimal personMonthlySpending) { StepDate = now; NiContributingYears = niContributingYearsSoFar; var requiredCashSavings = emergencyFundSpec.RequiredEmergencyFund(personMonthlySpending); Pots = new MoneyPots(requiredCashSavings); Pots.AssignIncome(existingSavings); PrivatePensionAmount = existingPrivatePension; Spending = personMonthlySpending; }
public Step(Step previousStep, DateTime stepStepDate, Person person, bool calcdMinimum, IAssumptions assumptions, DateTime privatePensionDate, decimal spending, ITaxSystem taxSystem, DateTime?givenRetirementDate = null, MoneyPots pots = null) { StepDate = stepStepDate; PrivatePensionAmount = previousStep.PrivatePensionAmount; Spending = spending; NiContributingYears = previousStep.NiContributingYears; _previousStep = previousStep; _person = person; _calcdMinimum = calcdMinimum; _assumptions = assumptions; _privatePensionDate = privatePensionDate; _givenRetirementDate = givenRetirementDate; _taxSystem = taxSystem; Pots = pots ?? MoneyPots.From(previousStep.Pots, _person.EmergencyFundSpec.RequiredEmergencyFund(Spending)); }