示例#1
0
        /// <summary>
        /// Get bookings
        /// </summary>
        /// <param name="filter">The filter</param>
        /// <returns></returns>
        public Task <List <BookingEntity> > Get(GetBookingFilter filter)
        {
            var query = DbSet
                        .AsNoTracking()
                        .Where(x => x.Tour.AgencyId == filter.AgencyId);

            if (filter.CancellationDeadlineFrom.HasValue)
            {
                query = query.Where(x => x.CancellationDeadline >= filter.CancellationDeadlineFrom);
            }

            return(query.ToListAsync());
        }
示例#2
0
        /// <summary>
        /// Get bookings
        /// </summary>
        /// <param name="agencyId">The agency id</param>
        /// <returns></returns>
        public async Task <List <Booking> > GetBookings(int agencyId, int?tourId, DateTime?cancellationDeadlineFrom)
        {
            var filter = new GetBookingFilter
            {
                AgencyId = agencyId,
                TourId   = tourId,
                CancellationDeadlineFrom = cancellationDeadlineFrom
            };

            var result = await this.bookingRepository.Get(filter);

            return(this.mapper.Map <List <Booking> >(result));
        }