public async Task <ActionResult <Result> > AddDeliveryBySupervisor(AddDeliveryModel Model) { // Add new delivery to DB // This action MUST return this new delivery's ID // This parameters are the main ones. Extra ones can be added later if needed (eg quantity, etc.) // Below code is my attempt. Delete it all if you want Driver driver = _context.Drivers.Find(Model.driverID); Vehicle vehicle = _context.Vehicles.Find(Model.vehicleID); Delivery newDelivery = new Delivery(); newDelivery.Answered = true; newDelivery.SourceLatitude = Double.Parse(Model.startLatitude); newDelivery.SourceLongtitude = Double.Parse(Model.startLongitude); newDelivery.DestinationLatitude = Double.Parse(Model.endLatitude); newDelivery.DestinationLongtitude = Double.Parse(Model.endLongitude); newDelivery.Driver = driver; newDelivery.Vehicle = vehicle; newDelivery.Company = null; newDelivery.Quantity = 10; // Testing //newDelivery.Time = DateTime.Parse(orderTime); _context.Deliveries.Add(newDelivery); _context.SaveChanges(); return(new Result(newDelivery.Id)); }
public async Task <ActionResult <Result> > AddDeliveryBySupervisor(AddDeliveryModel Model) { Driver driver = _context.Drivers.Find(Model.driverID); Vehicle vehicle = _context.Vehicles.Find(Model.vehicleID); Delivery newDelivery = new Delivery(); newDelivery.Answered = true; newDelivery.SourceLatitude = Double.Parse(Model.startLatitude); newDelivery.SourceLongtitude = Double.Parse(Model.startLongitude); newDelivery.DestinationLatitude = Double.Parse(Model.endLatitude); newDelivery.DestinationLongtitude = Double.Parse(Model.endLongitude); newDelivery.Driver = driver; newDelivery.Vehicle = vehicle; newDelivery.Company = null; newDelivery.Quantity = (int)Model.quantity; newDelivery.OptimalDistance = (float)Model.optimalDistance; newDelivery.OptimalTime = (int)Model.optimalTime; newDelivery.OptimalFuelConsumption = (float)Model.optimalFuelConsumption; //newDelivery.Time = DateTime.Parse(orderTime); _context.Deliveries.Add(newDelivery); _context.SaveChanges(); return(new Result(newDelivery.Id)); }
public JsonResult AddDeliveryBySupervisor(AddDeliveryModel Model) { // Add new delivery to DB // This action MUST return this new delivery's ID // This parameters are the main ones. Extra ones can be added later if needed (eg quantity, etc.) // Below code is my attempt. Delete it all if you want long newDeliveryID = 100; // whatever Delivery newDelivery = new Delivery(); newDelivery.Answered = true; newDelivery.SourceLatitude = Double.Parse(Model.startLatitude); newDelivery.SourceLongtitude = Double.Parse(Model.startLongitude); newDelivery.DestinationLatitude = Double.Parse(Model.endLatitude); newDelivery.DestinationLongtitude = Double.Parse(Model.endLongitude); newDelivery.Quantity = 10; // Testing //newDelivery.Time = DateTime.Parse(orderTime); newDelivery.Company = _context.Companies.Find((long)7); // Testing newDelivery.Driver = _context.Drivers.Find(Model.driverID); newDelivery.Vehicle = _context.Vehicles.Find(Model.vehicleID); _context.SaveChanges(); // Add delivery to corresponding driver and vehicle _context.Vehicles.Find(Model.vehicleID).Deliveries.Add(newDelivery); _context.Drivers.Find(Model.driverID).Deliveries.Add(newDelivery); _context.SaveChanges(); return(Json(new { Result = newDeliveryID })); }