//得到指定 Marketid 的当天所有评论 按倒序排列 public List <AppPingLunVM> GetPinglunByMarketId(int marketId, DateTime start, DateTime end) { var list = new List <AppPingLunVM>(); using (var ctx = new ShtxSms2008Entities()) { var orderdProductIds = ctx.SmsProducts.Where(o => o.MarketId == marketId).Select(o => o.ProductId).ToList(); var pls = ctx.Weixin_Pinglun.Where(o => orderdProductIds.Contains(o.productId) && o.create <end && o.create> start).OrderByDescending(o => o.create); foreach (var pl in pls) { var product = ctx.SmsProducts.FirstOrDefault(o => o.ProductId == pl.productId); var market = ctx.Markets.FirstOrDefault(o => o.MarketId == product.MarketId); var vm = new AppPingLunVM(); vm.Id = pl.productId; vm.Title = pl.title; vm.MarketName = (market == null ? "" : market.MarketName); vm.ProductName = (product == null ? "" : product.ProductName); vm.Icon = pl.icon; vm.Date = pl.create.Value.ToString("yyyy-MM-dd HH:mm:ss fff"); vm.Url = "http://app.shtx.com.cn/StaticHtml/WeixinPingLun.html?&id=" + pl.id; list.Add(vm); } } return(list); }
public List <SearchPingLunVM> GetSearchPinglunResult(string mobile, string key) { List <SearchPingLunVM> result = new List <SearchPingLunVM>(); var list = new List <AppPingLunVM>(); using (var ctx = new ShtxSms2008Entities()) { var today = DateTime.Today; var start = today.AddDays(-7); var end = today.AddDays(1); var plList = ctx.Weixin_Pinglun.Where(o => o.title.Contains(key) && o.create.Value >= start && o.create <= end).OrderByDescending(o => o.create).ToList(); if (plList.Count > 0) { var orderdProductIds = ctx.Gps.Where(o => o.Tel.Contains(mobile)).Select(o => o.ProductID).ToList(); foreach (var pl in plList) { AppPingLunVM vm = new AppPingLunVM(); vm.Id = pl.id; vm.ProductName = CacheService.GetProductNameById(pl.productId); if (vm.ProductName == string.Empty) { continue; } var market = CacheService.GetMarketByProductId(pl.productId); vm.MarketId = market.Item1; vm.MarketName = market.Item2; vm.Title = pl.title; vm.Icon = pl.icon; vm.Date = pl.create.Value.ToString("yyyy-MM-dd"); vm.Url = "http://app.shtx.com.cn/StaticHtml/WeixinPingLun.html?mobile=" + mobile + "&id=" + pl.id; if (orderdProductIds.Contains(pl.productId)) { vm.IsOrder = "YES"; } else { vm.IsOrder = "NO"; } list.Add(vm); } var group = list.GroupBy(o => o.MarketId); foreach (var g in group) { SearchPingLunVM search = new SearchPingLunVM(); search.MarketId = g.Key; search.MarketName = g.First().MarketName; search.PingLunList = g.ToList(); result.Add(search); } } } return(result); }
public List <AppPingLunVM> GetPinglunByMarkets(int marketId, string mobile) { var list = new List <AppPingLunVM>(); using (var ctx = new ShtxSms2008Entities()) { //var products = ctx.SmsProducts.Where(o => o.MarketId == marketId).OrderBy(o => o.DisplayOrder); //foreach (var product in products) //{ // var vm = new AppPingLunVM(); // vm.Id = product.ProductId; // vm.ProductName = product.ProductName; // var pl = ctx.Weixin_Pinglun.Where(o => o.productId == product.ProductId).OrderByDescending(o => o.date).FirstOrDefault(); // if (pl != null) // { // vm.Title = pl.title; // vm.Icon = pl.icon; // vm.Date = pl.create.Value.ToString("yyyy-MM-dd"); // vm.Url = "http://app.shtx.com.cn/StaticHtml/WeixinPingLun.html?mobile="+mobile+"&id=" + pl.id; // list.Add(vm); // } //} CustomerBase cb = ctx.CustomerBases.FirstOrDefault(o => o.Tel.Contains(mobile) && o.SendInterFace == 102); if (cb != null) { mobile = cb.Tel; var now = DateTime.Today; //DateTime start = now.AddDays(-6); //DateTime end = now.AddDays(1); //change:// //var products = ctx.SmsProducts.Where(o => o.MarketId == marketId).Select(o => o.ProductId).Distinct().ToList(); var products = CacheService.GetProductByMarketId(marketId).Select(o => o.ProductId).Distinct().ToList(); if (products.Count > 0) {//1 var orders = ctx.Gps.Where(o => o.Tel == mobile).Select(o => o.ProductID).Distinct().ToList(); foreach (var productId in products) { var product = ctx.SmsProducts.FirstOrDefault(o => o.ProductId == productId); var productPingluns = ctx.Weixin_Pinglun.Where(o => o.productId == productId).OrderByDescending(o => o.create).Take(50).ToList(); if (productPingluns.Count > 0) { foreach (var productPinglun in productPingluns) { var vm = new AppPingLunVM(); vm.Id = product.ProductId; vm.ProductName = product.ProductName; vm.Title = productPinglun.title; vm.Icon = productPinglun.icon; vm.Date = productPinglun.create.Value.ToString("yyyy-MM-dd"); vm.Url = "http://app.shtx.com.cn/StaticHtml/WeixinPingLun.html?mobile=" + mobile + "&id=" + productPinglun.id; if (orders.Contains(productId)) { vm.IsOrder = "YES"; } else { vm.IsOrder = "NO"; } list.Add(vm); } } } } //var pls = ctx.Weixin_Pinglun.Where(o => o.create > start && o.create < end).OrderByDescending(o => o.create); //foreach (var pl in pls) //{ // var pId = pl.productId; // if (!products.Contains(pId)) // continue; // var product = ctx.SmsProducts.FirstOrDefault(o => o.ProductId == pl.productId); // var vm = new AppPingLunVM(); // vm.Id = product.ProductId; // vm.ProductName = product.ProductName; // vm.Title = pl.title; // vm.Icon = pl.icon; // vm.Date = pl.create.Value.ToString("yyyy-MM-dd"); // vm.Url = "http://app.shtx.com.cn/StaticHtml/WeixinPingLun.html?mobile=" + mobile + "&id=" + pl.id; // if (orders.Contains(pId)) // { // vm.IsOrder = "YES"; // } // else // { // vm.IsOrder = "NO"; // } // list.Add(vm); //} } } return(list.OrderByDescending(o => o.Date).ToList()); }