Exemplo n.º 1
0
        private static BookOrder InitializeBookOrder()
        {
            //validate quantities of bikes to know if is Family Discount
            List <Bike> bikesOrder = new List <Bike>();

            for (int i = 0; i < 4; i++)
            {
                bikesOrder.Add(new Bike {
                    Color = "White", Frame = "Men", Rim = 26
                });
            }

            //initialize RentalType
            int      rentByHour = (int)Booking.Rent.Hour;
            RentType rentType   = InitializeRentTypeCollection().Where(r => r.RentTypeId == rentByHour).First();

            //initialize Customer
            Customer customer = new Customer()
            {
                Ssn = "123456789", Name = "Cosme Fulanito"
            };

            //initialize BookOrder
            BookOrder bookOrder = new BookOrder()
            {
                Bikes      = bikesOrder,
                Customer   = customer,
                RentalType = rentType,
                Price      = rentType.Price
            };

            return(bookOrder);
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Edit(int id, [Bind("TypeID,TypeName,Extension")] RentType rentType)
        {
            if (id != rentType.TypeID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(rentType);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RentTypeExists(rentType.TypeID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(rentType));
        }
Exemplo n.º 3
0
 public void Update(RentType entity)
 {
     using (var conn = CreateConnection())
     {
         conn.Open();
         var query  = "update RentType set RentTypeSystemName=@RentTypeSystemName, RentTypeName=@RentTypeName,DisplayOrder=@DisplayOrder,Published=@Published where Id=@Id";
         var result = conn.Query(query, new { RentTypeSystemName = entity.RentTypeSystemName, RentTypeName = entity.RentTypeName, Published = entity.Published, DisplayOrder = entity.DisplayOrder, Id = entity.Id });
     }
 }
Exemplo n.º 4
0
 public void Delete(RentType entity)
 {
     using (var conn = CreateConnection())
     {
         conn.Open();
         var query  = "delete RentType where Id=@Id";
         var result = conn.Query(query, new { Id = entity.Id });
     }
 }
Exemplo n.º 5
0
 public void Add(RentType entity)
 {
     using (var conn = CreateConnection())
     {
         conn.Open();
         var query  = "insert into RentType (RentTypeSystemName,RentTypeName,Published,DisplayOrder) values (@RentTypeSystemName,@RentTypeName,@Published,@DisplayOrder)";
         var result = conn.Query(query, new { RentTypeName = entity.RentTypeName, RentTypeSystemName = entity.RentTypeSystemName, Published = entity.Published, DisplayOrder = entity.DisplayOrder });
     }
 }
Exemplo n.º 6
0
        public void GetPrice()
        {
            double expected = 20.0;

            int      rentByDay          = (int)Booking.Rent.Day;
            RentType getPriceByRentType = rentType.Where(r => r.RentTypeId == rentByDay).First();
            double   getPrice           = getPriceByRentType.Price;

            Assert.AreEqual(expected, getPrice);
        }
Exemplo n.º 7
0
 public bool DeleteRentType(RentType rentType)
 {
     try
     {
         _rentTypeRepository.Delete(rentType);
         return(true);
     }
     catch (Exception ex)
     {
         return(false);
     }
 }
Exemplo n.º 8
0
        public void TestPropertiesRentType()
        {
            RentType rentTypeTest = new RentType
            {
                RentTypeId  = 1,
                Description = "Hour",
                Price       = 5.0
            };

            Assert.AreEqual(1, rentTypeTest.RentTypeId);
            Assert.AreEqual("Hour", rentTypeTest.Description);
            Assert.AreEqual(5.0, rentTypeTest.Price);
        }
Exemplo n.º 9
0
        private static Rent GetRent(DateTime from, DateTime to, RentType rentType = RentType.None)
        {
            var rent = new Rent()
            {
                From     = from,
                To       = to,
                RentType = rentType,
                Bike     = new Bike {
                    BikeId = 1
                }
            };

            return(rent);
        }
Exemplo n.º 10
0
        public Rent(float amount, string desc, RentType type)
        {
            if (amount <= 0)
            {
                throw new ArgumentOutOfRangeException("amount", "Can't be less or equal to 0");
            }

            if (String.IsNullOrWhiteSpace(desc))
            {
                throw new ArgumentNullException("desc", "Can't be null or empty");
            }

            Mode        = type;
            Amount      = amount;
            Description = desc;

            SubTotal = RentConst.baseCalc[type] * amount;
        }
Exemplo n.º 11
0
        public int Add(float amount, string desc, RentType type)
        {
            var item = new Rent(amount, desc, type);

            items.Add(item);

            subtotal += item.SubTotal;

            // Promotion
            if (items.Count >= 3 && items.Count <= 5)
            {
                discount = RentConst.FamilyRental;
            }
            else
            {
                discount = 0;
            }

            return(items.Count);
        }
Exemplo n.º 12
0
        public async Task <IActionResult> Create([Bind("TypeID,TypeName,File")] RentType rentType)
        {
            using (var memoryStream = new MemoryStream())
            {
                await rentType.File.FormFile.CopyToAsync(memoryStream);

                string photoname = rentType.File.FormFile.FileName;
                rentType.Extension = Path.GetExtension(photoname);
                if (!".jpg.jpeg.png.gif.bmp".Contains(rentType.Extension.ToLower()))
                {
                    ModelState.AddModelError("File.FormFile", "Invalid Format of Image Given.");
                }
                else
                {
                    ModelState.Remove("Extension");
                }
            }
            if (ModelState.IsValid)
            {
                _context.Add(rentType);
                await _context.SaveChangesAsync();

                var uploadsRootFolder = Path.Combine(_environment.WebRootPath, "images/types");
                if (!Directory.Exists(uploadsRootFolder))
                {
                    Directory.CreateDirectory(uploadsRootFolder);
                }
                string filename = rentType.TypeID + rentType.Extension;
                var    filePath = Path.Combine(uploadsRootFolder, filename);
                using (var fileStream = new FileStream(filePath, FileMode.Create))
                {
                    await rentType.File.FormFile.CopyToAsync(fileStream).ConfigureAwait(false);
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(rentType));
        }
Exemplo n.º 13
0
        public JsonResult Update(RentType rentType)
        {
            var rs = _rentService.UpdateRentType(rentType);

            return(Json(rs));
        }
Exemplo n.º 14
0
        public JsonResult Add(RentType rentType)
        {
            var rs = _rentService.AddRentType(rentType);

            return(Json(rs));
        }