using Budget.Core.Models; namespace Budget.Core.Services; public static class FrequencyCalculator { public static decimal ToMonthly(decimal amount, Frequency frequency) => frequency switch { Frequency.Biennial => amount / 24m, Frequency.Annually => amount / 12m, Frequency.Biannually => amount * 2m / 12m, Frequency.Quarterly => amount * 4m / 12m, Frequency.EveryTwoMonths => amount * 6m / 12m, Frequency.Monthly => amount, Frequency.SemiMonthly => amount * 2m, Frequency.Biweekly => amount * 26m / 12m, Frequency.Weekly => amount * 52m / 12m, _ => 0m, }; public static decimal ToAnnually(decimal amount, Frequency frequency) => ToMonthly(amount, frequency) * 12m; }