Beispiel #1
0
        public static void GetJourneys(TicketSearch search)
        {
            string xml;

            if (search.Type == TicketType.BusJourney)
            {
                xml = JourneyParsings.GetJourneys(search);
            }
            else
            {
                xml = JourneyParsings.GetFlights(search);
            }

            JourneysRequest.OnPopulated = (xmlResult) =>
            {
                if (search.Type == TicketType.BusJourney)
                {
                    JourneysRequest.Response = JourneyParsings.ParseJourneys(xmlResult);
                }
                else
                {
                    JourneysRequest.Response = JourneyParsings.ParseFlights(xmlResult);
                }
            };
            Global.OnRequestCalled("JourneyRequests.GetJourneys", new object[] { search });
            if (search.Type == TicketType.BusJourney)
            {
                JourneysRequest.GetResult(xml, ApiAction.SearchBusTicket);
            }
            else
            {
                JourneysRequest.GetResult(xml, ApiAction.SearchAirplaneTicket);
            }
        }
        // GET: Tickets
        public async System.Threading.Tasks.Task <ActionResult> Tickets(int id)
        {
            List <TicketInfo> tickets   = new List <TicketInfo>();
            var          ticketsResults = new List <GogoKit.Models.Response.Listing>();
            TicketInfo   t = new TicketInfo();
            TicketSearch s = new TicketSearch();

            if (id != 0)
            {
                ticketsResults = await s.SearchTicketsAsync(id);
            }

            StringBuilder seat = new StringBuilder();

            foreach (GogoKit.Models.Response.Listing l in ticketsResults)
            {
                seat = new StringBuilder();
                t    = new TicketInfo();
                GetSeatingDetails(seat, l);

                t.ID           = l.Id.Value;
                t.TicketType   = l.TicketType.Type;
                t.NumOfTickets = l.NumberOfTickets.Value;
                t.Seats        = string.IsNullOrEmpty(seat.ToString()) ? "Seat details not available" : seat.ToString();
                t.Price        = l.EstimatedTicketPrice.Display;

                tickets.Add(t);
            }

            return(View(tickets));
        }
        public PagedResponse <TicketDto> Execute(TicketSearch search)
        {
            var query = _context.Tickets.AsQueryable();

            if (search.ProjectionID is int)
            {
                query = query.Where(x => x.ProjectionID == search.ProjectionID);
            }

            if (search.FestivalID is int)
            {
                query = query.Where(x => x.FestivalID == search.FestivalID);
            }

            if (search.MinPrice is decimal)
            {
                query = query.Where(x => x.Price >= search.MinPrice);
            }

            if (search.MaxPrice is decimal)
            {
                query = query.Where(x => x.Price <= search.MaxPrice);
            }

            return(query.Paged <TicketDto, Ticket>(search, _mapper));
        }
Beispiel #4
0
 public TempData()
 {
     Logger.MethodCalled("TempData()");
     TicketSearch = new TicketSearch()
     {
         Passengers = new List <Passenger>()
         {
             new Passenger()
             {
                 Type = PassengerType.Adult
             }
         }
     };
 }
        public static string GetJourneys(TicketSearch search)
        {
            var sb = new StringBuilder();

            sb.Append("<Sefer>");
            sb.Append("<FirmaNo>" + search.Factory.Id + "</FirmaNo>");
            sb.Append("<KalkisAdi>" + search.From.Name + "</KalkisAdi>");
            sb.Append("<VarisAdi>" + search.To.Name + "</VarisAdi>");
            sb.Append("<Tarih>" + search.DepartureDate.ToString("yyyy-MM-dd") + "</Tarih>");
            sb.Append("<AraNoktaGelsin>" + 1 + "</AraNoktaGelsin>");
            sb.Append("<IslemTipi>" + (search.ActionType == ActionType.Buying ? 0 : 1) + "</IslemTipi>"); //
            sb.Append("<YolcuSayisi>" + search.Passengers.Count() + "</YolcuSayisi>");
            sb.Append("</Sefer>");
            return(sb.ToString());
        }
        public IEnumerable <GetTicketDto> Execute(TicketSearch request)
        {
            var query = context.Tickets.Include(x => x.Comments).AsQueryable();

            ICollection <Comment> comments = query.First().Comments;

            if (request.Title != null)
            {
                query = query.Where(x => x.Title.ToLower().Contains(request.Title.ToLower()));
            }

            if (request.Priority != null)
            {
                query = query.Where(x => (int)x.Priority == request.Priority);
            }

            if (request.Status != null)
            {
                query = query.Where(x => (int)x.Status == request.Status);
            }

            if (request.Type != null)
            {
                query = query.Where(x => (int)x.Type == request.Type);
            }

            if (request.Issuer != null)
            {
                query = query.Where(x => x.IssuerId == request.Issuer);
            }

            if (request.Developer != null)
            {
                query = query.Where(x => x.IssuerId == request.Developer);
            }

            if (request.OnlyActive != null)
            {
                if (request.OnlyActive == true)
                {
                    query = query.Where(x => x.DeletedAt == null);
                }
            }

            query = query.SkipItems(request.Page, request.ItemsPerPage);

            return(query.Select(x => _mapper.Map <Ticket, GetTicketDto>(x)).ToList());
        }
