public void bookFlight(Flight flight, string type) { var flightOrder = new FlightOrder(); flightOrder.arrPlace = flight.arrPlace; flightOrder.arrTime = flight.arrTime; flightOrder.depPlace = flight.depPlace; flightOrder.depTime = flight.depTime; flightOrder.date = flight.date; flightOrder.flightNumber = flight.flightNumber; switch (type) { case "business": flightOrder.price = flight.businessPrice; break; default: flightOrder.price = flight.economyPrice; break; } flightOrder.user = Session.currentUser; Database.add(flightOrder); getFlightOrdersAsync(); }
public bool AddFlightOrder(FlightOrder flightOrder) { int rowsEffected = -1; using (var context = new DataContext(DataContext.ops.dbOptions)) { User user = context.User.Where(theUser => theUser.UserId == flightOrder.User.UserId).SingleOrDefault(); Flight flight = context.Flight.Where(theFlight => theFlight.FlightId == flightOrder.Flight.FlightId).SingleOrDefault(); FlightLuggage flightLuggage = context.FlightLuggage.Where(theFlightLuggage => theFlightLuggage.FlightLuggageId == flightOrder.FlightLuggage.FlightLuggageId).SingleOrDefault(); Seat seat = context.Seat.Where(theSeat => theSeat.SeatId == flightOrder.Seat.SeatId).SingleOrDefault(); FlightTicket flightTicket = context.FlightTicket.Where(theFlightTicket => theFlightTicket.FlightTicketId == flightOrder.FlightTicket.FlightTicketId).SingleOrDefault(); flightOrder.User = user; flightOrder.Flight = flight; flightOrder.FlightLuggage = flightLuggage; flightOrder.Seat = seat; flightOrder.FlightTicket = flightTicket; context.FlightOrder.Add(flightOrder); rowsEffected = context.SaveChanges(); if (rowsEffected > 0) { return(true); } } return(false); }
public Holder <FlightOrder> OrderFlight(FlightOrder flightOrder) { flightOrder.FlightLuggage = _airlineDatabase.GetFlightLuggage(flightOrder.FlightLuggage.FlightLuggageId); /*_airlineDatabase.AddTicket(flightOrder.FlightTicket); * * if (ticket != null) { } * * else * return CheckFlightOrder(null, 400, "Unable to add ticket to database"); */ flightOrder.Seat = _airlineDatabase.EditSeat(flightOrder.Seat); if (!_airlineDatabase.AddFlightOrder(flightOrder)) { return(CheckFlightOrder(null, 400, "Unable to add flight order")); } if (_airlineDatabase.EditSeat(flightOrder.Seat) == null) { return(CheckFlightOrder(null, 400, "Unable to add edit seat")); } return(CheckFlightOrder(flightOrder, 200, "")); }
public static ViewFlightOrderVM returnFlight(Order order) { ViewFlightOrderVM ovm = new ViewFlightOrderVM(); DataLayer dl = new DataLayer(); ovm.invoice = order.InvoiceNumber; ovm.creditCardNumber = order.CreditCard; FlightOrder flightorder = (from x in dl.flightOrders where x.InvoiceID == ovm.invoice select x).ToList <FlightOrder>().FirstOrDefault(); ovm.ArrivalLocation = flightorder.ArrivalLocation; ovm.DetartureLocation = flightorder.DepartureLocation; ovm.DetartureDate = flightorder.DepartureDate; ovm.ReturnDate = flightorder.ReturnDate; ovm.orderDate = order.OrderDate; ovm.status = order.Status; ovm.email = order.CustomerEmail; ovm.outbound = flightorder.Outbound_FlightNumber; ovm.inbound = flightorder.Inbound_FlightNumber; Customer cust = (from x in dl.customers where x.Email == ovm.email select x).ToList <Customer>().FirstOrDefault(); ovm.customerName = cust.FullName; ovm.customerId = cust.ID; ovm.totalPrice = order.TotalPayment; ovm.NumBabies = flightorder.NumberOfBabies; ovm.NumChild = flightorder.NumberOfChildren; ovm.NumYoung = flightorder.NumberOfYoungsters; ovm.NumAdult = flightorder.NumberOfAdults; ovm.NumPensioner = flightorder.NumberOfPensioners; ovm.PriceBabies = flightorder.PricePerBaby; ovm.PriceChild = flightorder.PricePerChild; ovm.PriceYoung = flightorder.PricePerYoungster; ovm.PriceAdult = flightorder.PricePerAdult; ovm.PricePensioner = flightorder.PricePerPensioner; ovm.Airline = flightorder.Airline; return(ovm); }
public Holder <FlightOrder> DeleteFlightOrder(FlightOrder flightOrder) { if (!_airlineDatabase.FreeSeat(flightOrder.Seat)) { return(CheckFlightOrder(flightOrder, 400, "Server error while trying to free the seat")); } return(_airlineDatabase.DeleteFlightOrder(flightOrder) ? CheckFlightOrder(flightOrder, 200, "") : CheckFlightOrder(flightOrder, 400, "Server error while trying to delete flightOrder")); }
public bool DeleteFlightOrder(FlightOrder flightOrder) { int rowsEffected = -1; using (var context = new DataContext(DataContext.ops.dbOptions)) { flightOrder = context.FlightOrder.Where(theFlightOrder => theFlightOrder.FlightOrderId == flightOrder.FlightOrderId).FirstOrDefault(); context.FlightOrder.Remove(flightOrder); rowsEffected = context.SaveChanges(); } return(rowsEffected > 0 ? true : false); }
public bool ConfirmFlight(FlightOrder flightOrder) { int rowsEffected = -1; using (var context = new DataContext(DataContext.ops.dbOptions)) { flightOrder = context.FlightOrder.Where(theFlightOrder => theFlightOrder.FlightOrderId == flightOrder.FlightOrderId).SingleOrDefault(); flightOrder.Confirmed = true; context.Update(flightOrder); rowsEffected = context.SaveChanges(); } return(rowsEffected > 0 ? true : false); }
public async Task <IActionResult> Order(int[] flight_id, int[] quantity, string[] dest_details, string[] departure) { var tupleList = new List <Tuple <string, string, int> > { }; for (int i = 0; i < flight_id.Length; i++) { if (!FlightExists(flight_id[i])) { ViewData["Message"] = tupleList; return(View()); } } var user = _Userscontext.Users.FirstOrDefault(obj => obj.UserName == User.Identity.Name); var passanger = _context.Passengers.FirstOrDefault(obj => obj.ApplicationUserID == user.Id); for (int i = 0; i < flight_id.Length; i++) { if (quantity[i] <= 0) { continue; } FlightOrder fo = new FlightOrder { FlightID = flight_id[i], PassengerID = passanger.ID, Quantity = quantity[i] }; _context.FlightOrders.Add(fo); tupleList.Add(Tuple.Create(dest_details[i], departure[i], quantity[i])); } await _context.SaveChangesAsync(); ViewData["Message"] = tupleList; return(View()); }
private static void Main() { var output = new StringBuilder(); int remainingTestCases = FastIO.ReadNonNegativeInt(); while (remainingTestCases-- > 0) { int orderCount = FastIO.ReadNonNegativeInt(); var orders = new FlightOrder[orderCount]; for (int o = 0; o < orderCount; ++o) { orders[o] = new FlightOrder( startTime: FastIO.ReadNonNegativeInt(), duration: FastIO.ReadNonNegativeInt(), profit: FastIO.ReadNonNegativeInt()); } output.Append( RENT.Solve(orderCount, orders)); output.AppendLine(); } Console.Write(output); }
public Holder <FlightOrder> DeleteFlightOrder([FromBody] FlightOrder flightOrder) { Holder <FlightOrder> retVal = _airlineBusiness.DeleteFlightOrder(flightOrder); return(retVal); }
public Holder <FlightOrder> OrderFlight([FromBody] FlightOrder flightOrder) { Holder <FlightOrder> retVal = _airlineBusiness.OrderFlight(flightOrder); return(retVal); }
public ActionResult SubmitOrder(FlightCheckoutVM obj) { DataLayer dl = new DataLayer(); DateTime today = DateTime.Today; string date = today.ToString("dd/MM/yyyy").Replace("/", "."); double totalFee = Convert.ToDouble(obj.totalFee.Replace("$", "")); bool sameCustomer = false; // first check if customer already exists in table List <Customer> customerFromDB = (from u in dl.customers where u.Email.ToLower() == obj.email.ToLower() select u).ToList <Customer>(); if (customerFromDB.Count != 0) // if customer already exists { // check if the input is the same as the customer data if (customerFromDB[0].FullName != obj.customerName || customerFromDB[0].ID != obj.id) { TempData["error"] = "This email address already exist in our records with different name and/or different id!"; return(View("FlightCheckout", obj)); } else if (customerFromDB[0].Location != obj.address || customerFromDB[0].PhoneNumber != obj.phone) { // update: delete this row and later add new customer row dl.customers.Remove(customerFromDB[0]); dl.SaveChanges(); } // else: same row - no need to update else { sameCustomer = true; } } // --------------------- create object and save to table 1: Order Order order = new Order() { CreditCard = obj.creditCard, CustomerEmail = obj.email, OrderDate = date, Status = 0, TotalPayment = totalFee, Type = "Flight", OrderDestination = obj.destCountry, }; dl.orders.Add(order); // adding in memory and not to DB // dl.SaveChanges(); int INVOICE = order.InvoiceNumber; // --------------------- create object and save to table 2: FlightOrder FlightOrder flightOrder = new FlightOrder() { InvoiceID = INVOICE, DepartureLocation = obj.departureLocation, ArrivalLocation = obj.returnLocation, DepartureDate = obj.departureDate, ReturnDate = obj.returnDate, Outbound_FlightNumber = int.Parse(obj.departureFlightNumber), Inbound_FlightNumber = int.Parse(obj.returnFlightNumber), Airline = obj.airline, NumberOfBabies = obj.babies, NumberOfChildren = obj.children, NumberOfYoungsters = obj.youngsters, NumberOfAdults = obj.adults, NumberOfPensioners = obj.pensioners, PricePerBaby = double.Parse(obj.price_babies), PricePerChild = double.Parse(obj.price_children), PricePerYoungster = double.Parse(obj.price_youngsters), PricePerAdult = double.Parse(obj.price_adults), PricePerPensioner = double.Parse(obj.price_pensioners), }; dl.flightOrders.Add(flightOrder); // adding in memory and not to DB // // --------------------- create object and save to table 3: Customer if (!sameCustomer) { Customer customer = new Customer() { Email = obj.email, FullName = obj.customerName, Location = obj.location, ID = obj.id, PhoneNumber = obj.phone }; dl.customers.Add(customer); // adding in memory and not to DB // } dl.SaveChanges(); // go to recipt return(RedirectToAction("ViewOrderReceipt", "Support", new { invoice = INVOICE })); }
public void cancelFlight(FlightOrder flightOrder) { Database.remove(flightOrder, flightOrdersSession); getFlightOrdersAsync(); }
Holder <FlightOrder> CheckFlightOrder(FlightOrder flightOrder, int errorCode, string description) => errorCode == 200 ? Holder <FlightOrder> .Success(flightOrder) : Holder <FlightOrder> .Fail(errorCode, description);
public Holder <FlightOrder> ConfirmFlight(FlightOrder flightOrder) { return(_airlineDatabase.ConfirmFlight(flightOrder) ? CheckFlightOrder(flightOrder, 200, "") : CheckFlightOrder(flightOrder, 400, "Error while trying to confirm flight")); }