Esempio n. 1
0
        public void MappingAddOrEditInsureeToNewInsureeIsValid()
        {
            var addOrEditInsuree = CreateAddOrEditInsuree();
            var insuree = new Insuree();

            Mapper.Map(addOrEditInsuree, insuree);

            insuree.Id.ShouldBeEquivalentTo(addOrEditInsuree.Id);
            insuree.FirstName.ShouldBeEquivalentTo(addOrEditInsuree.FirstName);
            insuree.LastName.ShouldBeEquivalentTo(addOrEditInsuree.LastName);
            insuree.DateOfBirth.ShouldBeEquivalentTo(addOrEditInsuree.DateOfBirth);
        }
        // GET: Insuree/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Insuree insuree = db.Insurees.Find(id);

            if (insuree == null)
            {
                return(HttpNotFound());
            }
            return(View(insuree));
        }
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                double quote = 50;
                int    age   = DateTime.Today.Year - insuree.DateOfBirth.Year;
                if (age < 18)
                {
                    quote += 100;
                }
                else if (age > 18 && age < 26)
                {
                    quote += 50;
                }
                else
                {
                    quote += 25;
                }

                if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
                {
                    quote += 25;
                }
                if (insuree.CarMake.ToLower() == "porsche")
                {
                    quote += 25;
                    if (insuree.CarModel.ToLower() == "911 carrera")
                    {
                        quote += 25;
                    }
                }
                quote += insuree.SpeedingTickets * 10;
                if (insuree.DUI)
                {
                    quote = quote * 1.25;
                }
                if (insuree.CoverageType)
                {
                    quote = quote * 1.5;
                }

                insuree.Quote = Convert.ToInt32(quote);
                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(insuree));
        }
Esempio n. 4
0
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,")] Insuree insuree)
        {
            insuree.Quote = 50;
            TimeSpan age   = DateTime.Now - insuree.DateOfBirth;
            int      years = Convert.ToInt32(age.TotalDays / 365);

            if (years <= 18)
            {
                insuree.Quote += 100;
            }
            else if (years >= 19 && years <= 25)
            {
                insuree.Quote += 50;
            }
            else
            {
                insuree.Quote += 25;
            }
            if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
            {
                insuree.Quote += 25;
            }
            if (insuree.CarMake == "Porsche")
            {
                if (insuree.CarModel == "911 Carrera")
                {
                    insuree.Quote += 25;
                }
                insuree.Quote += 25;
            }
            insuree.Quote += insuree.SpeedingTickets * 10;
            if (insuree.DUI)
            {
                insuree.Quote = insuree.Quote + (insuree.Quote * 0.25m);
            }
            if (insuree.CoverageType == "Full")
            {
                insuree.Quote = insuree.Quote + (insuree.Quote * 0.5m);
            }

            if (ModelState.IsValid)
            {
                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(insuree));
        }
        public ActionResult Admin()
        {
            List<Insuree> listInsuree = new List<Insuree>();
            foreach(var insuree in db.Insurees.ToList())
            {
                Insuree theInsured = new Insuree();
                theInsured.FirstName = insuree.FirstName;
                theInsured.LastName = insuree.LastName;
                theInsured.EmailAddress = insuree.EmailAddress;
                theInsured.Quote = insuree.Quote;

                listInsuree.Add(theInsured);            }

            return View(listInsuree);
        }
Esempio n. 6
0
        //private int CalculateAge(int Id)
        //{
        //    using (InsuranceEntities db = new InsuranceEntities())
        //    {
        //        int age = 0;
        //        var insuree = db.Insurees.Find(Id);
        //        age = DateTime.Now.Year - insuree.DateOfBirth.Year;
        //        if (DateTime.Now.DayOfYear < insuree.DateOfBirth.DayOfYear)
        //        {
        //            age -= 1;
        //        }
        //        return age;
        //    }
        //}

        public void GenerateQuote(Insuree insuree)
        {
            decimal quote = 50.00m;
            int     age   = DateTime.Now.Year - insuree.DateOfBirth.Year;

            if (DateTime.Now.DayOfYear < insuree.DateOfBirth.DayOfYear)
            {
                age -= 1;
            }
            if (age <= 18)
            {
                quote += 100m;
            }
            else if (age > 18 && age < 26)
            {
                quote += 50m;
            }
            else
            {
                quote += 25m;
            }
            if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
            {
                quote += 25m;
            }
            if (insuree.CarMake == "Porsche")
            {
                quote += 25m;
            }
            if (insuree.CarMake == "Porsche" && insuree.CarModel == "911 Carrera")
            {
                quote += 25m;
            }
            if (insuree.SpeedingTickets > 0)
            {
                int ticketMultiplyer = insuree.SpeedingTickets * 10;
                quote = quote + ticketMultiplyer;
            }
            if (insuree.DUI == true)
            {
                quote *= 1.25m;
            }
            if (insuree.CoverageType == true)
            {
                quote *= 1.5m;
            }
            insuree.Quote = quote;
        }
