private void CheckInsurance()                 //Responsible for validating insurance
        {
            InsurancePlan myIP = _ips.getMember(SSN); //Sends SSN to the insurer and assigns the insurance it returns to myIP

            Provider   = myIP.Provider;               //Updates the Provider field for the view layer
            ValidUntil = myIP.Validtil;               //Updates the ValidUntil field for the view layer
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Prints the values of all properties in the Insurance plan type
        /// </summary>
        /// <param name="plan"></param>
        /// <returns></returns>
        public string[] PrintPlanValues(InsurancePlan plan)
        {
            var planValues    = new List <string>();
            var insuranceType = typeof(InsurancePlan);

            foreach (Tuple <string, string> benefit in this.ComparedBenefits)
            {
                // use reflection to get the value of the property we are looking at
                string benefitValueStr;
                if (benefit.Item2 != "Type")
                {
                    var fieldValue = (double)insuranceType
                                     .GetProperty(benefit.Item2)
                                     .GetValue(plan);
                    benefitValueStr = fieldValue.ToString("C0");
                }
                else
                {
                    benefitValueStr = (string)insuranceType
                                      .GetProperty(benefit.Item2)
                                      .GetValue(plan);
                }
                planValues.Add(benefitValueStr);
            }
            return(planValues.ToArray());
        }
        public ActionResult GetById(int id)
        {
            int          code     = 200;
            BaseResponse response = null;

            try
            {
                InsurancePlan plan = _service.GetById(id);
                if (plan == null)
                {
                    code     = 404;
                    response = new ErrorResponse("Application Resource not found");
                }
                else
                {
                    response = new ItemResponse <InsurancePlan> {
                        Item = plan
                    };
                }
            }
            catch (Exception ex)
            {
                code     = 500;
                response = new ErrorResponse(ex.Message);
                base.Logger.LogError(ex.ToString());
            }
            return(StatusCode(code, response));
        }
Ejemplo n.º 4
0
        public void AddBenefitTest_Category()
        {
            Plan = mgr.GetPlanByType("Basic");
            var ChangeCtrl     = new ChangeBenefitsController();
            int prevCountRight = Plan.ServiceCosts.Count();

            //Correctly formatted category
            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 15, 150, 1500);
            var TestResult_right = Plan.ServiceCosts.Count();

            var prevCountEmpty = Plan.ServiceCosts.Count();

            // Empty category
            ChangeCtrl.AddBenefit(Plan, "New Item", "", 15, 150, 1500);
            var TestResult_empty = Plan.ServiceCosts.Count();

            var prevCountNull = Plan.ServiceCosts.Count();

            // Null category
            ChangeCtrl.AddBenefit(Plan, "New Item", null, 15, 150, 1500);
            var TestResult_null = Plan.ServiceCosts.Count();


            Assert.AreEqual(prevCountRight + 1, TestResult_right);
            Assert.AreEqual(prevCountEmpty + 1, TestResult_empty);
            Assert.AreEqual(prevCountNull, TestResult_null);
        }
        private static InsurancePlan PlanMapper(IDataReader reader, ref int index)
        {
            InsurancePlan plan = new InsurancePlan();

            plan.Id           = reader.GetSafeInt32(index++);
            plan.Name         = reader.GetSafeString(index++);
            plan.Code         = reader.GetSafeString(index++);
            plan.MinAge       = reader.GetSafeInt32(index++);
            plan.MaxAge       = reader.GetSafeInt32(index++);
            plan.CreatedBy    = reader.GetSafeInt32(index++);
            plan.ModifiedBy   = reader.GetSafeInt32(index++);
            plan.DateCreated  = reader.GetSafeDateTime(index++);
            plan.DateModified = reader.GetSafeDateTime(index++);

            plan.InsuranceProvider         = new InsuranceProviderBase();
            plan.InsuranceProvider.Id      = reader.GetSafeInt32(index++);
            plan.InsuranceProvider.Name    = reader.GetSafeString(index++);
            plan.InsuranceProvider.SiteUrl = reader.GetSafeString(index++);

            plan.PlanLevel      = new PlanLevel();
            plan.PlanLevel.Id   = reader.GetSafeInt32(index++);
            plan.PlanLevel.Name = reader.GetSafeString(index++);

            plan.PlanType      = new PlanType();
            plan.PlanType.Id   = reader.GetSafeInt32(index++);
            plan.PlanType.Name = reader.GetSafeString(index++);
            plan.PlanType.Code = reader.GetSafeString(index++);

            plan.PlanStatus      = new PlanStatus();
            plan.PlanStatus.Id   = reader.GetSafeInt32(index++);
            plan.PlanStatus.Name = reader.GetSafeString(index++);
            return(plan);
        }
