public PagerResultForSurvey getActiveSurvey(Int64?userId, int page, int pageSize) { PagerResultForSurvey objResult = new PagerResultForSurvey(); List <TblUserSurvey> lstSurvey; if (page == 0) { page = 1; } if (pageSize == 0) { pageSize = int.MaxValue; } var skip = (page - 1) * pageSize; lstSurvey = _context.TblUserSurvey.Include(x => x.Survey).Where(x => x.UserId == userId && x.Survey.DueDate.Value.Date >= DateTime.Now && x.IsCompleted == null).OrderByDescending(x => x.Survey.CreatedDate).ToList(); lstSurvey = lstSurvey.Skip(skip).Take(pageSize).ToList(); objResult.RowCount = _context.TblUserSurvey.Include(x => x.Survey).Where(x => x.UserId == userId && x.Survey.DueDate.Value.Date >= DateTime.Now && x.IsCompleted == null).OrderByDescending(x => x.Survey.CreatedDate).Count(); var pageCount = (double)objResult.RowCount / pageSize; objResult.PageCount = (int)Math.Ceiling(pageCount); objResult.lstSurvey = lstSurvey; return(objResult); }
public PagerResultForSurvey getArchiveSurvey(Int64?userId, string FromDate, string ToDate, int page, int pageSize) { PagerResultForSurvey objResult = new PagerResultForSurvey(); string fromDate = String.Format("{0:MM/dd/yyyy}", FromDate); string toDate = String.Format("{0:MM/dd/yyyy}", ToDate); List <TblUserSurvey> lstSurvey; if (page == 0) { page = 1; } if (pageSize == 0) { pageSize = int.MaxValue; } var skip = (page - 1) * pageSize; if (!string.IsNullOrEmpty(fromDate) && !string.IsNullOrEmpty(toDate)) { lstSurvey = _context.TblUserSurvey.Include(x => x.Survey).Where(x => x.UserId == userId && ((x.Survey.DueDate.Value.Date >= Convert.ToDateTime(fromDate) && x.Survey.DueDate.Value.Date <= Convert.ToDateTime(toDate)) || x.IsCompleted == true)).OrderByDescending(i => i.Survey.CreatedDate).ToList(); lstSurvey = lstSurvey.Skip(skip).Take(pageSize).ToList(); objResult.RowCount = _context.TblUserSurvey.Include(x => x.Survey).Where(x => x.UserId == userId && ((x.Survey.DueDate.Value.Date >= Convert.ToDateTime(fromDate) && x.Survey.DueDate.Value.Date <= Convert.ToDateTime(toDate)) || x.IsCompleted == true)).OrderByDescending(i => i.Survey.CreatedDate).Count(); } else { lstSurvey = _context.TblUserSurvey.Include(x => x.Survey).Where(x => x.UserId == userId && (x.Survey.DueDate.Value.Date <= DateTime.Now || x.IsCompleted == true)).OrderByDescending(i => i.Survey.CreatedDate).ToList(); lstSurvey = lstSurvey.Skip(skip).Take(pageSize).ToList(); objResult.RowCount = _context.TblUserSurvey.Include(x => x.Survey).Where(x => x.UserId == userId && (x.Survey.DueDate.Value.Date <= DateTime.Now || x.IsCompleted == true)).OrderByDescending(i => i.Survey.CreatedDate).Count(); } var pageCount = (double)objResult.RowCount / pageSize; objResult.PageCount = (int)Math.Ceiling(pageCount); objResult.lstSurvey = lstSurvey; return(objResult); }