Esempio n. 7
0
        public decimal Quote(Insuree insuree)
        {
            decimal baseAmount = 50m;
            var     insureeAge = DateTime.Now.Year - insuree.DateOfBirth.Year;

            if (insureeAge <= 18)
            {
                baseAmount += 100m;
            }
            else if (insureeAge >= 19 && insureeAge < 25)
            {
                baseAmount += 50m;
            }
            else if (insureeAge > 25)
            {
                baseAmount += 25m;
            }
            if (insuree.CarYear < 2000)
            {
                baseAmount += 25m;
            }
            else if (insuree.CarYear > 2015)
            {
                baseAmount += 25m;
            }
            if (insuree.CarMake.ToLower() == "porche")
            {
                baseAmount += 25m;
            }
            if (insuree.CarMake.ToLower() == "porche" && insuree.CarModel.ToLower() == "911 carrera")
            {
                baseAmount += 25m;
            }
            if (insuree.SpeedingTickets > 0)
            {
                baseAmount += insuree.SpeedingTickets * 10m;
            }
            if (insuree.DUI == true)
            {
                baseAmount = baseAmount * 1.25m;
            }
            if (insuree.CoverageType == true)
            {
                baseAmount = baseAmount * 1.50m;
            }

            return(baseAmount);
        }
        private double quoteLogic(Insuree insuree)
        {
            double quote = 50;
            int age = new DateTime(DateTime.Now.Subtract(Convert.ToDateTime(insuree.DateOfBirth)).Ticks).Year - 1;

            if (age < 18)
            {
                quote += 100;
            }
            else if (age > 18 && age < 25)
            {
                quote += 50;
            }
            else if (age > 25)
            {
                quote += 25;
            }

            if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
            {
                quote += 25;
            }

            if (insuree.CarMake == "Porsche")
            {
                quote += 25;
            }

            if (insuree.CarMake == "Porsche" && insuree.CarModel == "911 Carrera")
            {
                quote += 25;
            }

            quote += Convert.ToInt32(insuree.SpeedingTickets) * 10;

            if (Convert.ToBoolean(insuree.DUI))
            {
                quote += quote * .25;
            }

            if (Convert.ToBoolean(insuree.CoverageType))
            {
                quote += quote * .5;
            }

            return quote;
        }
Esempio n. 9
0
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                db.Insurees.Add(insuree);
                int      Quote   = 50;
                DateTime current = DateTime.Now;
                int      age     = current.Year - insuree.DateOfBirth.Year;
                if (age < 18)
                {
                    Quote = Quote + 100;
                }
                if (age >= 19 && age <= 25)
                {
                    Quote = Quote + 50;
                }
                if (insuree.CarYear < 2000)
                {
                    Quote = Quote + 25;
                }
                if (insuree.CarYear > 2015)
                {
                    Quote = Quote + 25;
                }
                if (insuree.CarMake == "Porsche" && insuree.CarModel == "911 Carrera")
                {
                    Quote = Quote + 25;
                }
                if (insuree.SpeedingTickets > 0)
                {
                    Quote = Quote + 10 * (insuree.SpeedingTickets);
                }
                if (insuree.DUI == true)
                {
                    Quote = Quote * 25 / 100;
                }
                if (insuree.CoverageType == true)
                {
                    Quote = Quote * 50 / 100;
                }
                insuree.Quote = Quote;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(insuree));
        }
        public void CanAddInsureeUsingInsuranceAppContext()
        {
            var insuree = new Insuree
            {
                DateOfBirth = DateTime.Now,
                DateCreated = DateTime.Now,
                FirstName = "TestFirstName",
                LastName = "TestLastName",
                DateModified = DateTime.Now
            };

            var context = new InsuranceAppContext();
            context.Insurees.Add(insuree);
            context.SaveChanges();

            insuree.Id.Should().BeGreaterThan(0);
        }
