Ejemplo n.º 1
0
        public static DataTable FetchExcelList(Guid queryid, int maximumRows, bool useMailFlags)
        {
            //var Db = Db;
            var query = DbUtil.Db.PeopleQuery(queryid);

            if (useMailFlags)
            {
                query = MailingController.FilterMailFlags(query);
            }

            var q = from p in query
                    let om                     = p.OrganizationMembers.SingleOrDefault(om => om.OrganizationId == p.BibleFellowshipClassId)
                                       let oid = p.PeopleExtras.FirstOrDefault(pe => pe.Field == "OtherId").Data
                                                 select new
            {
                p.PeopleId,
                Title     = p.TitleCode,
                FirstName = p.PreferredName,
                p.LastName,
                Address      = p.PrimaryAddress,
                Address2     = p.PrimaryAddress2,
                City         = p.PrimaryCity,
                State        = p.PrimaryState,
                Country      = p.PrimaryCountry,
                Zip          = p.PrimaryZip.FmtZip(),
                Email        = p.EmailAddress,
                BirthDate    = Person.FormatBirthday(p.BirthYr, p.BirthMonth, p.BirthDay, p.PeopleId),
                BirthDay     = Person.FormatBirthday(null, p.BirthMonth, p.BirthDay, p.PeopleId),
                JoinDate     = p.JoinDate.FormatDate(),
                HomePhone    = p.HomePhone.FmtFone(),
                CellPhone    = p.CellPhone.FmtFone(),
                WorkPhone    = p.WorkPhone.FmtFone(),
                MemberStatus = p.MemberStatus.Description,
                Age          = Person.AgeDisplay(p.Age, p.PeopleId).ToString(),
                Married      = p.MaritalStatus.Description,
                Wedding      = p.WeddingDate.FormatDate(),
                p.FamilyId,
                FamilyPosition   = p.FamilyPosition.Description,
                Gender           = p.Gender.Description,
                School           = p.SchoolOther,
                Grade            = p.Grade.ToString(),
                FellowshipLeader = p.BFClass.LeaderName,
                AttendPctBF      = (om == null ? 0 : om.AttendPct == null ? 0 : om.AttendPct.Value),
                FellowshipClass  = (om == null ? "" : om.Organization.OrganizationName),
                p.AltName,
                Employer     = p.EmployerOther,
                OtherId      = oid ?? "",
                Campus       = p.Campu == null ? "" : p.Campu.Description,
                DecisionDate = p.DecisionDate.FormatDate()
            };

            return(q.Take(maximumRows).ToDataTable());
        }