Beispiel #1
0
 public Location(RideCreateForm form)
 {
     Longitude    = form.Longitude;
     Latitude     = form.Latitude;
     Street       = form.Street;
     StreetNumber = form.StreetNumber;
     City         = form.City;
     PostalCode   = form.PostalCode;
 }
Beispiel #2
0
 public Location(RideCreateForm r)
 {
     Latitude     = r.Latitude;
     Longitude    = r.Longitude;
     Street       = r.Street;
     StreetNumber = r.StreetNumber;
     City         = r.City;
     PostalCode   = r.PostalCode;
 }
Beispiel #3
0
        public ActionResult Create(RideCreateForm form)
        {
            var user = (ApplicationUser)Session["User"];

            if (user == null)
            {
                return(RedirectToAction("SignIn", "Login"));
            }

            if (user.Role != UserRole.Dispatcher)
            {
                return(new HttpUnauthorizedResult());
            }

            if (!ModelState.IsValid)
            {
                return(View("Create", form));
            }

            var dbUser = db.ApplicationUsers.SingleOrDefault(u => u.Id == user.Id);

            if (dbUser == null)
            {
                return(HttpNotFound());
            }

            var location = new Location(form);
            var driver   = db.ApplicationUsers.SingleOrDefault(u => u.Id == form.DriverId);

            if (driver == null)
            {
                return(HttpNotFound());
            }
            var ride = new Ride(location, dbUser, form.VehicleType, driver);

            driver.IsDriverBusy = true;
            db.Rides.Add(ride);
            db.SaveChanges();

            return(RedirectToAction("Home", "Home"));
        }