public IEnumerable <MeetingRow> FetchMeetings()
        {
            var q = from m in DbUtil.Db.Meetings
                    let sc = m.Organization.OrgSchedules.FirstOrDefault()  // SCHED
                             where m.Organization.DivOrgs.Any(dd => dd.DivId == divid || divid == 0)
                             where m.MeetingDate >= dt1
                             where m.MeetingDate < dt2
                             where campusid == null || campusid == 0 || m.Organization.CampusId == campusid
                             where schedid == null || schedid == 0 || sc.ScheduleId == schedid
                             where name == null || name == "" || m.Organization.OrganizationName.Contains(name)
                             orderby m.Organization.OrganizationName, m.OrganizationId, m.MeetingDate descending
                select new
            {
                MeetingId  = m.MeetingId,
                OrgName    = m.Organization.OrganizationName,
                Leader     = m.Organization.LeaderName,
                location   = m.Organization.Location,
                date       = m.MeetingDate.Value,
                OrgId      = m.OrganizationId,
                Present    = m.NumPresent,
                Visitors   = m.NumNewVisit + m.NumRepeatVst,
                OutTowners = m.NumOutTown ?? 0
            };

            var q2 = from m in q.ToList()
                     select new MeetingRow
            {
                MeetingId  = m.MeetingId,
                OrgName    = m.OrgName,
                Leader     = m.Leader,
                date       = m.date.ToString("g"),
                OrgId      = m.OrgId.ToString(),
                Present    = m.Present,
                Visitors   = m.Visitors,
                OutTowners = m.OutTowners
            };
            var list = q2.ToList();
            var t    = new MeetingRow
            {
                OrgName    = "Total",
                Leader     = string.Empty,
                date       = "",
                OrgId      = "",
                Present    = list.Sum(i => i.Present),
                Visitors   = list.Sum(i => i.Visitors),
                OutTowners = list.Sum(i => i.OutTowners)
            };

            list.Add(t);
            return(list);
        }
Beispiel #2
0
        public IEnumerable<MeetingRow> FetchMeetings()
        {
            var orgs = Model.FetchOrgs();
            var q = from m in DbUtil.Db.Meetings
                    join o in orgs on m.OrganizationId equals o.OrganizationId
                    where m.MeetingDate >= dt1
                    where m.MeetingDate <= dt2
                    where Model.ScheduleId == 0 || m.ScheduleId == Model.ScheduleId
                    orderby o.OrganizationName, o.OrganizationId, m.MeetingDate descending
                    select new
                    {
                        MeetingId = m.MeetingId,
                        OrgName = m.Organization.OrganizationName,
                        Leader = m.Organization.LeaderName,
                        location = m.Organization.Location,
                        date = m.MeetingDate.Value,
                        OrgId = m.OrganizationId,
                        Present = m.MaxCount ?? 0,
                        Visitors = m.NumNewVisit + m.NumRepeatVst,
                        OutTowners = m.NumOutTown ?? 0
                    };

            var q2 = from m in q.ToList()
                     select new MeetingRow
                     {
                         MeetingId = m.MeetingId,
                         OrgName = m.OrgName,
                         Leader = m.Leader,
                         date = m.date.ToString("g"),
                         OrgId = m.OrgId.ToString(),
                         Present = m.Present,
                         Visitors = m.Visitors,
                         OutTowners = m.OutTowners
                     };
            var list = q2.ToList();
            var t = new MeetingRow
            {
                OrgName = "Total",
                Leader = string.Empty,
                date = "",
                OrgId = "",
                Present = list.Sum(i => i.Present),
                Visitors = list.Sum(i => i.Visitors),
                OutTowners = list.Sum(i => i.OutTowners)
            };
            list.Add(t);
            return list;
        }
Beispiel #3
0
        public List <MeetingRow> FetchMeetings()
        {
            var orgs = Model.FetchOrgs();
            var q    = from m in DbUtil.Db.Meetings
                       join o in orgs on m.OrganizationId equals o.OrganizationId
                       where m.MeetingDate >= dt1
                       where m.MeetingDate <= dt2
                       where Model.ScheduleId == 0 || m.ScheduleId == Model.ScheduleId
                       orderby o.OrganizationName, o.OrganizationId, m.MeetingDate descending
                select new
            {
                MeetingId  = m.MeetingId,
                OrgName    = m.Organization.OrganizationName,
                Leader     = m.Organization.LeaderName,
                location   = m.Organization.Location,
                date       = m.MeetingDate.Value,
                OrgId      = m.OrganizationId,
                Present    = m.MaxCount ?? 0,
                Visitors   = m.NumNewVisit + m.NumRepeatVst,
                OutTowners = m.NumOutTown ?? 0
            };

            var q2 = from m in q
                     select new MeetingRow
            {
                OrgName    = m.OrgName,
                Leader     = m.Leader,
                DateTime   = m.date,
                Present    = m.Present,
                Visitors   = m.Visitors,
                OutTowners = m.OutTowners
            };
            var list = q2.ToList();
            var t    = new MeetingRow
            {
                OrgName    = "Total",
                Leader     = string.Empty,
                Present    = list.Sum(i => i.Present),
                Visitors   = list.Sum(i => i.Visitors),
                OutTowners = list.Sum(i => i.OutTowners)
            };

            list.Add(t);
            return(list);
        }