Ejemplo n.º 6
0
        //Create-InsPrem---Finish Html page for Admin. Employee will only view Ins Cost and Vision and Dental pdf
        public JsonResult GrpHealthInsPremiumNew(int Employee_id, int InsurancePlan_id, int InsurancePremium_id, string EmployeeOnly, string EmployeeAndSpouse,
                                                 string EmployeeAndDependent, string EmployeeAndFamily, decimal YearlyPremiumCost, string InsMECPlan, string InsStndPlan, string InsBuyUpPlan)
        {
            InsurancePremium insPremium = new InsurancePremium();

            insPremium.EmployeeOnly         = EmployeeOnly;
            insPremium.EmployeeAndSpouse    = EmployeeAndSpouse;
            insPremium.EmployeeAndDependent = EmployeeAndDependent;
            insPremium.EmployeeAndFamily    = EmployeeAndFamily;
            insPremium.YearlyPremiumCost    = YearlyPremiumCost;

            ViewBag.insPremium = insPremium;

            Employee e = db.Employees
                         .Where(i => i.Employee_id == Employee_id)
                         .Single();

            db.InsurancePremiums.Add(insPremium);

            db.SaveChanges();

            InsurancePlan insPlan = new InsurancePlan();

            //insPlan.InsurancePlan_id = InsurancePlan_id;
            insPlan.MECPlan      = InsMECPlan;
            insPlan.StandardPlan = InsStndPlan;
            insPlan.BuyUpPlan    = InsBuyUpPlan;

            ViewBag.insPlan = insPlan;

            int result = e.Employee_id;

            return(Json(new { data = result }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Delete the third column in the view, if it exists, and add a third
        /// column for the values of the insurance plan that the Enrollee chose
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void PlanType_SelectedIndexChanged(object sender, EventArgs e)
        {
            int newColIdx = 2;

            // an insurance plan is already being compared delete it
            if (this.Src.Columns.Count > newColIdx)
            {
                this.Src.Columns.RemoveAt(newColIdx);
            }
            // grab selected plan
            var selectedPlan = (string)this.PlanType.Items[this.PlanType.SelectedIndex];

            this.Src.Columns.Add(
                new DataColumn(selectedPlan, typeof(string))
                );

            // grab the benefit values of insurance plan and present to user
            this.ComparedPlan = this.Ctrl.PlanDetails(selectedPlan);
            string[] comparedValues = this.Ctrl.PrintPlanValues(
                this.ComparedPlan
                );

            // update the rows already in the table
            for (int i = 0; i < comparedValues.Length; i++)
            {
                DataRow dr = this.Src.Rows[i];
                dr[newColIdx] = comparedValues[i];
            }
            this.PickPlan.Visible      = true;
            this.OtherServices.Visible = true;
        }
Ejemplo n.º 8
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);
     }
 }
Ejemplo n.º 9
0
        private void CheckInsurance()
        {
            InsurancePlan myIp = _ips.GetMember(SSN);

            Provider   = myIp.Provider;
            Plan       = myIp.Plan;
            ValidUntil = myIp.Validtil;
        }
