public void Create(CreateOrderServiceModel model) { var car = _carService.GetById(model.CarId); var client = _clientService.FindById(model.ClientId); if (car == null || client == null || model.PurchasePrice < 1) { throw new ArgumentException("Invalid Input Data"); } var order = new Order() { CarId = model.CarId, ClientId = model.ClientId, OrderStatus = model.OrderStatus, PurchaseDate = model.PurchaseDate, PurchasePrice = model.PurchasePrice, OrderNumber = Guid.NewGuid() }; this.data.Add(order); SellThisCar(model); this.data.SaveChanges(); }
public IActionResult Add(CreateOrdersViewModel model, int carId, int clientId) { if (!this.ModelState.IsValid) { return(this.RedirectToAction("Error", "Home")); } try { var createOrder = new CreateOrderServiceModel() { CarId = carId, ClientId = clientId, OrderStatus = OrderStatus.In_Process, PurchaseDate = model.PurchaseDate, PurchasePrice = model.PurchasePrice }; _order.Create(createOrder); return(RedirectToAction("Index")); } catch (Exception ex) { LogExceptionWithMessage(ex); ViewBag.Section = ex.Message; FillViewBagWithDataForSelectInView(); return(View()); } }
private void SellThisCar(CreateOrderServiceModel model) { var findCar = this.data.Cars.Where(x => x.Id == model.CarId).FirstOrDefault(); findCar.IsSold = IsSold.Yes; }