|
24 | 24 |
|
25 | 25 | from wireup import service |
26 | 26 |
|
27 | | -from eligibility_signposting_api.model import eligibility, rules |
28 | | -from eligibility_signposting_api.model.eligibility import ( |
| 27 | +from eligibility_signposting_api.model import eligibility_status, rules |
| 28 | +from eligibility_signposting_api.model.eligibility_status import ( |
29 | 29 | ActionCode, |
30 | 30 | ActionDescription, |
31 | 31 | ActionType, |
@@ -58,15 +58,15 @@ class EligibilityCalculator: |
58 | 58 | person_data: Row |
59 | 59 | campaign_configs: Collection[rules.CampaignConfig] |
60 | 60 |
|
61 | | - results: list[eligibility.Condition] = field(default_factory=list) |
| 61 | + results: list[eligibility_status.Condition] = field(default_factory=list) |
62 | 62 |
|
63 | 63 | @property |
64 | 64 | def active_campaigns(self) -> list[rules.CampaignConfig]: |
65 | 65 | return [cc for cc in self.campaign_configs if cc.campaign_live] |
66 | 66 |
|
67 | 67 | def campaigns_grouped_by_condition_name( |
68 | 68 | self, conditions: list[str], category: str |
69 | | - ) -> Iterator[tuple[eligibility.ConditionName, list[rules.CampaignConfig]]]: |
| 69 | + ) -> Iterator[tuple[eligibility_status.ConditionName, list[rules.CampaignConfig]]]: |
70 | 70 | """Generator that yields campaign groups filtered by condition names and campaign category.""" |
71 | 71 |
|
72 | 72 | mapping = { |
@@ -100,9 +100,9 @@ def get_the_best_cohort_memberships( |
100 | 100 | cohort_results: dict[str, CohortGroupResult], |
101 | 101 | ) -> tuple[Status, list[CohortGroupResult]]: |
102 | 102 | if not cohort_results: |
103 | | - return eligibility.Status.not_eligible, [] |
| 103 | + return eligibility_status.Status.not_eligible, [] |
104 | 104 |
|
105 | | - best_status = eligibility.Status.best(*[result.status for result in cohort_results.values()]) |
| 105 | + best_status = eligibility_status.Status.best(*[result.status for result in cohort_results.values()]) |
106 | 106 | best_cohorts = [result for result in cohort_results.values() if result.status == best_status] |
107 | 107 |
|
108 | 108 | best_cohorts = [ |
@@ -158,7 +158,7 @@ def get_action_rules_components( |
158 | 158 |
|
159 | 159 | def evaluate_eligibility( |
160 | 160 | self, include_actions: str, conditions: list[str], category: str |
161 | | - ) -> eligibility.EligibilityStatus: |
| 161 | + ) -> eligibility_status.EligibilityStatus: |
162 | 162 | include_actions_flag = include_actions.upper() == "Y" |
163 | 163 | condition_results: dict[ConditionName, IterationResult] = {} |
164 | 164 | actions: list[SuggestedAction] | None = [] |
@@ -186,7 +186,7 @@ def evaluate_eligibility( |
186 | 186 | ), |
187 | 187 | ) = max(iteration_results.items(), key=lambda item: item[1][1].status.value) |
188 | 188 | else: |
189 | | - best_candidate = IterationResult(eligibility.Status.not_eligible, [], actions) |
| 189 | + best_candidate = IterationResult(eligibility_status.Status.not_eligible, [], actions) |
190 | 190 | best_campaign_id = None |
191 | 191 | best_campaign_version = None |
192 | 192 | best_active_iteration = None |
@@ -233,7 +233,7 @@ def evaluate_eligibility( |
233 | 233 |
|
234 | 234 | # Consolidate all the results and return |
235 | 235 | final_result = self.build_condition_results(condition_results) |
236 | | - return eligibility.EligibilityStatus(conditions=final_result) |
| 236 | + return eligibility_status.EligibilityStatus(conditions=final_result) |
237 | 237 |
|
238 | 238 | def get_iteration_results( |
239 | 239 | self, actions: list[SuggestedAction] | None, campaign_group: list[CampaignConfig] |
@@ -406,20 +406,20 @@ def evaluate_suppression_rules( |
406 | 406 |
|
407 | 407 | def evaluate_rules_priority_group( |
408 | 408 | self, rules_group: Iterator[rules.IterationRule] |
409 | | - ) -> tuple[eligibility.Status, list[eligibility.Reason], bool]: |
| 409 | + ) -> tuple[eligibility_status.Status, list[eligibility_status.Reason], bool]: |
410 | 410 | is_rule_stop = False |
411 | 411 | exclusion_reasons = [] |
412 | | - best_status = eligibility.Status.not_eligible |
| 412 | + best_status = eligibility_status.Status.not_eligible |
413 | 413 |
|
414 | 414 | for rule in rules_group: |
415 | 415 | is_rule_stop = rule.rule_stop or is_rule_stop |
416 | 416 | rule_calculator = RuleCalculator(person_data=self.person_data, rule=rule) |
417 | 417 | status, reason = rule_calculator.evaluate_exclusion() |
418 | 418 | if status.is_exclusion: |
419 | | - best_status = eligibility.Status.best(status, best_status) |
| 419 | + best_status = eligibility_status.Status.best(status, best_status) |
420 | 420 | exclusion_reasons.append(reason) |
421 | 421 | else: |
422 | | - best_status = eligibility.Status.actionable |
| 422 | + best_status = eligibility_status.Status.actionable |
423 | 423 |
|
424 | 424 | return best_status, exclusion_reasons, is_rule_stop |
425 | 425 |
|
|
0 commit comments