/// <summary> /// 获取列表 /// </summary> /// <param name="pageIndex"></param> /// <param name="pageSize"></param> /// <param name="type"></param> /// <param name="keyword"></param> /// <returns></returns> public static HT.Model.Model.PageResult <ht_review> GetReviewsList(int pageIndex, int pageSize, string news_id, string type, string status, string keyword, string review_id) { HT.Model.Model.PageResult <ht_review> pageModel = new HT.Model.Model.PageResult <ht_review>(); using (Entities db = new Entities()) { db.Configuration.ProxyCreationEnabled = false; var unDelList = db.ht_review.Where(r => true); if (!string.IsNullOrWhiteSpace(news_id)) { int newsid = int.Parse(news_id); unDelList = unDelList.Where(r => r.news_id == newsid); } if (!string.IsNullOrWhiteSpace(type) && type != "all") { unDelList = unDelList.Where(r => r.review_type == type); } if (!string.IsNullOrWhiteSpace(keyword)) { unDelList = unDelList.Where(r => r.nickname == keyword || r.review_content.StartsWith(keyword)); } if (!string.IsNullOrWhiteSpace(status)) { int statusInt = int.Parse(status); unDelList = unDelList.Where(r => r.status == statusInt); } if (!string.IsNullOrWhiteSpace(review_id)) { int review_id_num = Convert.ToInt32(review_id); unDelList = unDelList.Where(r => r.review_id == review_id_num); } int total = unDelList.Count(); pageModel.totalpage = (int)Math.Ceiling((decimal)total / (decimal)pageSize);//总页数 pageModel.total = total; pageModel.list = unDelList.OrderBy(p => p.status).Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList(); if (type == "all") { foreach (var item in pageModel.list) { if (item.review_type == "reply") { var pr = db.ht_review.Find(item.review_id); if (pr != null) { item.parent_content = pr.review_content; } } else if (item.review_type == "comment") { var pn = db.ht_news.Find(item.news_id); if (pn == null) { continue; } if (pn.cateid == 1 || pn.cateid == 2) { item.parent_content = BLLNews.GetCity(pn.start_city, pn.start_district, pn.start_province) + "→" + BLLNews.GetCity(pn.stop_city, pn.stop_district, pn.stop_province); } else { item.parent_content = pn.add_nickname + " " + pn.cate; } } } } return(pageModel); } }