// fetch all rows from table into new List of Contracts, filtered by any column
        // links:
        //  docLink: http://sql2x.org/documentationLink/ce01ef4a-5cd0-4e51-b211-9c0a15b791a0
        public List <CrudeBookingPassengerEventContract> FetchWithFilter(System.Guid bookingPassengerEventId, string bookingPassengerEventTypeRcd, int bookingPassengerEventNumber, System.Guid bookingPassengerId, System.Guid bookingFlightSegmentId, System.Guid bookingPassengerTicketId, System.Guid bookingPassengerSeatId, System.Guid bookingPassengerBaggageId, string remarks, System.Guid userId, System.DateTime dateTime)
        {
            var list = new List <CrudeBookingPassengerEventContract>();
            List <CrudeBookingPassengerEventData> dataList = CrudeBookingPassengerEventData.FetchWithFilter(
                bookingPassengerEventId: bookingPassengerEventId,
                bookingPassengerEventTypeRcd: bookingPassengerEventTypeRcd,
                bookingPassengerEventNumber: bookingPassengerEventNumber,
                bookingPassengerId: bookingPassengerId,
                bookingFlightSegmentId: bookingFlightSegmentId,
                bookingPassengerTicketId: bookingPassengerTicketId,
                bookingPassengerSeatId: bookingPassengerSeatId,
                bookingPassengerBaggageId: bookingPassengerBaggageId,
                remarks: remarks,
                userId: userId,
                dateTime: dateTime
                );

            foreach (CrudeBookingPassengerEventData data in dataList)
            {
                var crudeBookingPassengerEventContract = new CrudeBookingPassengerEventContract();
                DataToContract(data, crudeBookingPassengerEventContract);
                list.Add(crudeBookingPassengerEventContract);
            }

            return(list);
        }