public List <WJ_NewsModel> GetNewsList(WJ_NewsModelFilter filter, out int total) { using (DataProvider dp = new DataProvider()) { var list = dp.WJ_News.Where(m => true); if (filter.Title.IsNotNullOrWhiteSpace()) { list = list.Where(m => m.Title.Contains(filter.Title)); } if (filter.Remark.IsNotNullOrWhiteSpace()) { list = list.Where(m => m.Remark.Contains(filter.Remark)); } if (filter.NewsType.IsNotNullAndCountGtZero()) { list = list.Where(m => filter.NewsType.Contains(m.NewsType.Value)); } total = list.Count(); var dic = dp.System_DicItem.Where(m => m.GroupCode == "NewsType").ToList(); var listLoc = Mapper.Map <List <WJ_NewsModel> >(list.OrderBy(m => !m.IsTop).ThenByDescending(m => m.Sort).ThenByDescending(m => m.CreateTime).Skip(filter.Skip).Take(filter.PageSize).ToList()); listLoc.ForEach(m => m.NewsTypeText = dic.FirstOrDefault(x => x.Id == m.NewsType).ItemDesc); return(listLoc); } }
public ActionResult GetNewsList(WJ_NewsModelFilter filter) { var data = service.GetNewsList(filter, out int total); return(Json(new TableDataModel(total, data))); }