public List<UserAlternateID> GetAlternateID(List<CoveredUser> coveredUsers, DateTime effectiveDate, int planID, int planTypeID, int parentUserID, AlternateIDTypes alternateIDType) { var plan = m_planRepository.SelectClientBenefitPlan(planID); var ruleID = GetRuleID(plan, alternateIDType); var benefitElectionAlternateIDs = m_benefitElectionAlternateIDSelector.SelectBenefitElectionAlternateID(planTypeID, parentUserID, alternateIDType); if (ruleID == 1) { return m_rule1Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } if (ruleID == 2) { return m_rule2Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } if (ruleID == 3) { return m_rule3Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } if (ruleID == 4) { return m_rule4Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } if (ruleID == 5) { return m_rule5Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } if (ruleID == 6) { return m_rule6Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } if (ruleID == 7) { return m_rule7Calculator.GetAlternateID(benefitElectionAlternateIDs, coveredUsers, effectiveDate); } return GetAlternateIDForNoRule(coveredUsers); }
public List<BenefitElectionAlternateID> SelectBenefitElectionAlternateID(int planTypeID, int parentUserID, AlternateIDTypes alternateID) { var planTypes = new List<int>(); planTypes.Add(planTypeID); var benefitElections = m_benefitElectionRepository.SelectBenefitElections(parentUserID, planTypes); if (alternateID == AlternateIDTypes.Type1) { return GetAlternateID1(benefitElections); }else { return GetAlternateID2(benefitElections); } }
public int GetRuleID(ClientBenefitPlan plan, AlternateIDTypes alternateIDType) { if (alternateIDType == AlternateIDTypes.Type1) { return plan.AlternateIDRuleID; } else { return plan.AlternateIDRuleID2; } }