Esempio n. 11
0
        public ActionResult Create([Bind(Include = "InsureeID,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                insuree.Quote = 50.0m;

                int Age = DateTime.Now.Year - insuree.DateOfBirth.Year;
                if (Age < 25)
                {
                    insuree.Quote = insuree.Quote + 25.0m;
                }
                else if (Age < 18)
                {
                    insuree.Quote = insuree.Quote + 100.0m;
                }
                else if (Age > 100)
                {
                    insuree.Quote = insuree.Quote + 25.0m;
                }
                if (insuree.CarMake == "Porsche")
                {
                    insuree.Quote = insuree.Quote + 25.0m;
                }
                if (insuree.CarMake == "Porsche" && insuree.CarModel == "911 Carrera")
                {
                    insuree.Quote = 25.0m + 25.0m;
                }
                {
                    insuree.Quote = insuree.Quote + (insuree.SpeedingTickets * 10.0m);
                }
                if (insuree.DUI == true)
                {
                    insuree.Quote = insuree.Quote + (insuree.Quote * 25 / 100);
                }
                if (insuree.CoverageType == true)
                {
                    insuree.Quote = insuree.Quote + (insuree.Quote * 50 / 100);
                }

                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(insuree));
        }
Esempio n. 12
0
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                insuree.Quote = 50;
                int age = DateTime.Now.Year - insuree.DateOfBirth.Year;
                if (age <= 18)
                {
                    insuree.Quote += 100;
                }
                else if (age >= 19 && age <= 25)
                {
                    insuree.Quote += 50;
                }
                else if (age > 25)
                {
                    insuree.Quote += 25;
                }
                if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
                {
                    insuree.Quote += 25;
                }
                if (insuree.CarMake == "Porsche")
                {
                    insuree.Quote += 25;
                }
                if (insuree.CarMake == "Porsche" && insuree.CarModel == "911 Carrera")
                {
                    insuree.Quote += 25;
                }
                insuree.Quote += 10 * insuree.SpeedingTickets;
                if (insuree.DUI)
                {
                    insuree.Quote = Decimal.Multiply(insuree.Quote, 1.25m);
                }
                if (insuree.CoverageType)
                {
                    insuree.Quote = Decimal.Multiply(insuree.Quote, 1.5m);
                }
                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(RedirectToAction("Quote", insuree));
            }

            return(View(insuree));
        }
 public void AddInsuree(AddOrEditInsuree addInsuree)
 {
     try
     {
         using (_unitOfWorkFactory.Create())
         {
             var insuree = new Insuree();
             _mapper.Map(addInsuree, insuree);
             _insureeRepository.Add(insuree);
             _logger.Info("Created new insuree.");
         }
     }
     catch (ModelValidationException e)
     {
         _logger.Error("Could not create insuree.", e);
     }
 }
 public void AddInsuree(AddOrEditInsuree addInsuree)
 {
     try
     {
         using (_unitOfWorkFactory.Create())
         {
             var insuree = new Insuree();
             _mapper.Map(addInsuree, insuree);
             _insureeRepository.Add(insuree);
             _logger.Info("Created new insuree.");
         }
     }
     catch (ModelValidationException e)
     {
         _logger.Error("Could not create insuree.", e);
     }
 }
        //This method does the logic of calculating the quote
        public decimal calculateQuote(Insuree insuree)
        {
            decimal quote = 50m;
            //calculate age
            int age = DateTime.Now.Year - insuree.DateOfBirth.Year; //not accurate, does not consider month

            if (age <= 18)
            {
                quote += 100;
            }
            else if (age > 18 && age <= 25)
            {
                quote += 50;
            }
            else if (age > 25)
            {
                quote += 25;
            }
            if (insuree.CarYear < 2000)
            {
                quote += 25;
            }
            if (insuree.CarYear > 2015)
            {
                quote += 25;
            }
            if (insuree.CarMake == "Porsche" && insuree.CarModel == "911 Carrera")
            {
                quote += 25;
            }

            quote += insuree.Speedingtickets * 10;
            decimal total = quote;

            if (insuree.DUI)
            {
                quote += ((decimal).25 * total);
            }
            if (insuree.CoverageType)
            {
                quote += ((decimal).50 * total);
            }

            return(quote);
        }
        public void CanAddInsureeUsingInsuranceAppContext()
        {
            var insuree = new Insuree
            {
                DateOfBirth  = DateTime.Now,
                DateCreated  = DateTime.Now,
                FirstName    = "TestFirstName",
                LastName     = "TestLastName",
                DateModified = DateTime.Now
            };

            var context = new InsuranceAppContext();

            context.Insurees.Add(insuree);
            context.SaveChanges();

            insuree.Id.Should().BeGreaterThan(0);
        }
Esempio n. 17
0
        // GET: Admin
        public ActionResult Index()
        {
            using (InsuranceEntities db = new InsuranceEntities())
            {
                var insuredNow = new List <Insuree>();
                foreach (var insuree in db.Insurees)
                {
                    var insured = new Insuree();
                    insured.FirstName    = insuree.FirstName;
                    insured.LastName     = insuree.LastName;
                    insured.EmailAddress = insuree.EmailAddress;
                    insuree.Quote        = decimal.Round(insuree.Quote, 2);
                    insured.Quote        = insuree.Quote;

                    insuredNow.Add(insured);
                }
                return(View(insuredNow));
            }
        }
