// // GET: /Booking/Create public ActionResult Create(string car_reg, string place, int from_year, int from_month, int from_day, int to_year, int to_month, int to_day) { var email = ""; if (User.Identity.IsAuthenticated) email = Membership.GetUser().Email; UserObj u = CustomUserService.loadUser(email); if (!u.Customer) { return RedirectToAction("Login", "Account", new { returnUrl = "/Booking/Create?car_reg=" + car_reg + "&from_year=" + from_year + "&from_month=" + from_month + "&from_day=" + from_day + "&to_year=" + to_year + "&to_month=" + to_month + "&to_day=" + to_day + "&place=" + place }); } var from_string = from_year + "/" + from_month + "/" + from_day; DateTime fromdate = DateTime.ParseExact(from_string, "yyyy/M/d", null); var to_string = to_year + "/" + to_month + "/" + to_day; DateTime todate = DateTime.ParseExact(to_string, "yyyy/M/d", null); BookingCreateUI showChosenCar = new BookingCreateUI(); Car car = new Car(); car.car_reg = car_reg; showChosenCar.fromDate = fromdate; showChosenCar.toDate = todate; showChosenCar.car = car; showChosenCar.place = place; BookingCreateUI result = logic.ShowChosenCar(showChosenCar); return View(result); }
public ActionResult Create(BookingCreateUI booking) { var email = ""; if (User.Identity.IsAuthenticated) email = Membership.GetUser().Email; UserObj u = CustomUserService.loadUser(email); if (!u.Customer) return RedirectToAction("Login", "Account"); if (ModelState.IsValid) { BookingConfirmUI bookingConfirm = new BookingConfirmUI(); bookingConfirm = logic.CreateBooking(booking, u.Id()); return RedirectToAction("Confirm", new { booking_id = bookingConfirm.BookingId }); } return View(booking); }
public Models.ui.BookingCreateUI ShowChosenCar(BookingCreateUI car) { var supplierObj = new SupplierBObj(); var carObj = new CarBObj(supplierObj); var booking = new BookingBObj(carObj, supplierObj); var startDate = car.fromDate; var endDate = car.toDate; var car_reg = car.car.car_reg; var carId = db.getCarIdByReg(car_reg); carObj.setId(carId); booking.setBookingRange(startDate, endDate); var dbUnavailabilities = db.listUnavailabilitiesForCar(carId); var unavailabilities = new List<UnavailableDateBObj>(); foreach (var u in dbUnavailabilities) { var unavailable = new UnavailableDateBObj{ fromDate = u.start_date, toDate = u.end_date }; unavailabilities.Add(unavailable); } car.valid = booking.valid(unavailabilities); car.amount = booking.getTotalCost(); return car; }