Rock.Model.ScheduleService.LoadSummaryData C# (CSharp) Метод

LoadSummaryData() публичный Метод

Loads the attendance data.
public LoadSummaryData ( Group group, ScheduleOccurrence occurrence ) : void
group Group The group.
occurrence ScheduleOccurrence The occurrence.
Результат void
        public void LoadSummaryData( Group group, ScheduleOccurrence occurrence )
        {
            if ( group != null && occurrence != null )
            {
                var attendances = new AttendanceService( (RockContext)this.Context )
                .Queryable().AsNoTracking()
                .Where( a =>
                    a.PersonAliasId.HasValue &&
                    a.GroupId.HasValue &&
                    a.GroupId == group.Id &&
                    a.LocationId.Equals( occurrence.LocationId ) &&
                    a.ScheduleId.Equals( occurrence.ScheduleId ) &&
                    DbFunctions.TruncateTime( a.StartDateTime ).Equals( occurrence.Date ) )
                .ToList();

                if ( attendances.Any() )
                {
                    occurrence.DidAttendCount = attendances
                        .Where( t => t.DidAttend.HasValue && t.DidAttend.Value )
                        .Select( t => t.PersonAliasId.Value )
                        .Distinct()
                        .Count();

                    occurrence.DidNotOccurCount = attendances
                        .Where( t => t.DidNotOccur.HasValue && t.DidNotOccur.Value )
                        .Select( t => t.PersonAliasId.Value )
                        .Distinct()
                        .Count();

                    occurrence.TotalCount = attendances
                        .Select( t => t.PersonAliasId )
                        .Distinct()
                        .Count();
                }
            }
        }