public async Task <ActionResult> Order(OrderCreature orderCreature) { if (ModelState.IsValid) { Car car = await _carDataSource.GetCarAsync(orderCreature.CarId); car.AvailabilityNow = false; await _carDataSource.UpdateCarAsync(car); Order order = new Order { PassportData = orderCreature.PassportData, AvailabilityDriver = orderCreature.AvailabilityDriver, StartDate = orderCreature.StartDate, FinalDate = orderCreature.FinalDate, CarId = orderCreature.CarId, OrderStatusId = orderCreature.OrderStatusId, ClientProfileId = orderCreature.ClientProfileId }; TimeSpan span = orderCreature.FinalDate.Subtract(orderCreature.StartDate); int numberDays = (int)span.TotalDays; order.Invoice = numberDays * car.Price; order.InvoiceMessage = false; await _orderDataSource.AddOrderAsync(order); return(RedirectToAction("Index", "Home")); } return(View()); }
public async Task <ActionResult> EditCar(int?id) { if (id == null) { return(HttpNotFound()); } int carId = (int)id; Car car = await _carDataSource.GetCarAsync(carId); CarViewModel carViewModel = new CarViewModel(car.Id, car.Title, car.Brand, car.QulityClass, car.Price); if (car != null) { return(View(carViewModel)); } return(HttpNotFound()); }
public async Task <ActionResult> DamageCars(DamageCarArticleList damageCarArticleList) { var damageCar = await _damageCarDataSource.GetDamageCarAsync(damageCarArticleList.Id); damageCar.UnderRepairNow = false; await _damageCarDataSource.UpdateDamageCarAsync(damageCar); if (damageCarArticleList.UnderRepairNow == false) { Car car = await _carDataSource.GetCarAsync(damageCar.ReturnCar.Order.CarId); car.AvailabilityNow = true; await _carDataSource.UpdateCarAsync(car); await _damageCarDataSource.UpdateDamageCarAsync(damageCar); } return(RedirectToAction("DamageCars", "Home")); }