public string UpdateBookingStatus(int id, BookingStatus bookingStatus) { try { Database.Booking booking = _dbContext.Bookings.SingleOrDefault(b => b.Id == id); if (booking == null) { return(null); } if (booking.Status == (byte)BookingStatus.Deleted) { return(null); } booking.Status = (byte)bookingStatus; _dbContext.Entry(booking).State = EntityState.Modified; _dbContext.SaveChanges(); } catch (Exception exception) { return(exception.Message); } return("Booking Status Updated."); }
public string UpdateBooking(int bookingId, DateTime updatedDate) { try { Database.Booking booking = _dbContext.Bookings.SingleOrDefault(b => b.Id == bookingId); if (booking == null) { return($"No booking found for id: { bookingId}"); } if (booking.Status == (byte)BookingStatus.Deleted) { return("This booking is already deleted."); } int bookingCount = _dbContext.Bookings.Where(b => b.Id == bookingId && b.BookingDate == updatedDate && b.Status != (byte)BookingStatus.Deleted).Count(); if (bookingCount != 0) { return("The room is already booked on the specified date."); } booking.BookingDate = updatedDate; _dbContext.Entry(booking).State = EntityState.Modified; _dbContext.SaveChanges(); } catch (Exception exception) { return(exception.Message); } return("Booking Updated."); }
public override IAnswer execute() { Database.FlightRequest fr = new Database.FlightRequest (); Database.PassengerRequest pr = new Database.PassengerRequest (); Database.SeatRequest sr = new Database.SeatRequest (); Database.ClassRequest cr = new Database.ClassRequest (); Database.AirplaneRequest ar = new Database.AirplaneRequest (); List<Database.Class> classes = cr.fetchClassFromName (this.Booking.Seat.SeatClass.Name); if (classes.Count != 1) { return new AnswerAdd ("No (unique) class found with name " + this.Booking.Seat.SeatClass.Name); } int classID = classes [0].ID; List<Database.Flight> flights = fr.fetchFlightFromCodeAndStartDate (code: this.Booking.Flight.Template.Code, startDate: this.Booking.Flight.StartDate); if (flights.Count != 1) { return new AnswerAdd("No (unique) flight found with code " + this.Booking.Flight.Template.Code + " at " + this.Booking.Flight.StartDate); } Database.Flight flight = flights[0]; int flightID = flight.ID; List<Database.Airplane> airplanes = ar.fetchFromID (flight.airplane); int airplaneID = airplanes[0].ID; List<Database.Seat> seats = sr.fetchSeatFromClassNumberAndAirplane (class_: classID, number: this.Booking.Seat.Number, airplane: airplaneID); if (seats.Count != 1) { return new AnswerAdd ("No (unique) seat found with number " + this.Booking.Seat.Number + " from class " + this.Booking.Seat.SeatClass.Name); } int seatID = seats [0].ID; List<Database.Passenger> passengers = pr.fetchPassengerFromName (this.Booking.Passenger.Name); if (passengers.Count != 1) { return new AnswerAdd ("No (unique) passenger found with name " + this.Booking.Passenger.Name); } int passengerID = passengers [0].ID; Database.Booking booking = new Database.Booking (flight: flightID, passenger: passengerID, seat: seatID); AnswerAdd aa = new AnswerAdd (); try { booking.insert(); } catch (Exception e) { aa = new AnswerAdd(e.Message); } return aa; }
public string DeleteBooking(int id) { try { Database.Booking dbBooking = _dbContext.Bookings.SingleOrDefault(b => b.Id == id); if (dbBooking == null) { return(null); } dbBooking.Status = (byte)Database.Booking.BookingStatus.Deleted; _dbContext.Entry(dbBooking).State = EntityState.Modified; _dbContext.SaveChanges(); } catch (Exception exception) { return(exception.Message); } return("Success"); }
public string BookRoom(short roomId, DateTime bookingDate) { var isValidRoomId = _dbContext.Rooms.Where(b => b.Id == roomId).Single(); //check if the room is already booked or not int bookingCount = _dbContext.Bookings.Where(b => b.RoomId == roomId && b.BookingDate == bookingDate && b.Status != (byte)BookingStatus.Deleted).Count(); if (bookingCount != 0) { return("Room is already booked on " + bookingDate); } Database.Booking booking = new Database.Booking(); booking.RoomId = roomId; booking.BookingDate = bookingDate; booking.Status = (byte)Database.Booking.BookingStatus.Optional; _dbContext.Bookings.Add(booking); _dbContext.SaveChanges(); return($"Room Booked Successfully.\nYour Booking ID is: {booking.Id}"); }
public string CreateBooking(Booking model) { try { if (model != null) { Database.Booking entity = new Database.Booking(); var config = new MapperConfiguration(cfg => cfg.CreateMap <Booking, Database.Booking>()); var Mapper = new Mapper(config); entity = Mapper.Map <Database.Booking>(model); entity.BookingDate = DateTime.Parse(entity.BookingDate.ToString()); _dbContext.Bookings.Add(entity); _dbContext.SaveChanges(); return("Successfully Added!"); } return("Model Is Null!"); } catch (Exception ex) { return(ex.Message); } }
public string BookRoom(Booking booking) { var a = _dbContext.Bookings.ToList(); if (a.Count() != 0) { return("Room is booked"); } if (booking != null) { Database.Booking entity = new Database.Booking(); entity.RoomId = booking.RoomId; entity.StautsOfBooking = "Optional"; entity.BookingDate = DateTime.Now; _dbContext.Bookings.Add(entity); _dbContext.SaveChanges(); return("Added succeffuly"); } return("Model is null"); }
// POST Booked the room of hotel for particular date public string Book(Models.Booking booking) { Database.Booking model = new Database.Booking(); model.BookingDate = booking.BookingDate; model.bookingStatus = booking.bookingStatus; model.roomID = booking.roomID; if (context.Bookings.Any(x => x.roomID == model.roomID)) { if (context.Bookings.Any(x => x.roomID == model.roomID && x.BookingDate == model.BookingDate && x.bookingStatus == "definitive ")) { return("Room is alrady booked"); } else { var result = context.Bookings.Add(model); context.SaveChanges(); return("Your room booked successfully"); } } else { return("none"); } }
public Booking GetBooking(int id) { Database.Booking booking = _dbContext.Bookings.Find(id); return(_mapper.Map <Booking>(booking)); }