示例#1
0
        public ActionResult Index(int id)
        {
            var crHelper = new CarRentalHelper();
            var rent     = (RentDbModel)_dbRents.GetByBookingId(id);
            var receive  = (ReceiveDbModel)_dbReceives.GetByBookingId(id);

            var currentSite = CoreHelpers.CurrentSite();
            var baseRent    = currentSite.GetPropertyValue <int>("baseRent");
            var baseKmPrice = currentSite.GetPropertyValue <int>("baseKmPrice");
            var price       = crHelper.CalculatePrice(rent, receive, baseRent, baseKmPrice);

            var model = new ReturnedViewModel(CurrentPage)
            {
                CurrentPage = CurrentPage,
                Price       = Math.Round(price)
            };

            return(CurrentTemplate(model));
        }
示例#2
0
        public void CalculatePriceTruck()
        {
            var rent = new RentDbModel
            {
                Date        = new DateTime(2017, 12, 3, 15, 0, 0),
                Mileage     = 600,
                CarCategory = "Lastbil"
            };

            var receive = new ReceiveDbModel
            {
                Date    = new DateTime(2017, 12, 7, 15, 0, 0),
                Mileage = 680
            };

            var expectedPrice = _baseRent * 4 * 1.5 + _baseKmPrice * 80 * 1.5;

            var crHelper = new CarRentalHelper();
            var price    = crHelper.CalculatePrice(rent, receive, _baseRent, _baseKmPrice);

            Assert.AreEqual(expectedPrice, price);
        }
示例#3
0
        public void CalculatePriceEstate()
        {
            var rent = new RentDbModel
            {
                Date        = new DateTime(2017, 12, 3, 15, 0, 0),
                Mileage     = 600,
                CarCategory = "Kombi"
            };

            var receive = new ReceiveDbModel
            {
                Date    = new DateTime(2017, 12, 6, 15, 0, 0),
                Mileage = 680
            };

            var expectedPrice = _baseRent * 3 * 1.3 + _baseKmPrice * 80;

            var crHelper = new CarRentalHelper();
            var price    = crHelper.CalculatePrice(rent, receive, _baseRent, _baseKmPrice);

            Assert.AreEqual(expectedPrice, price);
        }