public ActionResult RentFromBooking(int id, BookingToRentViewModel viewModel) { var booking = _unitOfWork.Bookings.Get(id); var cycle = _unitOfWork.Cycles.Get(booking.CycleId); var store = _unitOfWork.Stores.Get(booking.StoreId); var rentTime = DateTime.Now; var rent = new Rent { CycleId = cycle.CycleId, RentedTime = rentTime, RentedFromStoreId = store.StoreId, ManagerId = User.Identity.GetUserId(), CustomerId = booking.CustomerId, TrackId = TrackIdGenerotor.Generate(), BookingId = booking.BookingId }; _unitOfWork.Rents.Add(rent); booking.IsRented = true; cycle.CycleStatusType = CycleStatusType.Rented; store.TotalCycle -= 1; _unitOfWork.Complete(); return(RedirectToAction("Bookings")); }
public ActionResult Booking(int id, Booking model) { Cycle toBeBookedCycle = _unitOfWork.Cycles.GetCycleWithDetails(id); Booking toBeBooked = new Booking { CycleId = id, BookingStatus = true, CustomerId = User.Identity.GetUserId(), BookingTime = DateTime.Now, StoreId = toBeBookedCycle.StoreId, BookingTrackId = TrackIdGenerotor.Generate(), CycleName = toBeBookedCycle.Company.Name }; _unitOfWork.Bookings.Add(toBeBooked); toBeBookedCycle.CycleStatusType = CycleStatusType.Booked; _unitOfWork.Complete(); return(View("Index", _unitOfWork.Cycles.GetCycleByStoreId(toBeBookedCycle.StoreId))); }
public ActionResult Rent(int id, RentViewModel model) { var customer = _unitOfWork.UserManager.FindByName(model.CustomerName); var cycle = _unitOfWork.Cycles.Get(id); var store = _unitOfWork.Stores.Get(cycle.StoreId); Rent toBeRented = new Rent { CycleId = id, ManagerId = User.Identity.GetUserId(), RentedFromStoreId = store.StoreId, CustomerId = customer.Id, TrackId = TrackIdGenerotor.Generate(), RentedTime = DateTime.Now }; cycle.CycleStatusType = CycleStatusType.Rented; store.TotalCycle -= 1; _unitOfWork.Rents.Add(toBeRented); _unitOfWork.Complete(); return(RedirectToAction("Index", "Store")); return(HttpNotFound()); }