Example #1
0
        /// <summary>
        /// 加载列表
        ///</summary>
        public TableData Load(NewsListReq request)
        {
            var loginUser = _auth.GetCurrentUser();
            Expression <Func <News, bool> > exp = u => true;

            if (!string.IsNullOrWhiteSpace(request.Name))
            {
                exp = exp.And(m => m.Name.Contains(request.Name));
            }

            if (DateTime.MinValue != (request.StartCreateTime) && DateTime.MinValue != request.EndCreateTime)
            {
                exp = exp.And(m => m.CreateTime > request.StartCreateTime && m.CreateTime < request.EndCreateTime);
            }
            else if (DateTime.MinValue != (request.StartCreateTime))
            {
                exp = exp.And(m => m.CreateTime > request.StartCreateTime);
            }
            else if (DateTime.MinValue != (request.EndCreateTime))
            {
                exp = exp.And(m => m.CreateTime < request.EndCreateTime);
            }

            if (null != request.IsPublish)
            {
                exp = exp.And(m => m.IsPublish == request.IsPublish.Value);
            }
            #region 使用AutoMapper获取List视图数据

            var configuration = new MapperConfiguration(cfg => cfg.CreateMap <News, NewsListVM>());
            var NewsList      = Repository.Find(request.page, 10, "", exp).ProjectTo <NewsListVM>(configuration).ToList();
            #endregion
            #region 手动编码获取List视图数据
            //var NewsList = Repository.Find(request.page, 10)
            // .Select(m => new  NewsListVM{
            // Name  = m.Name ,// CreateTime  = m.CreateTime ,// IsPublish  = m.IsPublish ,// Id  = m.Id
            //})
            //.ToList< NewsListVM>();
            #endregion
            var records = Repository.GetCount(exp);
            return(new TableData
            {
                count = records,
                data = NewsList,
            });
        }
Example #2
0
 public JsonResult Load([FromQuery] NewsListReq request)
 {
     return(Json(_app.Load(request)));
 }