public async Task <GoodsAreaSearchResult> GetModelListAsync(string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize) { using (MyDbContext dbc = new MyDbContext()) { GoodsAreaSearchResult result = new GoodsAreaSearchResult(); var entities = dbc.GetAll <GoodsAreaEntity>().AsNoTracking(); if (!string.IsNullOrEmpty(keyword)) { entities = entities.Where(g => g.Title.Contains(keyword) || g.Note.Contains(keyword) || g.Description.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 goodsAreaResult = await entities.OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync(); result.GoodsAreas = goodsAreaResult.Select(a => ToDTO(a)).ToArray(); return(result); } }
public async Task <ActionResult> List(string keyword, DateTime?startTime, DateTime?endTime, int pageIndex = 1) { GoodsAreaSearchResult result = await goodsAreaService.GetModelListAsync(keyword, startTime, endTime, pageIndex, pageSize); return(Json(new AjaxResult { Status = 1, Data = result })); }
public async Task <ApiResult> List() { GoodsAreaSearchResult result = await goodsAreaService.GetModelListAsync(null, null, null, 1, 100); List <GoodsAreaListApiModel> model; model = result.GoodsAreas.Select(g => new GoodsAreaListApiModel { id = g.Id, title = g.Title, description = g.Description }).ToList(); return(new ApiResult { status = 1, data = model }); }