diff --git a/CHANGELOG.md b/CHANGELOG.md index a0810f4..12fa7ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,11 @@ # Next Release -# v.10.7 +# v0.10.8 + +* Added yearly recurring payments + +# v0.10.7 * Added `cron_daily` script for holding all daily cronjobs * **Admin Fix** Parse currency without a currency symbol on import diff --git a/lib/Pear/LocalLoop/Command/recur_transactions.pm b/lib/Pear/LocalLoop/Command/recur_transactions.pm index 56902d4..e5bdeb3 100644 --- a/lib/Pear/LocalLoop/Command/recur_transactions.pm +++ b/lib/Pear/LocalLoop/Command/recur_transactions.pm @@ -47,6 +47,7 @@ sub run { my $match_date_fortnight = $app->format_iso_date($datetime->clone->subtract( weeks => 2 )); my $match_date_month = $app->format_iso_date($datetime->clone->subtract( months => 1 )); my $match_date_quarter = $app->format_iso_date($datetime->clone->subtract( months => 3)); + my $match_date_year = $app->format_iso_date($datetime->clone->subtract( years => 1 )); my $schema = $app->schema; my $dtf = $schema->storage->datetime_parser; @@ -78,6 +79,9 @@ sub run { } elsif ( $recurring_period eq 'quarterly' ) { next unless $start_time eq $match_date_quarter; say "matched recurring transaction ID " . $recur_result->id . " to quarterly"; + } elsif ( $recurring_period eq 'yearly' ) { + next unless $start_time eq $match_date_year; + say "matched recurring transaction ID " . $recur_result->id . " to yearly"; } else { say "Invalid recurring time period given"; return;