Ejemplo n.º 1
0
        public IActionResult OnPostDone()
        {
            var strPassengers = TempData["Passengers"] as string;
            var passengers    = System.Text.Json.JsonSerializer.Deserialize <List <Passenger> >(strPassengers);

            var strChosenService = TempData["ChosenService"] as string;
            var chosenService    = System.Text.Json.JsonSerializer.Deserialize <Model.FlightService>(strChosenService);

            var strBillBaggage = TempData["BillBaggage"] as string;
            var billBaggage    = JsonConvert.DeserializeObject <List <BaggagePrice> >(strBillBaggage);

            var strPriceInfo = TempData["PriceInfo"] as string;
            var priceInfo    = System.Text.Json.JsonSerializer.Deserialize <PriceInfo>(strPriceInfo);

            OTADBContext.InsertBookedFlightService(chosenService.FsId, DateTime.Now + "");

            var bookedFlightService = OTADBContext.GetNewBookedFlightService();

            OTADBContext.InsertBilledBookedFlightService(bookedFlightService.BookingId, priceInfo.Method, priceInfo.TotalPrice);

            passengers.ForEach(passenger =>
            {
                OTADBContext.InsertFlightServicePassenger(
                    passenger.GivenName,
                    passenger.MiddleName,
                    passenger.Surname,
                    passenger.Gender,
                    passenger.BirthDate,
                    passenger.PassportOrIDNo,
                    passenger.PassportOrIDExpiryDate,
                    passenger.Email,
                    passenger.MobileNo);

                var newPassenger = OTADBContext.GetNewFlightServicePassenger();

                OTADBContext.InsertBaggageInformation(
                    newPassenger.PassengerId,
                    passenger.CabinBagCount,
                    passenger.CheckedBagCount);

                var newBag = OTADBContext.GetNewBaggageInformation();

                var baggagePrice = billBaggage.Find(b => b.passenger == passenger);

                OTADBContext.InsertBillBaggage(
                    newBag.BiId,
                    baggagePrice.Cabin,
                    baggagePrice.Checked);
            });

            return(RedirectToPage("landingpage"));
        }
        public IActionResult OnPostBook(int FS_ID)
        {
            // Gets the query from either the landing page or the second page.
            // The NOP abbreviation in the identifiers means number of passenger.
            var strNumberOfPassenger = TempData.Peek("NumberOfPassenger") as string;
            var NumberOfPassenger    = JsonSerializer.Deserialize <NumberOfPassenger>(strNumberOfPassenger);

            // Gets the chosen service in the DB using PK.
            var chosenService = OTADBContext.GetFlightService(FS_ID);

            var passengersService = new PassengersService();

            passengersService.NumberOfPassenger = NumberOfPassenger;
            passengersService.ChosenService     = chosenService;

            TempData["PassengersService"] = JsonSerializer.Serialize(passengersService);

            return(RedirectToPage("ThirdProcess", "Form"));
        }
 public SecondProcessPageModel(OTADBContext context)
 {
     this._context = context;
 }
Ejemplo n.º 4
0
 public FourthProcessPageModel(OTADBContext context)
 {
     this._context = context;
 }
 public LandingPagePageModel(OTADBContext context)
 {
     this._context = context;
 }