diff --git a/backend/app/domain/classes/plan.py b/backend/app/domain/classes/plan.py index 1efe87a5..e1215178 100644 --- a/backend/app/domain/classes/plan.py +++ b/backend/app/domain/classes/plan.py @@ -49,23 +49,24 @@ class Plan: @property def is_compliant(self) -> bool: goal: PortfolioGoal = self.scenario.record.goal - goal_value: str = self.scenario.record.goal_value match goal: case PortfolioGoal.INCREASING_EPC: - if self.record.post_epc_rating: - post_epc = self.record.post_epc_rating.value - elif self.record.post_sap_points: - post_epc = sap_to_epc(self.record.post_sap_points) - else: - return False - - if post_epc <= goal_value: - return True - - return False + return self._is_compliant_epc() case _: raise NotImplementedError def set_default(self, value: bool) -> None: self.record = replace(self.record, is_default=value) + + def _is_compliant_epc(self) -> bool: + goal_value: str = self.scenario.record.goal_value + + if self.record.post_epc_rating: + post_epc = self.record.post_epc_rating.value + elif self.record.post_sap_points: + post_epc = sap_to_epc(self.record.post_sap_points) + else: + return False + + return post_epc <= goal_value