Ejemplo n.º 10
0
        public void ChangeToDupTest()
        {
            EnrolleePlan  plan        = Mgr.GetPolicyByID(1);
            InsurancePlan newPlan     = Mgr.GetPlanByType("Extended");
            InsurancePlan changeAgain = Mgr.GetPlanByType("Basic");

            plan.ChangeTo(newPlan);
            plan.ChangeTo(changeAgain);
        }
        public void CreateInsurancePlansMapping()
        {
            try
            {
                var dataSet = TableAgent.DataSet.Tables[FbTableName].Rows;
                RecordCount = TableAgent.RowCount;

                foreach (DataRow row in dataSet)
                {
                    // get userid from old aspnetdb matching on patientid #####.#####
                    var patId  = (String)row["PATIENTID"].ToString();
                    var userId = MemoryMappings.GetUserIdFromPatientInfo(MigrationVariables.CurrentSiteId, patId);

                    if (userId != Guid.Empty)
                    {
                        var insp = new InsurancePlan
                        {
                            UserId            = userId,
                            PlanName          = String.Empty,
                            PlanType          = (row["INSTYPEID"] is DBNull) ? String.Empty : map.GetInsurancePlanType(row["INSTYPEID"].ToString()),
                            PlanIdentifier    = (row["PLANIDENTIFIER"] is DBNull) ? String.Empty : row["PLANIDENTIFIER"].ToString(),
                            PolicyNumber      = (row["POLICYNUMBER"] is DBNull) ? String.Empty : row["POLICYNUMBER"].ToString(),
                            GroupName         = (row["GROUPNAME"] is DBNull) ? String.Empty : row["GROUPNAME"].ToString(),
                            GroupIdentifier   = (row["GROUPNUMBER"] is DBNull) ? String.Empty : row["GROUPNUMBER"].ToString(),
                            CoPay             = (row["COPAY"] is DBNull) ? 0 : map.ParseMoney(row["COPAY"].ToString()),
                            Purchaser         = (row["PURCHASER"] is DBNull) ? String.Empty : row["PURCHASER"].ToString(),
                            IsActive          = (row["ISACTIVE"] is DBNull) ? false : map.ParseFirebirdBoolean(row["ISACTIVE"].ToString()),
                            InActiveDate      = (row["INACTIVEDATE"] is DBNull) ? new DateTime(1800, 1, 1) : map.ParseFirebirdDateTime(row["INACTIVEDATE"].ToString()),
                            EffectiveDate     = (row["EFFECTIVEDATE"] is DBNull) ? new DateTime(1800, 1, 1) : map.ParseFirebirdDateTime(row["EFFECTIVEDATE"].ToString()),
                            LastUpdatedByUser = userId
                        };

                        if (CanAddToContext(insp.UserId, insp.PlanType, insp.PolicyNumber))
                        {
                            tempCompanyId.Add(new Tuple <string, InsurancePlan>(row["INSCOID"].ToString(), insp));
                            CompletedMappings.Add(insp);
                        }
                        else
                        {
                            MappingStatistics.LogFailedMapping("INSURANCEPLANS2", row["KEYID"].ToString(), "InsurancePlans", typeof(InsurancePlan), JsonConvert.SerializeObject(insp), "Insurance Plan already exist in database.");
                            FailedCount++;
                        }
                    }
                }

                MappingStatistics.LogMappingStat("INSURANCEPLANS2", RecordCount, "InsurancePlans", CompletedMappings.Count, FailedCount);
            }
            catch (Exception e)
            {
                throw new Exception("Error creating InsurancePlan mapping.", e);
            }
        }
Ejemplo n.º 12
0
        public void AddPlanTest()
        {
            InsurancePlan plan = mgr.GetPlanByType("Basic");

            plan.Type = "NewType";

            mgr.AddPlan(plan);

            plan = mgr.GetPlanByType("NewType");

            Assert.IsNotNull(plan);
            Assert.AreEqual("NewType", plan.Type);
        }
Ejemplo n.º 13
0
        public void ChangeToTest()
        {
            EnrolleePlan  plan     = Mgr.GetPolicyByID(1);
            InsurancePlan nullPlan = null;
            InsurancePlan newPlan  = Mgr.GetPlanByType("Extended");

            plan.ChangeTo(newPlan);
            Mgr.SaveEnrolleePlan(plan);
            EnrolleePlan bringBack = Mgr.GetPolicyByID(1);

            // make sure the plan type has changed
            Assert.AreEqual(plan.Type, "Extended");
            // make sure the saved plan is the same as the plan we just worked with
            Assert.AreSame(plan, bringBack);
        }
        public void GetPlanTest()
        {
            var CostCtrl = new CougarCostsController();

            Plan = mgr.GetPlanByType("Basic");
            InsurancePlan TestPlan_right = CostCtrl.GetPlan("Basic");
            InsurancePlan TestPlan_wrong = CostCtrl.GetPlan("WRONG");
            InsurancePlan TestPlan_empty = CostCtrl.GetPlan("");
            InsurancePlan TestPlan_null  = CostCtrl.GetPlan(null);

            Assert.AreEqual(Plan, TestPlan_right);
            Assert.IsNull(TestPlan_wrong);
            Assert.IsNull(TestPlan_empty);
            Assert.IsNull(TestPlan_null);
        }
        public InsurancePlan GetById(int id)
        {
            InsurancePlan plan = null;

            _data.ExecuteCmd("dbo.InsurancePlans_Select_ById_V2",
                             delegate(SqlParameterCollection col)
            {
                col.AddWithValue("@Id", id);
            }, delegate(IDataReader reader, short set)
            {
                int index = 0;

                plan = PlanMapper(reader, ref index);
            });
            return(plan);
        }
