public AddTicketModel prepreateAddTicketModel(int eventId) { AddTicketModel addTicketModel = new AddTicketModel(); addTicketModel.EventId = eventId; List <Ticket> tickets = tRepository.getTicketsByEvent(eventId); foreach (var ticket in tickets) { TicketInventory ticketInventory = tiRepository.getTicketInventoryByTicket(ticket.Id); TicketViewModel ticketViewModel = new TicketViewModel() { Id = ticket.Id, Name = ticket.Name, Price = ticket.Price, DiscountPrice = ticket.DiscountPrice.HasValue?ticket.DiscountPrice.Value:0m, StockQuantity = ticketInventory.StockQuantity.HasValue?ticketInventory.StockQuantity.Value:0, ReservedQuantity = ticketInventory.ReservedQuantity.HasValue?ticketInventory.ReservedQuantity.Value:0 }; addTicketModel.Tickets.Add(ticketViewModel); } return(addTicketModel); }
public TicketInventory saveTicketWithInventory(Ticket ticket, TicketInventory ticketInventory) { tRepository.Add(ticket); tRepository.Complete(); ticketInventory.IdTicket = ticket.Id; tiRepository.Add(ticketInventory); tiRepository.Complete(); ticketInventory.Ticket = ticket; return(ticketInventory); }
public ActionResult DeleteTicket(int ticketId, int eventId) { Ticket ticket = tFactory.tRepository.Get(ticketId); TicketInventory ticketInventory = tFactory.tiRepository.getTicketInventoryByTicket(ticketId); tFactory.tiRepository.Remove(ticketInventory); tFactory.tiRepository.Complete(); tFactory.tRepository.Remove(ticket); tFactory.tRepository.Complete(); return(RedirectToAction("Create4", new { eventId = eventId })); }
public ActionResult Create4(AddTicketModel addTicketModel) { Ticket ticket = new Ticket() { Name = addTicketModel.Name, Price = addTicketModel.Price, DiscountPrice = addTicketModel.DiscountPrice, IdEvent = addTicketModel.EventId }; TicketInventory ticketInventory = new TicketInventory() { ReservedQuantity = 0, StockQuantity = addTicketModel.Quantity }; tFactory.saveTicketWithInventory(ticket, ticketInventory); return(View(tFactory.prepreateAddTicketModel(addTicketModel.EventId))); }
public IPagedList <TicketListModel> prepareListOfTickets(string username, int page = 1) { Organisation organisation = oRepository.GetOrganisationByUsername(username); IPagedList <Event> events = eRepository.GetEventsByOrganisation(organisation.Id, page); List <TicketListModel> eventsList = new List <TicketListModel>(); foreach (var e in events) { TicketListModel ticketListModel = new TicketListModel(); ticketListModel.IdEvent = e.Id; ticketListModel.NameEvent = e.Name; List <Ticket> tickets = tRepository.getTicketsByEvent(e.Id); foreach (var ticket in tickets) { TicketInventory ticketInventory = tiRepository.getTicketInventoryByTicket(ticket.Id); TicketViewModel ticketViewModel = new TicketViewModel() { Id = ticket.Id, Name = ticket.Name, Price = ticket.Price, DiscountPrice = ticket.DiscountPrice.HasValue ? ticket.DiscountPrice.Value : 0m, StockQuantity = ticketInventory.StockQuantity.HasValue ? ticketInventory.StockQuantity.Value : 0, ReservedQuantity = ticketInventory.ReservedQuantity.HasValue ? ticketInventory.ReservedQuantity.Value : 0 }; ticketListModel.Tickets.Add(ticketViewModel); } eventsList.Add(ticketListModel); } IPagedList <TicketListModel> pageEvents = new StaticPagedList <TicketListModel>(eventsList, events.PageNumber, events.PageSize, events.TotalItemCount); return(pageEvents); }