public virtual EligibilityRuleSet BuildRootRuleSet(RuleContainer customer, EligibilityTypeEnum eligibilityType) { if (customer == null) throw new ArgumentNullException(nameof(customer)); var ruleSet = _eligibilityRepository.GetRootEligibilityRuleSet(customer, eligibilityType); if (ruleSet == null) throw new NoNullAllowedException($"There is no root {eligibilityType} Eligibility RuleSet for this {nameof(customer)}"); var finalRuleSet = buildRuleSet(ruleSet); return finalRuleSet; }
public EligibilityPolicyOverride GetPolicyOverride(RuleContext ruleContext, EligibilityTypeEnum eligibilityType) { var eligibilityOverride = _eligibilityRepository.GetPolicyOverride(ruleContext.Id, eligibilityType); return Mapper.Map<Eligibility_Override, EligibilityPolicyOverride>(eligibilityOverride); }