From 18e8879858dcd52d701d86955bc9dafab7215df6 Mon Sep 17 00:00:00 2001 From: baarkerlounger Date: Thu, 19 May 2022 16:24:33 +0100 Subject: [PATCH] Memoize start year --- app/models/case_log.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/models/case_log.rb b/app/models/case_log.rb index a03f377fd..b4f1877ac 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -22,6 +22,7 @@ class CaseLog < ApplicationRecord has_paper_trail validates_with CaseLogValidator + before_validation :reset_start_year!, if: :startdate_changed? before_validation :process_postcode_changes!, if: :postcode_full_changed? before_validation :process_previous_postcode_changes!, if: :ppostcode_full_changed? before_validation :reset_invalidated_dependent_fields! @@ -66,10 +67,11 @@ class CaseLog < ApplicationRecord end def collection_start_year + return @start_year if @start_year return unless startdate window_end_date = Time.zone.local(startdate.year, 4, 1) - startdate < window_end_date ? startdate.year - 1 : startdate.year + @start_year = startdate < window_end_date ? startdate.year - 1 : startdate.year end def form_name