Esempio n. 1
0
 /// <summary>
 /// Change the enrollee's plan to the new Plan that they selected.
 /// </summary>
 /// <param name="change"></param>
 public void ChangeCurrent(InsurancePlan change)
 {
     if (!MultiplePlans)
     {
         this.CurrentPlan.ChangeTo(change);
         Mgr.SaveEnrolleePlan(this.CurrentPlan);
     }
 }
Esempio n. 2
0
        public void CheckPolicyTest()
        {
            DbMgr Mgr;

            Mgr = DbMgr.Instance;
            InsurancePlan   p  = new InsurancePlan();
            PrimaryEnrollee e  = new PrimaryEnrollee("0");
            EnrolleePlan    eP = new EnrolleePlan(e, p);

            Mgr.SaveEnrolleePlan(eP);

            var  bill    = new BillController();
            bool notTrue = bill.CheckPolicy(2);
            bool soTrue  = bill.CheckPolicy(1);

            Assert.IsFalse(notTrue);
            Assert.IsTrue(soTrue);
        }
        /// <summary>
        /// Creates a new dependent object and attaches it to the the enrollee
        /// of the primary enrollee pointed to by primaryId
        /// </summary>
        /// <param name="primaryId"></param>
        /// <param name="firstName"></param>
        /// <param name="lastName"></param>
        /// <param name="ssn"></param>
        /// <param name="relationship"></param>
        /// <param name="pin"></param>
        /// <param name="contact"></param>
        /// <returns></returns>
        public int CreateDependent(
            int planNum,
            int primaryId,
            string firstName,
            string lastName,
            string ssn,
            string relationship,
            string pin,
            Contact contact
            )
        {
            var enrolleePlan = Mgr.GetPlanByPrimary(primaryId)
                               .Where(e => e.PlanNum == planNum)
                               .SingleOrDefault();
            var dep = new DependentEnrollee(pin)
            {
                Email        = contact.email,
                FirstName    = firstName,
                HomePhone    = contact.homePhone,
                LastName     = lastName,
                MobilePhone  = contact.mobilePhone,
                Relationship = relationship,
                SSN          = ssn
            };

            enrolleePlan.AddDependent(dep);
            //try
            //{
            int insertId = (int)Mgr.SaveEnrollee(dep);

            enrolleePlan.Dependents.Add(insertId);
            Mgr.SaveEnrolleePlan(enrolleePlan);
            //}

            /*catch (SqlException)
             * {
             *  throw new DataException("Enrollee already exists on plan");
             * }*/


            return(enrolleePlan.PlanNum);
        }
        /// <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. 5
0
        public void HSPCalculateTest()
        {
            DbMgr Mgr;

            Mgr = DbMgr.Instance;
            InsurancePlan p = new InsurancePlan();

            p.Type = "Basic";
            PrimaryEnrollee e  = new PrimaryEnrollee("0");
            EnrolleePlan    eP = new EnrolleePlan(e, p);

            Mgr.SaveEnrolleePlan(eP);


            var           bill = new BillController();
            List <String> s    = new List <String>();

            s.Add("Inpatient");
            s.Add("Inpatient");
            List <int> c = new List <int>();

            c.Add(2500);
            c.Add(1500);
            bill.CheckEnrollee("A B");
            bill.CheckPolicy(1);

            String[,] returnArr = new String[2, 4];
            returnArr           = bill.HSPCalculate(s, c, DateTime.Now);

            Assert.AreEqual("2000", returnArr[0, 1]);
            Assert.AreEqual("560", returnArr[0, 2]);
            Assert.AreEqual("1440", returnArr[0, 3]);

            Assert.AreEqual("1500", returnArr[1, 1]);
            Assert.AreEqual("510", returnArr[1, 2]);
            Assert.AreEqual("990", returnArr[1, 3]);
        }