/// <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); } }
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(); } }
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]); }