Пример #1
0
        private Booking SetupBookingEntityFromRequest(TicketDetailModel model)
        {
            var ticket = new Booking
                         {
                             ID = model.ID,
                             BaseFare = model.BaseFare,
                             CareOf = model.CareOf,
                             ContactNumber = model.ContactNumber,
                             CorporateClient = model.CorporateClient,
                             CustomerName = model.CustomerName,
                             CustomerType = (CustomerTypeEnum)model.CustomerType,
                             Email = model.Email,
                             InvoiceNumber = model.InvoiceNumber,
                             IsActive = true, //ToDo: need it to come from UI since this function is used for both Create and update
                             LastModifiedBy = User.Identity.Name,
                             QuotedFare = model.QuotedFare,
                             Tax = model.Tax,
                             AddedTime = DateTime.UtcNow,
                             IssueDate = System.DateTime.Now,
                             DueDate = System.DateTime.Now
                         };

            //  List<Itinerary> itineraryies = new List<Itinerary>();
            foreach (ItineraryDetailModel itinerary in model.Itineraries)
            {
                Itinerary tempItinerary = new Itinerary()
                                          {
                                              ID = itinerary.ID,
                                              ArrTime = itinerary.ArrTime,
                                              Carrier = itinerary.Carrier,
                                              DateIsOpen = itinerary.DateIsOpen,
                                              DepTime = itinerary.DepTime,
                                              FlightNo = itinerary.FlightNo,
                                              From = itinerary.From,
                                              IsActive = true, //ToDo: need it to come from UI since this function is used for both Create and update
                                              To = itinerary.To,
                                              Class = ItineraryClassEnum.Business,
                                              Status = ItineraryStatusEnum.Booked,
                                              Date = String.IsNullOrEmpty(itinerary.Date) ? (DateTime?)null : DateTime.ParseExact(itinerary.Date, "dd/MM/yyyy", null),
                                          };
                ticket.Itinerary.Add(tempItinerary);
            }

            // List<PassengerInfo> passengerInfo = new List<PassengerInfo>();
            foreach (PassengersDetailModel pass in model.Passengers)
            {
                PassengerInfo tempPassenger = new PassengerInfo()
                                              {
                                                  ID = pass.ID,
                                                  AddedBy = User.Identity.Name, // Updated with user name
                                                  AddedTime = System.DateTime.UtcNow,
                                                  FirstName = pass.FirstName,
                                                  IsActive = true, //ToDo: need it to come from UI since this function is used for both Create and update
                                                  Nationality = pass.Nationality,
                                                  PassportNo = pass.PassportNo,
                                                  SecondName = pass.SecondName,
                                                  BookingId = ticket.ID,
                                                  Type = pass.Type,
                                              };
                ticket.Passengers.Add(tempPassenger);
            }
            return ticket;
        }
Пример #2
0
 private Booking UpdateNewBooking(Booking booking, ITicketRepository ticketRepository)
 {
     try
     {
         var ticketResult = ticketRepository.Update(booking);
         return ticketResult;
     }
     catch (NullReferenceException ex)
     {
         System.Console.WriteLine("Processor Usage" + ex.Message);
     }
     return null;
 }
Пример #3
0
        private TicketDetailModel ConvertBookingToTicketDetailModel(Booking booking)
        {
            var ticketDetailModel = ClientObjectBase.Container.GetExportedValue<TicketDetailModel>();

            ticketDetailModel.ID = booking.ID;
            ticketDetailModel.InvoiceNumber = booking.InvoiceNumber;
            ticketDetailModel.CustomerType = (int)booking.CustomerType;
            ticketDetailModel.IssueDate = booking.IssueDate.ToString();
            ticketDetailModel.CareOf = booking.CareOf;
            ticketDetailModel.CorporateClient = booking.CorporateClient;
            ticketDetailModel.CustomerName = booking.CustomerName;
            ticketDetailModel.ContactNumber = booking.ContactNumber;
            ticketDetailModel.Email = booking.Email;
            ticketDetailModel.BaseFare = booking.BaseFare;
            ticketDetailModel.Tax = booking.Tax;
            ticketDetailModel.QuotedFare = booking.QuotedFare;
            ticketDetailModel.Status = (int)booking.Status;
            ticketDetailModel.ModeOfIssue = (int)booking.ModeOfIssue;
            ticketDetailModel.DueDate = booking.DueDate.ToString("dd/MM/yyyy");

            foreach (var bookingItinerary in booking.Itinerary)
            {
                var itinerary = ClientObjectBase.Container.GetExportedValue<ItineraryDetailModel>();
                itinerary.ID = bookingItinerary.ID;
                itinerary.BookingId = bookingItinerary.BookingId;
                itinerary.Date = bookingItinerary.Date.ToString();
                itinerary.DateIsOpen = bookingItinerary.DateIsOpen;
                itinerary.From = bookingItinerary.From;
                itinerary.To = bookingItinerary.To;
                itinerary.Carrier = bookingItinerary.Carrier;
                itinerary.FlightNo = bookingItinerary.FlightNo;
                itinerary.DepTime = bookingItinerary.DepTime;
                itinerary.ArrTime = bookingItinerary.ArrTime;
                itinerary.Status = (int)bookingItinerary.Status;
                itinerary.Class = (int)bookingItinerary.Class;
                itinerary.IsActive = bookingItinerary.IsActive;
                ticketDetailModel.Itineraries.Add(itinerary);
            }
            foreach (var bookingPassenger in booking.Passengers)
            {
                var passenger = ClientObjectBase.Container.GetExportedValue<PassengersDetailModel>();
                passenger.ID = bookingPassenger.ID;
                passenger.BookingId = bookingPassenger.BookingId;
                passenger.FirstName = bookingPassenger.FirstName;
                passenger.SecondName = bookingPassenger.SecondName;
                passenger.Type = bookingPassenger.Type;
                passenger.PassportNo = bookingPassenger.PassportNo;
                passenger.Nationality = bookingPassenger.Nationality;
                passenger.IsActive = bookingPassenger.IsActive;
                ticketDetailModel.Passengers.Add(passenger);
            }

            return ticketDetailModel;
        }