Ejemplo n.º 16
0
        // Not sure if this is needed
        public void getPlan()
        {
            List <EnrolleePlan> ePlan = (List <EnrolleePlan>)Mgr.GetPlanByPrimary(enrollee.Id);

            List <Service> services;

            foreach (var item in ePlan)
            {
                services = (List <Service>)Mgr.GetServicesByPlan(item.Plan.Type);
                Service service = services.ElementAt(0);
                plan = Mgr.GetPlanByType(item.Type);
                if (service.insurancePlanId == item.Plan.Id)
                {
                    break;
                }
            }
        }
Ejemplo n.º 17
0
        public void AddBenefitTest_Percent()
        {
            Plan = mgr.GetPlanByType("Basic");
            var ChangeCtrl        = new ChangeBenefitsController();
            int prevCountLessZero = Plan.ServiceCosts.Count();

            //BVA and Equivalance Partitioning

            // Less than 0: -1, 0, 1
            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", -1, 150, 1500);
            var TestResult_LessZero = Plan.ServiceCosts.Count();

            var prevCountZero = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 0, 150, 1500);
            var TestResult_Zero = Plan.ServiceCosts.Count();

            var prevCountGreaterZero = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 1, 150, 1500);
            var TestResult_GreaterZero = Plan.ServiceCosts.Count();

            var prevCountLessHundred = Plan.ServiceCosts.Count();

            // greater than 100: 99, 100, 101
            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 99, 150, 1500);
            var TestResult_LessHundred = Plan.ServiceCosts.Count();

            var prevCountHundred = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 100, 150, 1500);
            var TestResult_Hundred = Plan.ServiceCosts.Count();

            var prevCountGreaterHundred = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 101, 150, 1500);
            var TestResult_GreaterHundred = Plan.ServiceCosts.Count();


            Assert.AreEqual(prevCountLessZero, TestResult_LessZero);
            Assert.AreEqual(prevCountZero + 1, TestResult_Zero);
            Assert.AreEqual(prevCountGreaterZero + 1, TestResult_GreaterZero);
            Assert.AreEqual(prevCountLessHundred + 1, TestResult_LessHundred);
            Assert.AreEqual(prevCountHundred + 1, TestResult_Hundred);
            Assert.AreEqual(prevCountGreaterHundred, TestResult_GreaterHundred);
        }
Ejemplo n.º 18
0
        public void RemoveBenefitTest_Plan()
        {
            Plan = mgr.GetPlanByType("Basic");
            var ChangeCtrl     = new ChangeBenefitsController();
            int prevCountRight = Plan.ServiceCosts.Count();

            ChangeCtrl.RemoveBenefit(Plan, "Inpatient");
            var TestResult_right = Plan.ServiceCosts.Count();

            var prevCountWrong = Plan.ServiceCosts.Count();

            ChangeCtrl.RemoveBenefit(null, "Inpatient");
            var TestResult_wrong = Plan.ServiceCosts.Count();

            Assert.AreEqual(prevCountRight - 1, TestResult_right);
            Assert.AreEqual(prevCountWrong, TestResult_wrong);
        }
Ejemplo n.º 19
0
        public void AddBenefitTest_Plan()
        {
            Plan = mgr.GetPlanByType("Basic");
            var ChangeCtrl     = new ChangeBenefitsController();
            int prevCountRight = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 15, 150, 1500);
            var TestResult_right = Plan.ServiceCosts.Count();

            var prevCountWrong = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(null, "New Item", "Hospital", 15, 150, 1500);
            var TestResult_wrong = Plan.ServiceCosts.Count();

            Assert.AreEqual(prevCountRight + 1, TestResult_right);
            Assert.AreEqual(prevCountWrong, TestResult_wrong);
        }
Ejemplo n.º 20
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);
        }
