public ActionResult EntryList(long id = 0, int pageIndex = 1) { EntryListViewModel model = new EntryListViewModel(); EntryGetPageDTO dto = new EntryGetPageDTO(); dto.Id = id; EntrySearchResult result = entryService.GetPageByTrainId(dto); model.TrainId = id; model.Cities = idNameService.GetAll("市级"); model.Entries = result.Entries; //分页 Pagination pager = new Pagination(); pager.PageIndex = pageIndex; pager.PageSize = 20; pager.TotalCount = result.TotalCount; if (result.TotalCount <= 20) { model.Page = ""; } else { model.Page = pager.GetPagerHtml(); } return(View(model)); }
public ActionResult EntryList(EntryGetPageDTO dto) { EntryListViewModel model = new EntryListViewModel(); dto.CurrentIndex = (dto.PageIndex - 1) * dto.PageSize; EntrySearchResult result = entryService.GetPageByTrainId(dto); model.TrainId = dto.Id; //model.Cities = idNameService.GetAll("市级"); model.Entries = result.Entries; //分页 Pagination pager = new Pagination(); pager.PageIndex = dto.PageIndex; pager.PageSize = 20; pager.TotalCount = result.TotalCount; if (result.TotalCount <= 20) { model.Page = ""; } else { model.Page = pager.GetPagerHtml(); } return(Json(new AjaxResult { Status = "1", Data = model })); }
public EntrySearchResult GetPageByTrainId(EntryGetPageDTO dto) { using (MyDbContext dbc = new MyDbContext()) { CommonService <TrainEntity> tcs = new CommonService <TrainEntity>(dbc); EntrySearchResult result = new EntrySearchResult(); var train = tcs.GetAll().SingleOrDefault(t => t.Id == dto.Id); if (train == null) { return(null); } var entries = train.Entries.Where(e => e.IsDeleted == false); if (dto.CityId != null) { entries = entries.Where(e => e.CityId == dto.CityId); } if (dto.Gender != null) { entries = entries.Where(e => e.Gender == dto.Gender); } if (dto.StayId != null) { entries = entries.Where(e => e.StayId == dto.StayId); } if (dto.PayId != null) { entries = entries.Where(e => e.PayId == dto.PayId); } if (dto.EntryChannelId != null) { entries = entries.Where(e => e.EntryChannelId == dto.EntryChannelId); } if (dto.StartTime != null) { entries = entries.Where(e => e.CreateDateTime > dto.StartTime); } if (dto.EndTime != null) { entries = entries.Where(e => e.CreateDateTime < dto.EndTime); } if (dto.KeyWord != null) { entries = entries.Where(e => e.Name.Contains(dto.KeyWord) || e.Mobile.Contains(dto.KeyWord)); } result.TotalCount = entries.LongCount(); result.Entries = entries.OrderByDescending(e => e.CreateDateTime).Skip(dto.CurrentIndex).Take(dto.PageSize).ToList().Select(e => ToListDTO(e)).ToArray(); return(result); } }