示例#1
0
        public async Task <SlideSearchResult> GetModelListAsync(string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize)
        {
            using (MyDbContext dbc = new MyDbContext())
            {
                SlideSearchResult result = new SlideSearchResult();
                var entities             = dbc.GetAll <SlideEntity>().AsNoTracking();
                if (!string.IsNullOrEmpty(keyword))
                {
                    entities = entities.Where(g => g.Code.Contains(keyword) || g.Name.Contains(keyword));
                }
                if (startTime != null)
                {
                    entities = entities.Where(a => a.CreateTime >= startTime);
                }
                if (endTime != null)
                {
                    entities = entities.Where(a => SqlFunctions.DateDiff("day", endTime, a.CreateTime) <= 0);
                }
                result.PageCount = (int)Math.Ceiling((await entities.LongCountAsync()) * 1.0f / pageSize);
                var noticesResult = await entities.OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();

                result.Slides = noticesResult.Select(a => ToDTO(a)).ToArray();
                return(result);
            }
        }
示例#2
0
        public async Task <ApiResult> List()
        {
            string            parm   = doMain;
            SlideSearchResult result = await slideService.GetModelListAsync(null, null, null, 1, 100);

            List <SlideListApiModel> model;

            model = result.Slides.Where(s => s.IsEnabled == true).Select(n => new SlideListApiModel {
                id = n.Id, name = n.Name, imgUrl = parm + n.ImgUrl, url = n.Url
            }).ToList();
            return(new ApiResult {
                status = 1, data = model
            });
        }