Esempio n. 18
0
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                insuree.Quote = 50m;
                int age = DateTime.Now.Year - insuree.DateOfBirth.Year;
                if (age < 18)
                {
                    insuree.Quote += 100m;
                }
                else if (age < 25 || age > 100)
                {
                    insuree.Quote += 25m;
                }

                if (insuree.CarMake.ToLower() == "porsche")
                {
                    insuree.Quote += 25m;
                }
                if (insuree.CarMake.ToLower() == "porsche" && insuree.CarModel.ToLower() == "911 carrera")
                {
                    insuree.Quote += 25m;
                }
                insuree.Quote = (insuree.Quote + (10m * insuree.SpeedingTickets));

                if (insuree.DUI)
                {
                    insuree.Quote = (insuree.Quote + (insuree.Quote / 4));
                }

                if (insuree.CoverageType)
                {
                    insuree.Quote = (insuree.Quote + (insuree.Quote / 2));
                }


                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(insuree));
        }
Esempio n. 19
0
 // GET: Insuree/Create
 public ActionResult Create(string fname, string lname, string email, DateTime dob, int carYear, string make, string model, bool dui, int tickets, bool coverage, decimal quote)
 {
     using (InsuranceEntities db = new InsuranceEntities())
     {
         var insured = new Insuree();
         insured.FirstName       = fname;
         insured.LastName        = lname;
         insured.EmailAddress    = email;
         insured.DateOfBirth     = dob;
         insured.CarYear         = carYear;
         insured.CarMake         = make;
         insured.CarModel        = model;
         insured.DUI             = dui;
         insured.SpeedingTickets = tickets;
         insured.CoverageType    = coverage;
         insured.Quote           = quote;
     }
     return(View("Quote generating"));
 }
 public ActionResult Admin()
 {
     using (InsuranceEntities db = new InsuranceEntities())
     {
         var insurees = db.Insurees.Where(x => x.CarModel == null).ToList();                   //Lambda expression of getting specified data
         /*var signups = (from c in db.SignUps where c.Removed == null select c).ToList();  */ //Linq Method of getting specified data
         var insurers = new List <Insuree>();
         foreach (var insuree in insurees)
         {
             var insurer = new Insuree();
             insuree.Id           = insurer.Id;
             insuree.FirstName    = insurer.FirstName;
             insuree.LastName     = insurer.LastName;
             insuree.EmailAddress = insurer.EmailAddress;
             //insuree.Add(insurees);
         }
         return(View(insurees));
     }
 }
Esempio n. 21
0
        public ActionResult Admin2()
        {
            using (InsuranceEntities db = new InsuranceEntities())
            {
                var            insurees = db.Insurees;
                List <Insuree> Insured  = new List <Insuree>();

                foreach (var insuree in insurees)
                {
                    var insured = new Insuree();
                    insured.Id           = insuree.Id;
                    insured.FirstName    = insuree.FirstName;
                    insured.LastName     = insuree.LastName;
                    insured.EmailAddress = insuree.EmailAddress;
                    insured.Quote        = insuree.Quote;
                    Insured.Add(insured);
                }
                return(View(Insured));
            }
        }
        public void CanExecuteQueryAgainstDataContext()
        {
            var lastName = Guid.NewGuid().ToString();
            var context = new InsuranceAppContext();

            var insuree = new Insuree
            {
                DateOfBirth = DateTime.Now,
                DateCreated = DateTime.Now,
                FirstName = "TestFirstName",
                LastName = lastName,
                DateModified = DateTime.Now
            };

            context.Insurees.Add(insuree);
            context.SaveChanges();

            var insureeCheck = context.Insurees.Single(x => x.LastName == lastName);
            insureeCheck.Should().NotBeNull();
        }
Esempio n. 23
0
        public ActionResult Admin()
        {
            using (InsuranceEntities db = new InsuranceEntities())
            {
                var insuree     = db.Insurees;
                var insureeList = new List <Insuree>();

                foreach (var i in insuree)
                {
                    var insPerson = new Insuree();
                    insPerson.FirstName    = i.FirstName;
                    insPerson.LastName     = i.LastName;
                    insPerson.EmailAddress = i.EmailAddress;
                    insPerson.Quote        = i.Quote;

                    insureeList.Add(insPerson);
                }
                return(View(insureeList));
            }
        }
        public void CanExecuteQueryAgainstDataContext()
        {
            var lastName = Guid.NewGuid().ToString();
            var context  = new InsuranceAppContext();

            var insuree = new Insuree
            {
                DateOfBirth  = DateTime.Now,
                DateCreated  = DateTime.Now,
                FirstName    = "TestFirstName",
                LastName     = lastName,
                DateModified = DateTime.Now
            };

            context.Insurees.Add(insuree);
            context.SaveChanges();

            var insureeCheck = context.Insurees.Single(x => x.LastName == lastName);

            insureeCheck.Should().NotBeNull();
        }
