예제 #1
0
 // POST api/Viaje
 public HttpResponseMessage PostViaje(Viaje viaje)
 {
     viaje.mac = viaje.mac.ToUpper();
     Dispositivo dispositivo = db.Dispositivo.Where(x => x.mac == viaje.mac).FirstOrDefault();
     if (dispositivo == null)
     {
         dispositivo = new Dispositivo() { mac = viaje.mac };
         db.Dispositivo.Add(dispositivo);
         db.SaveChanges();
     }
     viaje.iddispositivo = dispositivo.iddispositivo;
     viaje.horainicio = DateTime.Now;
     if (ModelState.IsValid)
     {
         db.Viaje.Add(viaje);
         db.SaveChanges();
         Usuario usuario = db.Usuario.Find(Usuario.ADMINISTRADOR);
         usuario.viajes.Add(viaje);
         db.Entry(usuario).State = EntityState.Modified;
         db.SaveChanges();
         HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, viaje);
         response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = viaje.idviaje }));
         return response;
     }
     else
         return Request.CreateResponse(HttpStatusCode.BadRequest);
 }
예제 #2
0
        public ActionResult Create(Viaje viaje)
        {
            if (ModelState.IsValid)
            {
                db.Viaje.Add(viaje);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            ViewBag.iddispositivo = new SelectList(db.Dispositivo, "iddispositivo", "mac", viaje.iddispositivo);
            ViewBag.idvehiculo = new SelectList(db.Vehiculo, "idvehiculo", "placa", viaje.idvehiculo);
            return View(viaje);
        }
예제 #3
0
 public ActionResult Edit(Viaje viaje)
 {
     if (ModelState.IsValid)
     {
         db.Entry(viaje).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("Index");
     }
     ViewBag.iddispositivo = new SelectList(db.Dispositivo, "iddispositivo", "mac", viaje.iddispositivo);
     ViewBag.idvehiculo = new SelectList(db.Vehiculo, "idvehiculo", "placa", viaje.idvehiculo);
     return View(viaje);
 }
예제 #4
0
        // PUT api/Viaje/5
        public HttpResponseMessage PutViaje(int id, Viaje viaje)
        {
            if (ModelState.IsValid && id == viaje.idviaje)
            {
                db.Entry(viaje).State = EntityState.Modified;

                try
                {
                    db.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    return Request.CreateResponse(HttpStatusCode.NotFound);
                }

                return Request.CreateResponse(HttpStatusCode.OK);
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }
        }