public JsonResult List(int page, int rows, int MsgType, int SendOBj, string BeginTime = "", string EndTime = "") { MessageDetialQuery opQuery = new MessageDetialQuery(); DateTime dt; if (DateTime.TryParse(BeginTime, out dt) && DateTime.TryParse(EndTime, out dt)) { opQuery = new MessageDetialQuery() { BeginTime = DateTime.Parse(BeginTime), EndTime = DateTime.Parse(EndTime), SendObj = SendOBj, MsgType = 1, PageNo = page, PageSize = rows }; } else { opQuery = new MessageDetialQuery() { SendObj = SendOBj, MsgType = 1, PageNo = page, PageSize = rows }; } PageModel <MessageDetial> opModel = ServiceHelper.Create <IMessageDetialService>().SelectAllMessageDetial(opQuery); var array = from item in opModel.Models.ToArray() select new { Id = item.Id, SendTime = item.SendTime, MsgType = item.MsgType, SendObj = item.SendObj, MessageContent = item.MessageContent, MessageTitle = item.MessageTitle }; return(Json(new { rows = array, total = opModel.Total })); }
public PageModel <MessageDetial> SelectAllMessageDetial(MessageDetialQuery mdq) { int pageNum = 0; IQueryable <MessageDetial> mdr = context.MessageDetial.AsQueryable <MessageDetial>(); if (mdq.MsgType != 0) { mdr = (from a in mdr where a.MsgType == mdq.MsgType select a); } string begin = mdq.BeginTime.ToString("yyyy/MM/dd", System.Globalization.DateTimeFormatInfo.InvariantInfo); string end = mdq.EndTime.ToString("yyyy/MM/dd", System.Globalization.DateTimeFormatInfo.InvariantInfo); if (!string.IsNullOrWhiteSpace(begin) && !begin.Equals("0001/01/01") && !string.IsNullOrWhiteSpace(end) && !end.Equals("0001/01/01")) { mdr = (from a in mdr where a.SendTime >= mdq.BeginTime && a.SendTime <= mdq.EndTime select a); } if (mdq.SendObj != 0) { mdr = (from a in mdr where a.SendObj == mdq.SendObj select a); } foreach (MessageDetial mdrs in mdr.ToList()) { ManagerInfo manaInfo = context.ManagerInfo.FirstOrDefault((ManagerInfo m) => m.Id == mdrs.ManagerId); mdrs.SendName = (manaInfo == null ? "" : manaInfo.UserName); if (mdrs.MessageTitleId != 20) { mdrs.MessageTitle = ((MessageSetting.MessageModuleStatus)mdrs.MessageTitleId).ToDescription(); } } mdr = mdr.GetPage(out pageNum, mdq.PageNo, mdq.PageSize, (IQueryable <MessageDetial> d) => from o in d orderby o.SendTime descending select o); return(new PageModel <MessageDetial> { Models = mdr, Total = pageNum }); }