Esempio n. 1
0
        public EventScheduleListModel GetEventScheduleReport(int pageNumber, int pageSize, ModelFilterBase eventScheduleListModelFilter, out int totalRecords)
        {
            var filter = eventScheduleListModelFilter as EventScheduleListModelFilter;

            if (filter == null)
            {
                totalRecords = 0;
                return(null);
            }

            var events   = _eventRepository.GetEventScheduleListModel(pageNumber, pageSize, filter, out totalRecords);
            var eventIds = events.Select(x => x.Id).ToArray();
            var hosts    = _hostRepository.GetEventHosts(eventIds);

            var eventAppointmentStatsModels = _eventAppointmentStatsService.Get(events);

            var pods = _podRepository.GetPodsForEvents(eventIds);
            var customersAttended = _eventRepository.GetAttendedCustomers(eventIds);
            var noShowCustomes    = _eventRepository.GetNoShowCustomers(eventIds);

            var mammoEnableEventIds = _eventTestRepository.GetMammoEnableEventIds(eventIds);

            return(_eventScheduleReportFactory.Create(events, hosts, pods, eventAppointmentStatsModels, customersAttended, noShowCustomes, mammoEnableEventIds));
        }