Esempio n. 25
0
        public ActionResult Admin()
        {
            using (InsuranceEntities db = new InsuranceEntities())
            {
                var insurees = db.Insurees;

                var insureesVM = new List <Insuree>();

                foreach (var insuree in insurees)
                {
                    var insureeVM = new Insuree();
                    insureeVM.FirstName    = insuree.FirstName;
                    insureeVM.LastName     = insuree.LastName;
                    insureeVM.EmailAddress = insuree.EmailAddress;
                    insureeVM.Quote        = insuree.Quote;
                    insureesVM.Add(insuree);
                }

                return(View(insureesVM));
            }
        }
Esempio n. 26
0
        private Decimal CalculateQuote(Insuree insuree)
        {
            Decimal quote = 50.00m;

            if (DateTime.Now.Date < insuree.DateOfBirth.Date.AddYears(19))
            {
                quote += 100.00m;
            }
            else if (DateTime.Now.Date < insuree.DateOfBirth.Date.AddYears(26))
            {
                quote += 50.00m;
            }
            else
            {
                quote += 25.00m;
            }
            if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
            {
                quote += 25.00m;
            }
            if (insuree.CarMake.ToLower() == "porsche")
            {
                quote += 25.00m;
                if (insuree.CarModel.ToLower() == "911 carrera")
                {
                    quote += 25.00m;
                }
            }
            quote += insuree.SpeedingTickets * 10.00m;
            if (insuree.DUI)
            {
                quote *= 1.25m;
            }
            if (insuree.CoverageType)
            {
                quote *= 1.5m;
            }

            return(quote);
        }
Esempio n. 27
0
        // GET: Admin
        public ActionResult Index()
        {
            using (InsuranceEntities db = new InsuranceEntities())
            {
                var insurees = (from c in db.Insurees
                                where c.Id > 0
                                select c).ToList();
                var insureeVms = new List <Insuree>();

                foreach (Insuree insuree in insurees)
                {
                    var insureeVm = new Insuree();
                    insureeVm.Id           = insuree.Id;
                    insureeVm.FirstName    = insuree.FirstName;
                    insureeVm.LastName     = insuree.LastName;
                    insureeVm.EmailAddress = insuree.EmailAddress;
                    insureeVm.Quote        = insuree.Quote;
                    insureeVms.Add(insureeVm);
                }
                return(View(insureeVms));
            }
        }
Esempio n. 28
0
        private decimal getQuote(Insuree insuree)
        {
            insuree.Quote = 50;
            int yearsOld = DateTime.Today.Year - insuree.DateOfBirth.Year;

            if (yearsOld < 18)
            {
                insuree.Quote += 100;
            }
            else if ((yearsOld < 25 && yearsOld > 18) || yearsOld > 100)
            {
                insuree.Quote += 25;
            }
            if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
            {
                insuree.Quote += 25;
            }
            if (insuree.CarMake.ToLower() == "porsche")
            {
                insuree.Quote += 25;
                if (insuree.CarModel.ToLower() == "911 Carrera")
                {
                    insuree.Quote += 25;
                }
            }
            if (insuree.SpeedingTickets != 0)
            {
                insuree.Quote += (10 * insuree.SpeedingTickets);
            }
            if (insuree.DUI)
            {
                insuree.Quote += (insuree.Quote / 4);
            }
            if (insuree.FullCoverage)
            {
                insuree.Quote += (insuree.Quote / 2);
            }
            return(insuree.Quote);
        }
Esempio n. 29
0
        public void FindInsureeByLastName()
        {
            var lastName = Guid.NewGuid().ToString();
            var insuree  = new Insuree
            {
                FirstName   = "FirstName",
                LastName    = lastName,
                DateOfBirth = DateTime.Now
            };

            using (new UnitOfWorkFactory().Create())
            {
                var repository = new InsureeRepository();
                repository.Add(insuree);
            }
            insuree.Id.Should().BePositive();

            using (new UnitOfWorkFactory().Create())
            {
                var repository   = new InsureeRepository();
                var insureeCheck = repository.FindByLastName(lastName);
                insureeCheck.Count(x => x.Id == insuree.Id).Should().BePositive();
            }
        }
