Esempio n. 1
0
 public bool IsEmptyFilter(FilterMain filter)
 {
     if (string.IsNullOrEmpty(filter.StartingPoint) || string.IsNullOrEmpty(filter.TermitationPoint) || filter.ServiceClass == null || filter.Date == new DateTime())
     {
         return(true);
     }
     return(false);
 }
Esempio n. 2
0
        public IActionResult Search(FilterMain filterMain)
        {
            SearchViewModel model = new SearchViewModel();

            if (model.ServiceClass == null)
            {
                model.ServiceClass = new SearchService(db).GetServiceClasses();
            }

            //if (new FilterHandler().IsEmptyFilter(filterMain) && !(new FilterHandler().IsEmptyFilter(oldFilterMain)))
            //{
            //    model.FilterMain = oldFilterMain;
            //}
            //else
            //{
            model.FilterMain = filterMain;
            //    oldFilterMain = model.FilterMain;
            //}

            //if (new FilterHandler().IsEmptyFilter(filterCustom) && !(new FilterHandler().IsEmptyFilter(oldFilterCustom)))
            //{
            //    model.FilterCustom = oldFilterCustom;
            //}
            //else
            //{
            //    model.FilterCustom = filterCustom;
            //    oldFilterCustom = filterCustom;
            //}

            //if (!(new FilterHandler().IsEmptyFilter(model.FilterMain)))
            //{
            model.Flights = new SearchService(db).GetSearchViewModel(filterMain);
            //}

            return(View(model));
        }
Esempio n. 3
0
        public void TypecheckInt_geeft_false_bij_string()
        {
            bool b = FilterMain.typeCheckInt("a");

            Assert.AreEqual(b, false);
        }
Esempio n. 4
0
        public void Filterstring_test()
        {
            string s = FilterMain.FilterString("a");

            Assert.AreEqual(s, "a");
        }
Esempio n. 5
0
        public IQueryable <FlightByFilter> GetSearchViewModel(FilterMain filter)
        {
            try
            {
                if (!(new FilterHandler().IsEmptyFilter(filter)))
                {
                    var result = (from f in db.Flights
                                  join fr in db.Flight_Rates on f.Id equals fr.FlightId
                                  join r in db.Rates on fr.RateId equals r.Id
                                  join a in db.Aircrafts on f.AircraftId equals a.Id
                                  join am in db.AircraftModels on a.ModelId equals am.Id
                                  join airl in db.Airlines on f.AirlineId equals airl.Id
                                  join wp1 in db.Waypoints on f.StartingPointId equals wp1.Id
                                  join wp2 in db.Waypoints on f.TermitationPointId equals wp2.Id
                                  where filter.ServiceClass.Contains(r.ServiceClass) &
                                  EF.Functions.Like(f.StartingPoint.City, "%" + filter.StartingPoint + "%") &
                                  EF.Functions.Like(f.TermitationPoint.City, "%" + filter.TermitationPoint + "%") &
                                  f.StartingPoint.DateTime.Date == filter.Date

                                  select new FlightByFilter
                    {
                        FlightId = f.Id,
                        RateId = r.Id,
                        Aircraft = a,
                        AircraftModel = am.Model,
                        AirlineId = airl.Id,
                        AirlineName = airl.Name,
                        Name = r.Name,
                        Cost = r.Cost,
                        BaggageDimensions = r.BaggageDimensions,
                        Cancellble = r.Cancellble,
                        Returnable = r.Returnable,
                        ServiceClass = r.ServiceClass,
                        StartingPoint = wp1,
                        TermitationPoint = wp2,
                        LeftPlaces = (from sc in db.Salon_ServiceClasses
                                      where a.Id == f.AircraftId
                                      select sc.CountSeating).First()
                                     -
                                     (from t in db.Tickets
                                      where t.Rate.ServiceClass == r.ServiceClass
                                      select t.Id).Count()
                    });
                    return(result);
                }
                else
                {
                    var result = (from f in db.Flights
                                  join fr in db.Flight_Rates on f.Id equals fr.FlightId
                                  join r in db.Rates on fr.RateId equals r.Id
                                  join a in db.Aircrafts on f.AircraftId equals a.Id
                                  join am in db.AircraftModels on a.ModelId equals am.Id
                                  join airl in db.Airlines on f.AirlineId equals airl.Id
                                  join wp1 in db.Waypoints on f.StartingPointId equals wp1.Id
                                  join wp2 in db.Waypoints on f.TermitationPointId equals wp2.Id

                                  select new FlightByFilter
                    {
                        FlightId = f.Id,
                        RateId = r.Id,
                        Aircraft = a,
                        AircraftModel = am.Model,
                        AirlineId = airl.Id,
                        AirlineName = airl.Name,
                        Name = r.Name,
                        Cost = r.Cost,
                        BaggageDimensions = r.BaggageDimensions,
                        Cancellble = r.Cancellble,
                        Returnable = r.Returnable,
                        ServiceClass = r.ServiceClass,
                        StartingPoint = wp1,
                        TermitationPoint = wp2,
                        LeftPlaces = (from sc in db.Salon_ServiceClasses
                                      where a.Id == f.AircraftId
                                      select sc.CountSeating).First()
                                     -
                                     (from t in db.Tickets
                                      where t.Rate.ServiceClass == r.ServiceClass
                                      select t.Id).Count()
                    });
                    return(result);
                }
            }
            catch (Exception ex)
            {
                return(null);
            }
        }