Ejemplo n.º 21
0
 /// <summary>
 /// Removes a benefit from the selected plan
 /// </summary>
 /// <param name="plan"></param>
 /// <param name="name"></param>
 public bool RemoveBenefit(InsurancePlan plan, String name)
 {
     if (plan != null)
     {
         for (int i = 0; i < plan.ServiceCosts.Count(); i++)
         {
             if (plan.ServiceCosts[i].Name.Equals(name))
             {
                 Mgr.RemoveService(plan.ServiceCosts[i]);
             }
         }
         return(true);
     }
     else
     {
         return(false);
     }
 }
        /// <summary>
        /// Creates a plan and then sends to DbMgr to be saved
        /// </summary>
        /// <param name="name"></param>
        /// <param name="PYMB"></param>
        /// <param name="APD"></param>
        /// <param name="OPMI"></param>
        /// <param name="OPMF"></param>
        /// <param name="priamryFee"></param>
        /// <param name="dependentFee"></param>
        /// <param name="primaryChange"></param>
        /// <param name="dependentChange"></param>
        /// <param name="optional"></param>
        /// <returns></returns>
        public bool CreatePlan(String name, double PYMB, double APD, double OPMI,
                               double OPMF, double primaryFee, double dependentFee,
                               double primaryChange, double dependentChange, bool optional,
                               List <Service> serviceList)
        {
            List <InsurancePlan> plans = (List <InsurancePlan>)Mgr.GetPlans();

            //error checking here
            if (name != null && name != "" && PYMB >= 0 && APD >= 0 && OPMI >= 0 && OPMF >= 0 &&
                primaryChange >= 0 && dependentChange >= 0)
            {
                foreach (var item in plans)
                {
                    if (name.Equals(item.Type))
                    {
                        return(false);
                    }
                }
                // create a new insurance plan
                InsurancePlan plan = new InsurancePlan
                {
                    Type               = name,
                    PYMB               = PYMB,
                    APD                = APD,
                    OPMIndividual      = OPMI,
                    OPMFamily          = OPMF,
                    PrimaryFee         = primaryFee,
                    DependentFee       = dependentFee,
                    PrimaryChangeFee   = primaryChange,
                    DependentChangeFee = dependentChange,
                    Optional           = optional,
                    ServiceCosts       = serviceList
                };

                Mgr.AddPlan(plan);

                return(true);
            }

            else
            {
                return(false);
            }
        }
        public void GetPlanTest()
        {
            //Arrange
            var    ctrl      = new SearchController();
            string nullName  = null;
            string emptyName = "";
            string isName    = "Basic";
            string random    = "aaaaaaa";

            //Act
            InsurancePlan nullPlan   = ctrl.GetPlan(nullName);
            InsurancePlan emptyPlan  = ctrl.GetPlan(emptyName);
            InsurancePlan truePlan   = ctrl.GetPlan(isName);
            InsurancePlan randomPlan = ctrl.GetPlan(random);

            //Assert
            Assert.IsNull(nullPlan);
            Assert.IsNull(emptyPlan);
            Assert.IsNotNull(truePlan);
            Assert.AreEqual("Basic", truePlan.Type);
            Assert.IsNull(randomPlan);
        }
        public Paged <InsurancePlan> GetByProvider(int pageIndex, int pageSize, int providerId)
        {
            Paged <InsurancePlan> pagedResults = null;
            List <InsurancePlan>  result       = null;
            InsurancePlan         plan         = null;

            int totalCount = 0;

            _data.ExecuteCmd(
                "dbo.InsurancePlans_Select_ByProviderId_V2",
                delegate(SqlParameterCollection col)
            {
                col.AddWithValue("@PageIndex", pageIndex);
                col.AddWithValue("@PageSize", pageSize);
                col.AddWithValue("@ProviderId", providerId);
            },
                delegate(IDataReader reader, short set)
            {
                int index = 0;

                plan = PlanMapper(reader, ref index);

                if (totalCount == 0)
                {
                    totalCount = reader.GetSafeInt32(index++);
                }
                if (result == null)
                {
                    result = new List <InsurancePlan>();
                }
                result.Add(plan);
            });
            if (result != null)
            {
                pagedResults = new Paged <InsurancePlan>(result, pageIndex, pageSize, totalCount);
            }
            return(pagedResults);
        }
        public Paged <InsurancePlan> GetSearchPagination(int pageIndex, int pageSize, string query)
        {
            Paged <InsurancePlan> pagedResults = null;
            List <InsurancePlan>  list         = null;
            InsurancePlan         plan         = null;

            int totalCount = 0;

            _data.ExecuteCmd(
                "dbo.InsurancePlans_Search",
                delegate(SqlParameterCollection col)
            {
                col.AddWithValue("@PageIndex", pageIndex);
                col.AddWithValue("@PageSize", pageSize);
                col.AddWithValue("@Query", query);
            },
                delegate(IDataReader reader, short set)
            {
                int index = 0;

                plan = PlanMapper(reader, ref index);

                if (totalCount == 0)
                {
                    totalCount = reader.GetSafeInt32(index++);
                }
                if (list == null)
                {
                    list = new List <InsurancePlan>();
                }
                list.Add(plan);
            });
            if (list != null)
            {
                pagedResults = new Paged <InsurancePlan>(list, pageIndex, pageSize, totalCount);
            }
            return(pagedResults);
        }