Esempio n. 30
0
        public ActionResult QuoteCalc(string FirstName, string LastName, string EmailAddress,
                                      DateTime DateOfBirth, int CarYear, string CarMake, string CarModel,
                                      int SpeedingTickets, bool CoverageType = false, bool DUI = false)
        {
            using (InsuranceEntities db = new InsuranceEntities())
            {
                var insuree = new Insuree();
                insuree.FirstName       = FirstName;
                insuree.LastName        = LastName;
                insuree.EmailAddress    = EmailAddress;
                insuree.DateOfBirth     = DateOfBirth;
                insuree.CarYear         = CarYear;
                insuree.CarMake         = CarMake;
                insuree.CarModel        = CarModel;
                insuree.DUI             = DUI;
                insuree.CoverageType    = CoverageType;
                insuree.SpeedingTickets = SpeedingTickets;
                insuree.Quote           = TotalQuote(insuree);

                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(View(insuree));
            }
        }
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                int total = 50;
                //int birthdate = Convert.ToInt32(insuree.DateOfBirth);
                //int currentAge = DateTime.Now.Year - birthdate;

                if ((DateTime.Now).Year - (Convert.ToDateTime(insuree.DateOfBirth)).Year < 18)
                {
                    total += 25;
                }

                if ((DateTime.Now).Year - (Convert.ToDateTime(insuree.DateOfBirth)).Year < 25)
                {
                    total += 100;
                }

                if ((DateTime.Now).Year - (Convert.ToDateTime(insuree.DateOfBirth)).Year > 100)
                {
                    total += 25;
                }



                int vehicleYear = Convert.ToInt32(insuree.CarYear);

                if (vehicleYear < 2000)
                {
                    total += 25;
                }
                else
                {
                    total += 0;
                }

                if (vehicleYear > 2015)
                {
                    total += 25;
                }

                if (insuree.CarMake == "Porsche")
                {
                    total += 25;
                }

                if (insuree.CarMake == "Carrera")
                {
                    total += 25;
                }

                int ticket = Convert.ToInt32(insuree.SpeedingTickets);
                if (ticket >= 1)
                {
                    total += 25;
                }

                //bool drinker = Convert.ToBoolean(DUI);

                if (insuree.DUI == true)
                {
                    total = total + Convert.ToInt32(.25m);
                }

                //bool type = Convert.ToBoolean(coverageType);
                if (insuree.CoverageType == true)
                {
                    total = total + Convert.ToInt32(.50m);
                }
                else
                {
                    total += 0;
                }

                //if (insuree.Quote > 0)
                //{
                //    Console.WriteLine("Your Quote is: {0} ", total); //Doesn't work for an MVC
                //    Console.ReadLine();
                //}

                insuree.Quote = total;
                db.Insurees.Add(insuree);
                db.SaveChanges();
                ViewBag.Message = "Your total is: $" + total;
                return(View("Success"));
                //return RedirectToAction("Index");
            }

            return(View(insuree));
        }
Esempio n. 32
0
 public void CanCreateInstanceOfInsuree()
 {
     var insuree = new Insuree();
     insuree.Should().NotBeNull();
     insuree.Id.Should().Be(0);
 }
Esempio n. 33
0
 public void CanAddPhoneNumbersToNewInsuree()
 {
     var insuree = new Insuree();
     insuree.PhoneNumbers.Add(new PhoneNumber());
     insuree.PhoneNumbers.Count.Should().Be(1);
 }
Esempio n. 34
0
 public void CanAddEmailAddressToNewInsuree()
 {
     var insuree = new Insuree();
     insuree.EmailAddresses.Add(new EmailAddress());
     insuree.EmailAddresses.Count.Should().Be(1);
 }
Esempio n. 35
0
 public void TwoInsureeWithSameIdAreSame()
 {
     var insuree1 = new Insuree {Id = 1, FirstName = "TestFirstName", LastName = "TestLastName"};
     var insuree2 = new Insuree {Id = 1, FirstName = "TestFirstName", LastName = "TestLastName"};
     (insuree1 == insuree2).Should().BeTrue();
 }
