/// <summary>
        /// gets the plan corresponding to the plan selected and returns it
        /// </summary>
        /// <param name="identifier"></param>
        /// <returns></returns>
        public List <Service> ShowPlanDetails(string identifier)
        {
            var planToShow = Mgr.GetPlanByType(identifier);

            if (planToShow == null)
            {
                throw new NullReferenceException();
            }

            return(planToShow.ServiceCosts);
        }
Esempio n. 2
0
 public InsurancePlan CurrentDetails()
 {
     if (!this.MultiplePlans)
     {
         return(Mgr.GetPlanByType(CurrentPlan.Type));
     }
     else
     {
         return(null);
     }
 }
        /// <summary>
        /// Pick a plan and attach it to an PrimaryEnrollee based on it's identifier
        /// </summary>
        /// <param name="type"></param>
        public int PickPlan(string type)
        {
            if (this.PrimaryEnrollee == null)
            {
                throw new ArgumentException("There is no enrollee");
            }
            var planPicked = Mgr.GetPlanByType(type);

            if (planPicked != null)
            {
                var enrolleePlan = new EnrolleePlan(this.PrimaryEnrollee, planPicked);
                enrolleePlan.Plan            = planPicked;
                enrolleePlan.PrimaryEnrollee = insertId;
                enrolleePlan.PlanNum         = (int)Mgr.SaveEnrolleePlan(enrolleePlan);
                return(enrolleePlan.PlanNum);
            }
            else
            {
                throw new IndexOutOfRangeException();
            }
        }
Esempio n. 4
0
        /// <summary>
        /// Gets the number percent, max pay, or copayment
        /// </summary>
        /// <param name="name"></param>
        /// <param name="type"></param>
        /// <param name="isPercent"></param>
        /// <param name="isMaxPay"></param>
        /// <returns></returns>
        public double GetNum(string name, string type, bool isPercent, bool isMaxPay)
        {
            var    plan   = Mgr.GetPlanByType(type);
            double retVal = 0;

            if (plan != null && !(isPercent && isMaxPay))
            {
                switch (name)
                {
                case "Plan Year Max Benefit":
                    retVal = plan.PYMB;
                    break;

                case "Out of Pocket Maximum Per Enrollee":
                    retVal = plan.OPMIndividual;
                    break;

                case "Out of Pocket Maximum Per Family":
                    retVal = plan.OPMFamily;
                    break;

                case "Annual Plan Deductible":
                    retVal = plan.APD;
                    break;

                case "Primary Enrollee Fee":
                    retVal = plan.PrimaryFee;
                    break;

                case "Primary Enrollee Change Fee":
                    retVal = plan.PrimaryChangeFee;
                    break;

                case "Dependent Enrollee Fee":
                    retVal = plan.DependentFee;
                    break;

                case "Dependent Enrollee Change Fee":
                    retVal = plan.DependentChangeFee;
                    break;

                default:
                    for (int i = 0; i < plan.ServiceCosts.Count(); i++)
                    {
                        if (plan.ServiceCosts[i].Name.Equals(name))
                        {
                            if (isPercent)
                            {
                                retVal = plan.ServiceCosts[i].PercentCoverage;
                            }
                            else if (isMaxPay)
                            {
                                retVal = plan.ServiceCosts[i].InNetMax.Item1;
                            }
                            else
                            {
                                retVal = plan.ServiceCosts[i].RequiredCopayment;
                            }
                        }
                    }
                    break;
                }
            }


            return(retVal);
        }
Esempio n. 5
0
 /// <summary>
 /// Get one plan from Mgr
 /// </summary>
 /// <param name="name"></param>
 /// <returns></returns>
 public InsurancePlan GetPlan(String name)
 {
     return(Mgr.GetPlanByType(name));
 }
Esempio n. 6
0
 /// <summary>
 /// Get the details of a plan that a user selected
 /// </summary>
 /// <param name="type">Selected plan</param>
 /// <returns></returns>
 public InsurancePlan PlanDetails(string type)
 {
     return(Mgr.GetPlanByType(type));
 }