Ejemplo n.º 1
0
        public async Task <IHttpActionResult> PostEventWithTicket(EventWithTicket eventWithTicket)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.EventsWithTickets.Add(eventWithTicket);
            await db.SaveChangesAsync();

            // New code:
            // Load Evento
            db.Entry(eventWithTicket).Reference(x => x.City).Load();

            var dto = new EventWithTicketDTO()
            {
                EventWithTicketID = eventWithTicket.EventWithTicketID,
                Name        = eventWithTicket.Name,
                Description = eventWithTicket.Description,
                City        = eventWithTicket.City.CityName,
                Transport   = eventWithTicket.Transport.TransportType,
                EventDate   = eventWithTicket.EventDate,
                Adress      = eventWithTicket.Addres,
                Price       = eventWithTicket.Price,
                MaxTickets  = eventWithTicket.MaxTicket
            };

            return(CreatedAtRoute("DefaultApi", new { id = eventWithTicket.EventWithTicketID }, eventWithTicket));
        }
Ejemplo n.º 2
0
        public IHttpActionResult PostTicket(Ticket ticket)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            EventWithTicket query =
                (from data in db.EventsWithTickets
                 where (data.EventWithTicketID == ticket.EventWithTicketID)
                 select data).SingleOrDefault();

            if (query.MaxTicket > 0)
            {
                try
                {
                    db.Tickets.Add(ticket);
                    query.MaxTicket--;
                    db.SaveChanges();

                    return(CreatedAtRoute("DefaultApi", new { id = ticket.TicketID }, ticket));
                }
                catch {}
            }
            else if (query.MaxTicket == 0)
            {
                query.HasTickets = false; db.SaveChanges();
            }
            return(StatusCode(HttpStatusCode.NoContent));
        }
Ejemplo n.º 3
0
        public IHttpActionResult PutEventWithTicket(int id, EventWithTicket eventWithTicket)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != eventWithTicket.EventWithTicketID)
            {
                return(BadRequest());
            }

            db.Entry(eventWithTicket).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EventWithTicketExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            EventWithTicket eventWithTicket = db.EventsWithTickets.Find(id);

            db.EventsWithTickets.Remove(eventWithTicket);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 5
0
        public IHttpActionResult GetEventWithTicket(int id)
        {
            EventWithTicket eventWithTicket = db.EventsWithTickets.Find(id);

            if (eventWithTicket == null)
            {
                return(NotFound());
            }

            return(Ok(eventWithTicket));
        }
 public ActionResult Edit([Bind(Include = "EventWithTicketID,CityID,TransportID,EventDate,Description,Addres,HasTickets,MaxTicket")] EventWithTicket eventWithTicket)
 {
     if (ModelState.IsValid)
     {
         db.Entry(eventWithTicket).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.CityID      = new SelectList(db.Cities, "CityID", "CityName", eventWithTicket.CityID);
     ViewBag.TransportID = new SelectList(db.Transports, "TransportID", "TransportType", eventWithTicket.TransportID);
     return(View(eventWithTicket));
 }
Ejemplo n.º 7
0
        public IHttpActionResult PostEventWithTicket(EventWithTicket eventWithTicket)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.EventsWithTickets.Add(eventWithTicket);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = eventWithTicket.EventWithTicketID }, eventWithTicket));
        }
        // GET: EventWithTickets/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            EventWithTicket eventWithTicket = db.EventsWithTickets.Find(id);

            if (eventWithTicket == null)
            {
                return(HttpNotFound());
            }
            return(View(eventWithTicket));
        }
Ejemplo n.º 9
0
        public async Task <IHttpActionResult> DeleteEventWithTicket(int id)
        {
            EventWithTicket eventWithTicket = await db.EventsWithTickets.FindAsync(id);

            if (eventWithTicket == null)
            {
                return(NotFound());
            }

            db.EventsWithTickets.Remove(eventWithTicket);
            await db.SaveChangesAsync();

            return(Ok(eventWithTicket));
        }
Ejemplo n.º 10
0
        public IHttpActionResult DeleteEventWithTicket(int id)
        {
            EventWithTicket eventWithTicket = db.EventsWithTickets.Find(id);

            if (eventWithTicket == null)
            {
                return(NotFound());
            }

            db.EventsWithTickets.Remove(eventWithTicket);
            db.SaveChanges();

            return(Ok(eventWithTicket));
        }
        // GET: EventWithTickets/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            EventWithTicket eventWithTicket = db.EventsWithTickets.Find(id);

            if (eventWithTicket == null)
            {
                return(HttpNotFound());
            }
            ViewBag.CityID      = new SelectList(db.Cities, "CityID", "CityName", eventWithTicket.CityID);
            ViewBag.TransportID = new SelectList(db.Transports, "TransportID", "TransportType", eventWithTicket.TransportID);
            return(View(eventWithTicket));
        }
 public ActionResult Create([Bind(Include = "EventWithTicketID,CityID,TransportID,EventDate,Description,Addres,HasTickets,MaxTicket")] EventWithTicket eventWithTicket)
 {
     if (ModelState.IsValid)
     {
         if (eventWithTicket.EventDate >= DateTime.Now)
         {
             db.EventsWithTickets.Add(eventWithTicket);
             db.SaveChanges();
             return(RedirectToAction("Index"));
         }
         return(View("DateError"));
     }
     ViewBag.CityID      = new SelectList(db.Cities, "CityID", "CityName", eventWithTicket.CityID);
     ViewBag.TransportID = new SelectList(db.Transports, "TransportID", "TransportType", eventWithTicket.TransportID);
     return(View(eventWithTicket));
 }
Ejemplo n.º 13
0
        public async Task <IHttpActionResult> PostTicket(Ticket ticket)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            EventWithTicket query =
                (from data in db.EventsWithTickets
                 where (data.EventWithTicketID == ticket.EventWithTicketID)
                 select data).SingleOrDefault();

            if (query.MaxTicket > 0)
            {
                try
                {
                    db.Tickets.Add(ticket);
                    query.MaxTicket--;
                    await db.SaveChangesAsync();

                    db.Entry(ticket).Reference(x => x.Person).Load();
                    var dto = new TicketDTO()
                    {
                        TicketID          = ticket.TicketID,
                        Price             = ticket.Price,
                        EventWithTicketID = ticket.EventWithTicketID,
                        PersonID          = ticket.DNI
                    };

                    return(CreatedAtRoute("DefaultApi", new { id = ticket.TicketID }, ticket));
                }
                catch {}
            }
            else if (query.MaxTicket == 0)
            {
                query.HasTickets = false; db.SaveChanges();
            }
            return(StatusCode(HttpStatusCode.NoContent));
        }