From b59adbd2cfe683088e519d238efd6dca042bbbf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Meny?= Date: Mon, 6 Jun 2022 12:47:55 +0100 Subject: [PATCH] Refactor to use case log methods --- app/models/case_log.rb | 16 ++++++++++++---- app/models/validations/household_validations.rb | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/app/models/case_log.rb b/app/models/case_log.rb index 576078eb8..94b80f2c3 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -433,6 +433,18 @@ class CaseLog < ApplicationRecord end end + def age_known?(person_num) + return false unless person_num.is_a?(Integer) + + !!public_send("age#{person_num}_known")&.zero? + end + + def age_unknown?(person_num) + return false unless person_num.is_a?(Integer) + + public_send("age#{person_num}_known") == 1 + end + private PIO = Postcodes::IO.new @@ -568,10 +580,6 @@ private public_send("age#{person_num}") && public_send("age#{person_num}") < 16 end - def age_known?(person_num) - !!public_send("age#{person_num}_known")&.zero? - end - def process_postcode_changes! self.postcode_full = upcase_and_remove_whitespace(postcode_full) process_postcode(postcode_full, "postcode_known", "is_la_inferred", "la") diff --git a/app/models/validations/household_validations.rb b/app/models/validations/household_validations.rb index 52d2e9f01..9c291d7e7 100644 --- a/app/models/validations/household_validations.rb +++ b/app/models/validations/household_validations.rb @@ -136,7 +136,7 @@ private (1..8).any? do |n| next if record["sex#{n}"].nil? - record["sex#{n}"] == "F" && (in_pregnancy_age_range?(record, n) || record["age#{n}_known"] == 1) + record["sex#{n}"] == "F" && (in_pregnancy_age_range?(record, n) || record.age_unknown?(n)) end end