コード例 #1
0
ファイル: tblTrajectDAO.cs プロジェクト: Joachim8790/VivesTGV
        //geeft plaatsnummer
        public int getPlaatsnummer(tblTraject traject, DateTime datum, byte treinklasse)
        {
            int aantalplaatsen = 0;


            using (var db = new VivesTGVEntities1())
            {
                if (treinklasse == 0)
                {
                    aantalplaatsen = traject.EconomicPlaatsen;
                }
                else if (treinklasse == 1)
                {
                    aantalplaatsen = traject.BusinessPlaatsen;
                }
                Debug.WriteLine("treinklasse: " + treinklasse);

                if (db.tblTreinplaats.Count() != 0)
                {
                    int aantalplaatsenbezet = db.tblTreinplaats.Where(a => a.Treinklasse == treinklasse).Select(v => v.Plaatsnummer).Max();
                    Debug.WriteLine(aantalplaatsenbezet);
                    return(aantalplaatsenbezet + 1);
                }
                else
                {
                    return(1);
                }
            }
        }
コード例 #2
0
ファイル: tblTrajectDAO.cs プロジェクト: Joachim8790/VivesTGV
 //krijg alle tussenlocaties van een traject
 public IEnumerable <string> getStopsByTraject(tblTraject traject)
 {
     using (var db = new VivesTGVEntities1())
     {
         return(db.tblTussenlocatie.Where(c => c.TrajectID == traject.TrajectID).OrderBy(d => d.Volgnummer).Select(e => e.Naam).ToList());
     }
 }
コード例 #3
0
 //krijg alle tussenlocaties van een traject
 public IEnumerable <string> getStopsByTraject(tblTraject traject)
 {
     if (trajectDAO.getTrajectByID(traject.TrajectID) != null)//bestaat traject
     {
         return(trajectDAO.getStopsByTraject(traject));
     }
     else
     {
         throw new Exception("Traject bestaat niet");
     }
 }