Ejemplo n.º 26
0
        public void RemoveBenefitTest()
        {
            Plan = mgr.GetPlanByType("Basic");
            var ChangeCtrl     = new ChangeBenefitsController();
            int prevCountRight = Plan.ServiceCosts.Count();

            ChangeCtrl.RemoveBenefit(Plan, "Inpatient");
            var TestResult_right = Plan.ServiceCosts.Count();

            var prevCountEmpty = Plan.ServiceCosts.Count();

            ChangeCtrl.RemoveBenefit(Plan, "");
            var TestResult_empty = Plan.ServiceCosts.Count();

            var prevCountNull = Plan.ServiceCosts.Count();

            ChangeCtrl.RemoveBenefit(Plan, null);
            var TestResult_null = Plan.ServiceCosts.Count();

            Assert.AreEqual(prevCountRight - 1, TestResult_right);
            Assert.AreEqual(prevCountEmpty, TestResult_empty);
            Assert.AreEqual(prevCountNull, TestResult_null);
        }
Ejemplo n.º 27
0
        /// <summary>
        /// Adds a benefit to the selected plan
        /// </summary>
        /// <param name="plan"></param>
        /// <param name="name"></param>
        /// <param name="cat"></param>
        /// <param name="percent"></param>
        /// <param name="copay"></param>
        /// <param name="maxPay"></param>
        public bool AddBenefit(InsurancePlan plan, String name, String cat, double percent, double copay, double maxPay)
        {
            //check that information is valid
            if (plan == null || name == "" || name == null || cat == null || percent < 0 || percent > 100 || maxPay < 0 || copay < 0)
            {
                return(false);
            }
            else
            {
                // add benefit to services
                Mgr.AddService(new Service
                {
                    Category          = cat,
                    Name              = name,
                    PercentCoverage   = (percent / 100),
                    RequiredCopayment = copay,
                    insurancePlanId   = plan.Id,
                    InNetMax          = new Tuple <double, Service.MaxPayRate>(maxPay, Service.MaxPayRate.PCY)
                });

                return(true);
            }
        }
Ejemplo n.º 28
0
        public void AddBenefitTest_MaxPay()
        {
            Plan = mgr.GetPlanByType("Basic");
            var ChangeCtrl        = new ChangeBenefitsController();
            int prevCountLessZero = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 15, 150, -1);
            var TestResult_LessZero = Plan.ServiceCosts.Count();

            var prevCountZero = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 15, 150, 00);
            var TestResult_Zero = Plan.ServiceCosts.Count();

            var prevCountGreaterZero = Plan.ServiceCosts.Count();

            ChangeCtrl.AddBenefit(Plan, "New Item", "Hospital", 15, 150, 1);
            var TestResult_GreaterZero = Plan.ServiceCosts.Count();

            Assert.AreEqual(prevCountLessZero, TestResult_LessZero);
            Assert.AreEqual(prevCountZero + 1, TestResult_Zero);
            Assert.AreEqual(prevCountGreaterZero + 1, TestResult_GreaterZero);
        }
Ejemplo n.º 29
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]);
        }
Ejemplo n.º 30
0
 public ViewServices(InsurancePlan plan)
 {
     this.Services = plan.ServiceCosts;
     InitializeComponent();
 }