Esempio n. 36
0
 public void NewInsureeHasListOfPhoneNumbers()
 {
     var insuree = new Insuree();
     insuree.PhoneNumbers.Should().NotBeNull();
     insuree.PhoneNumbers.Should().BeEmpty();
 }
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (ModelState.IsValid)
            {
                int age = 0;
                age = DateTime.Now.Year - insuree.DateOfBirth.Year;
                if (DateTime.Now.DayOfYear < insuree.DateOfBirth.DayOfYear)
                {
                    age = age - 1;
                }


                bool dui      = Convert.ToBoolean(insuree.DUI);
                bool coverage = Convert.ToBoolean(insuree.CoverageType);
                int  carYear  = Convert.ToInt32(insuree.CarYear);
                int  tickets  = Convert.ToInt32(insuree.SpeedingTickets);


                decimal total = 50;


                if (age < 25)
                {
                    total = (total + 25);
                }
                if (age < 18)
                {
                    total = (total + 100);
                }
                if (age > 100)
                {
                    total = (total + 25);
                }
                if (carYear < 2000)
                {
                    total = (total + 25);
                }
                if (carYear > 2015)
                {
                    total = (total + 25);
                }
                if (insuree.CarMake == "Porsche")
                {
                    total = (total + 25);
                }
                else if (insuree.CarModel == "911 Carrera")
                {
                    total = (total + 25);
                }

                total = total + tickets * 10;



                if (dui == true)
                {
                    total += (total * .25m);
                }
                if (coverage == true)
                {
                    total += (total * .50m);
                    total  = (Decimal)System.Math.Round(total, 2);
                }

                insuree.Quote = total;
                //ViewBag.quote = total;
                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(View("Quote", total));
            }

            return(View(insuree));
        }
Esempio n. 38
0
 public void NewInsureeHasHomeAddress()
 {
     var insuree = new Insuree();
     insuree.Addresses.Should().NotBeNull();
 }
Esempio n. 39
0
 public void FullNameReturnsEmpty()
 {
     var insuree = new Insuree();
     insuree.FullName.Should().Be(string.Empty);
 }
Esempio n. 40
0
 public void FullNameIsFirstNameAndLastName()
 {
     var insuree = new Insuree {FirstName = "First", LastName = "Last"};
     insuree.FullName.Should().Be("Last, First");
 }
Esempio n. 41
0
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            decimal QuoteTotal = insuree.Quote;

            //Base rate of 50.00 per month.
            QuoteTotal += 50;

            {
                //Add $25 if age is younger than 25.
                //Add an additional $100 if age is younger than 18.
                //Add $100 if age is 100 or older.
                DateTime now = new DateTime();
                now = DateTime.Now;
                int yrsOld = now.Year + 1 - insuree.DateOfBirth.Year;

                if (yrsOld < 25)
                {
                    QuoteTotal += 25;
                }
                if (yrsOld <= 18)
                {
                    QuoteTotal += 100;
                }
                if (insuree.DateOfBirth.Year + 1 - now.Year >= 100)
                {
                    QuoteTotal += 25;
                }

                //Add $25 if the cars year is before 2000 or over 2015.
                if (insuree.CarYear < 2000 || insuree.CarYear > 2015)
                {
                    QuoteTotal += 25;
                }

                //Add $25 if owns a Porsche and an additional $25 if it's a 911.
                if (insuree.CarMake.ToLower() != "Porsche")
                {
                    QuoteTotal += 25;
                    if (insuree.CarModel.ToLower() == "911")
                    {
                        QuoteTotal += 25;
                    }
                }

                //Speeding Ticket(s) @ 10.00 each ticket issued
                for (int i = 0; i < insuree.SpeedingTickets; i++)
                {
                    insuree.SpeedingTickets += (i + 10);
                    QuoteTotal += insuree.SpeedingTickets;
                }


                //Add 25% to total if driver has DUI.
                if (insuree.DUI == true)
                {
                    QuoteTotal = QuoteTotal += QuoteTotal / 4;
                }

                //Add 50% to total for Full Coverage Plan.
                if (insuree.CoverageType == true)
                {
                    QuoteTotal = QuoteTotal += (QuoteTotal / 2);
                }
                insuree.Quote = QuoteTotal;
                if (ModelState.IsValid)
                {
                    db.Insurees.Add(insuree);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }

                return(View(insuree));
            }
        }
        public void Init()
        {
            _insureeRepositoryMock = new Mock<IInsureeRepository>();
            _unitOfWorkFactoryMock = new Mock<IUnitOfWorkFactory>();
            _logger = new Mock<ILogger<InsureeManagementAppService>>();

            _insureeRepositoryMock.Setup(x => x.FindAll()).Returns(() =>
            {
                var allInsurees = new List<Insuree>();

                for (var i = 0; i < 15; i++)
                {
                    var insuree = new Insuree
                    {
                        Id = i + 1,
                        FirstName = i.ToString(),
                        LastName = i.ToString(),
                        DateOfBirth = DateTime.Now.AddYears(-10 - i)
                    };
                    insuree.Addresses.Add("street " + i, "123", "12345", "city", "country", ContactType.Personal);

                    allInsurees.Add(insuree);
                }

                return allInsurees.AsQueryable();
            });

            _insureeRepositoryMock.Setup(x => x.FindById(It.IsAny<int>(), It.IsAny<Expression<Func<Insuree, object>>[]>()))
                .Returns(() =>
                {
                    var insuree = new Insuree
                    {
                        Id = Id,
                        FirstName = "first",
                        LastName = "last"
                    };
                    insuree.Addresses.Add("street", "123", "12345", "city", "country", ContactType.Personal);
                    insuree.PhoneNumbers.Add("1234567890", PhoneType.Fax, ContactType.Partner);
                    insuree.EmailAddresses.Add("*****@*****.**", ContactType.Business);

                    insuree.Partner = new Insuree
                    {
                        Id = PartnerId,
                        FirstName = "partnerFirst",
                        LastName = "partnerLast"
                    };

                    return insuree;
                });

            _insureeManagementAppService = new InsureeManagementAppService(_insureeRepositoryMock.Object,
                _unitOfWorkFactoryMock.Object, _logger.Object, Mapper);
        }