コード例 #4
0
ファイル: tblTrajectDAO.cs プロジェクト: Joachim8790/VivesTGV
        //kijkt als er plaatsen vrij zijn
        public bool checkPlaatsvrij(tblTraject traject, DateTime datum, byte treinklasse)
        {
            int    aantalplaatsen = 0;
            double multiplier     = 0;

            if ((traject.Aankomst == 3 || traject.Aankomst == 2) && datum.AddMonths(1) >= new DateTime(DateTime.Today.Year, 12, 25))
            {
                multiplier = 0.3;
            }
            if ((traject.Aankomst == 3 || traject.Aankomst == 4 || traject.Aankomst == 1) && datum >= new DateTime(DateTime.Today.Year, 3, 31) && datum < new DateTime(DateTime.Today.Year, 4, 15))
            {
                multiplier = 0.3;
            }
            using (var db = new VivesTGVEntities1())
            {
                if (treinklasse == 0)
                {
                    aantalplaatsen = traject.EconomicPlaatsen;
                    aantalplaatsen = (int)Math.Floor(aantalplaatsen * (1 + multiplier));
                }
                else if (treinklasse == 1)
                {
                    aantalplaatsen = traject.BusinessPlaatsen;
                    aantalplaatsen = (int)Math.Floor(aantalplaatsen * (1 + multiplier));
                }

                int aantalplaatsenbezet = db.tblTreinplaats.Where(a => a.Treinklasse == treinklasse).Select(v => v.Plaatsnummer).Max();
                int aantalplaatsenvrij  = aantalplaatsen - aantalplaatsenbezet;
                if (aantalplaatsenvrij > 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
コード例 #5
0
        public ActionResult Index()
        {
            var claimsIdentity = User.Identity as ClaimsIdentity;

            if (claimsIdentity != null)
            {
                var userIdClaim = claimsIdentity.Claims
                                  .FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier);

                if (userIdClaim != null)
                {
                    string id = userIdClaim.Value;
                    tblWinkelmandlijnService winkelmandlijnservice = new tblWinkelmandlijnService();
                    tblProductService        productservice        = new tblProductService();
                    tblHotelService          hotelservice          = new tblHotelService();
                    tblTrajectService        trajectservice        = new tblTrajectService();
                    tblStadService           stadservice           = new tblStadService();
                    tblWinkelmandlijn[]      winkelmandlijnen      = winkelmandlijnservice.getWinkelmandlijnenByGebruiker(id).ToArray();
                    WinkelmandViewModel      vm = new WinkelmandViewModel();

                    List <bool>     treinklassen         = new List <bool>();
                    List <int>      treinplaatsen        = new List <int>();
                    List <double>   hotelprijzen         = new List <double>();
                    List <double>   trajectprijzen       = new List <double>();
                    List <string>   vertrek              = new List <string>();
                    List <string>   aankomst             = new List <string>();
                    List <DateTime> hoteldatum           = new List <DateTime>();
                    List <DateTime> trajectdatum         = new List <DateTime>();
                    List <string>   hotelnamen           = new List <string>();
                    List <string>   trajectnamen         = new List <string>();
                    List <int>      hotelID              = new List <int>();
                    List <int>      trajectID            = new List <int>();
                    List <string>   hotelnaam            = new List <string>();
                    List <int>      trajectwinkelmandIDs = new List <int>();
                    List <int>      hotelwinkelmandIDs   = new List <int>();
                    int             plaatsincrement      = 0;

                    for (int i = 0; i < winkelmandlijnen.Count(); i++)
                    {
                        tblProduct product = productservice.getProduct((winkelmandlijnen[i].ProductID));

                        if (productservice.isHotel(product))
                        {
                            hoteldatum.Add(winkelmandlijnen[i].Datum);
                            hotelprijzen.Add(productservice.getPrijs(product));
                            tblHotel hotel = hotelservice.getHotelsByID(product.HotelID.Value);
                            hotelID.Add(hotel.HotelID);
                            hotelnaam.Add(hotel.Naam);
                            hotelnamen.Add(winkelmandlijnen[i].Naam);
                            hotelwinkelmandIDs.Add(winkelmandlijnen[i].WinkelmandlijnID);
                        }
                        else
                        {
                            trajectnamen.Add(winkelmandlijnen[i].Naam);
                            trajectprijzen.Add(productservice.getPrijs(product));
                            trajectdatum.Add(winkelmandlijnen[i].Datum);
                            tblTraject traject = trajectservice.getTrajectByID(product.TrajectID.Value);
                            trajectID.Add(traject.TrajectID);
                            vertrek.Add(stadservice.getStad(traject.Vertrek).Naam);
                            aankomst.Add(stadservice.getStad(traject.Aankomst).Naam);
                            treinplaatsen.Add(trajectservice.getPlaatsnummer(traject, winkelmandlijnen[i].Datum, product.Treinklasse.Value) + plaatsincrement);
                            trajectwinkelmandIDs.Add(winkelmandlijnen[i].WinkelmandlijnID);
                            if (product.Treinklasse.Value == 1)
                            {
                                treinklassen.Add(true);
                            }
                            else
                            {
                                treinklassen.Add(false);
                            }

                            plaatsincrement++;
                        }
                    }
                    vm.trajectvertrek       = vertrek.ToArray();
                    vm.trajectaankomst      = aankomst.ToArray();
                    vm.trajectdatum         = trajectdatum.ToArray();
                    vm.hoteldatum           = hoteldatum.ToArray();
                    vm.trajectenIDs         = trajectID.ToArray();
                    vm.treinplaats          = treinplaatsen.ToArray();
                    vm.hotelprijzen         = hotelprijzen.ToArray();
                    vm.trajectprijzen       = trajectprijzen.ToArray();
                    vm.hotelIDs             = hotelID.ToArray();
                    vm.hotelnaam            = hotelnaam.ToArray();
                    vm.trajectnamen         = trajectnamen.ToArray();
                    vm.hotelnamen           = hotelnamen.ToArray();
                    vm.treinklassen         = treinklassen.ToArray();
                    vm.hotelwinkelmandIDs   = hotelwinkelmandIDs.ToArray();
                    vm.trajectwinkelmandIDs = trajectwinkelmandIDs.ToArray();

                    return(View(vm));
                }
            }

            return(View());
        }
コード例 #6
0
 //geeft plaatsnummer
 public int getPlaatsnummer(tblTraject traject, DateTime datum, byte treinklasse)
 {
     return(trajectDAO.getPlaatsnummer(traject, datum, treinklasse));
 }
コード例 #7
0
 //kijkt als er plaatsen vrij zijn
 public bool checkPlaatsvrij(tblTraject traject, DateTime datum, byte treinklasse)
 {
     return(trajectDAO.checkPlaatsvrij(traject, datum, treinklasse));
 }