Beispiel #7
0
 public virtual ActionResult Index(string find)
 {
     try
     {
         if (!string.IsNullOrEmpty(find))
         {
             string        searchParsed;
             SearchResults searchResults = new SearchResults();
             TicketSearch  ticketSearch  = new TicketSearch();
             searchResults.searchResultList = Search.SearchIndex(Tickets, find, out searchParsed);
             searchResults.searchResults    = ticketSearch.searchForTickets(searchResults.searchResultList, searchParsed, true, this);
             ViewData.Add("searchPhrase", searchParsed);
             ViewData.Add("formatForSearch", true);
             ViewData.Add("searchResults", searchResults.searchResults);
         }
     }
     catch (Exception e) { ViewData.Add("searchPhrase", e); }
     return(View());
 }
Beispiel #8
0
        public void InitSavedSearch()
        {
            Logger.MethodCalled("SavedData.InitSavedSearch()");
            BusSearch = new TicketSearch()
            {
                From = new Station()
                {
                    Name = "İSTANBUL", Type = StationType.Bus
                },
                To = new Station()
                {
                    Name = "ANKARA", Type = StationType.Bus
                },
                DepartureDate = DateTime.Now,
                Type          = TicketType.BusJourney
            };

            AirplaneSearch = new TicketSearch()
            {
                From = new Station()
                {
                    Code = "IST", City = "İstanbul", Name = "Atatürk", Country = "Türkiye", IsInternational = false, Type = StationType.Airplane
                },
                To = new Station()
                {
                    Code = "ESB", City = "Ankara", Name = "Esenboğa", Country = "Türkiye", IsInternational = false, Type = StationType.Airplane
                },
                DepartureDate = DateTime.Now,
                JourneyType   = JourneyType.OneWay,
                Type          = TicketType.AirplaneJourney,
                ReturnDate    = DateTime.Now.AddDays(2),
                Passengers    = new List <Passenger>()
                {
                    new Passenger()
                    {
                        Type = PassengerType.Adult
                    }
                }
            };
        }
        public static string GetFlights(TicketSearch search)
        {
            var sb = new StringBuilder();

            sb.Append("<Sefer>");
            sb.Append("<FirmaNo>" + (search.Type == TicketType.InternationalJourney ? 1100 : 1000) + "</FirmaNo>");
            sb.Append("<KalkisAdi>" + search.From.Code + "</KalkisAdi>");
            sb.Append("<VarisAdi>" + search.To.Code + "</VarisAdi>");
            sb.Append("<Tarih>" + search.DepartureDate.ToString("yyyy-MM-dd") + "</Tarih>");
            if (search.JourneyType == JourneyType.RoundTrip)
            {
                sb.Append("<DonusTarih>" + search.ReturnDate.ToString("yyyy-MM-dd") + "</DonusTarih>");
                isRoundtrip = true;
            }

            if (search.Type == TicketType.InternationalJourney)
            {
                isInternational = true;
            }
            else
            {
                isInternational = false;
            }

            sb.Append("<SeyahatTipi>" + (search.JourneyType == JourneyType.OneWay ? 1 : 2) + "</SeyahatTipi>");
            sb.Append("<IslemTipi>" + (search.ActionType == ActionType.Reservation ? 1 : 0) + "</IslemTipi>");
            sb.Append("<YetiskinSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Adult).Count() + "</YetiskinSayi>");
            sb.Append("<CocukSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Child).Count() + "</CocukSayi>");
            sb.Append("<BebekSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Baby).Count() + "</BebekSayi>");
            sb.Append("<OgrenciSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Student).Count() + "</OgrenciSayi>");
            sb.Append("<YasliSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Infant).Count() + "</YasliSayi>");
            sb.Append("<AskerSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Military).Count() + "</AskerSayi>");
            sb.Append("<GencSayi>" + search.Passengers.Where(x => x.Type == PassengerType.Teenager).Count() + "</GencSayi>");
            sb.Append("</Sefer>");
            return(sb.ToString());
        }
        public IActionResult Get([FromQuery] TicketSearch search, [FromServices] IGetTicketsQuery query)
        {
            IEnumerable <GetTicketDto> tickets = _useCaseExecutor.ExecuteQuery(query, search);

            return(Ok(tickets));
        }
 public IActionResult Get([FromQuery] TicketSearch search, [FromServices] IGetTicketsQuery query)
 {
     return(Ok(executor.ExecuteQuery(query, search)));
 }