Esempio n. 43
0
 public void NewInsureeHasListOfEmailAddresses()
 {
     var insuree = new Insuree();
     insuree.EmailAddresses.Should().NotBeNull();
     insuree.EmailAddresses.Should().BeEmpty();
 }
Esempio n. 44
0
        public void FindInsureeByLastName()
        {
            var lastName = Guid.NewGuid().ToString();
            var insuree = new Insuree
            {
                FirstName = "FirstName",
                LastName = lastName,
                DateOfBirth = DateTime.Now
            };

            using (new UnitOfWorkFactory().Create())
            {
                var repository = new InsureeRepository();
                repository.Add(insuree);
            }
            insuree.Id.Should().BePositive();

            using (new UnitOfWorkFactory().Create())
            {
                var repository = new InsureeRepository();
                var insureeCheck = repository.FindByLastName(lastName);
                insureeCheck.Count(x => x.Id == insuree.Id).Should().BePositive();
            }
        }
Esempio n. 45
0
        public ActionResult Create([Bind(Include = "Id,FirstName,LastName,EmailAddress,DateOfBirth,CarYear,CarMake,CarModel,DUI,SpeedingTickets,CoverageType,Quote")] Insuree insuree)
        {
            if (string.IsNullOrEmpty(insuree.FirstName) || string.IsNullOrEmpty(insuree.LastName) || string.IsNullOrEmpty(insuree.EmailAddress) || string.IsNullOrEmpty(Convert.ToString(insuree.DateOfBirth)) ||
                string.IsNullOrEmpty(Convert.ToString(insuree.CarYear)) || string.IsNullOrEmpty(insuree.CarMake) || string.IsNullOrEmpty(insuree.CarModel) || string.IsNullOrEmpty(Convert.ToString(insuree.SpeedingTickets)))
            {
                return(View("~/Views/Shared/Error.cshtml"));
            }

            DateTime age  = Convert.ToDateTime(insuree.DateOfBirth);
            int      year = DateTime.Now.Year - age.Year;

            decimal quote = insuree.Quote + 50m;

            //This is for the age portion of the exercise.
            if (year < 18)
            {
                quote = quote + 100m;
            }
            else if (year < 25)
            {
                quote = quote + 25m;
            }
            else if (year > 100)
            {
                quote = quote + 25m;
            }

            //This is for the cars age portion
            int carAge = Convert.ToInt16(insuree.CarYear);


            if (carAge < 2000)
            {
                quote = quote + 25m;
            }
            else if (carAge > 2015)
            {
                quote = quote + 25m;
            }

            //This is for the car make
            string carMake = insuree.CarMake.ToLower();

            if (carMake == "porsche")
            {
                quote = quote + 25m;
            }

            //This is for the car model

            string carModel = insuree.CarModel.ToLower();

            if (carModel == "911 carrera" || carModel == "911" || carModel == "carrera")
            {
                quote = quote + 25m;
            }

            int speedTix = Convert.ToInt16(insuree.SpeedingTickets);

            if (speedTix > 0)
            {
                quote = quote + (speedTix * 10m);
            }

            //Dui

            bool dui = insuree.DUI;

            if (dui == true)
            {
                quote = quote * 1.25m;
            }

            //Coverage

            bool coverage = insuree.CoverageType;

            if (coverage == true)
            {
                quote = quote * 1.50m;
            }


            insuree.Quote = quote;

            if (ModelState.IsValid)
            {
                db.Insurees.Add(insuree);
                db.SaveChanges();
                return(RedirectToAction("CustomerQuote"));
            }

            return(View(insuree));
        }