Esempio n. 1
0
		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);
		}