public async Task <BonusSearchResult> GetModelListAsync(long?userId, string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize) { using (MyDbContext dbc = new MyDbContext()) { BonusSearchResult result = new BonusSearchResult(); var entities = dbc.GetAll <BonusEntity>().AsNoTracking(); if (userId != null) { entities = entities.Where(a => a.UserId == userId); } if (!string.IsNullOrEmpty(keyword)) { entities = entities.Where(g => g.Source.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 addressResult = await entities.OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync(); result.List = addressResult.Select(a => ToDTO(a)).ToArray(); return(result); } }
//奖金发放记录 public async Task <BonusSearchResult> BoussListAsync(long?userId, long?typeId, int pageIndex, int pageSize) { using (MyDbContext dbc = new MyDbContext()) { BonusSearchResult result = new BonusSearchResult(); var logs = dbc.GetAll <BonusEntity>().AsNoTracking(); if (userId != null && userId > 0) { logs = logs.Where(a => a.UserId == userId); } if (typeId != null && typeId > 0) { logs = logs.Where(a => a.TypeID == typeId); } result.PageCount = (int)Math.Ceiling((await logs.LongCountAsync()) * 1.0f / pageSize); var logsResult = await logs.OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync(); result.List = logsResult.Select(a => ToDTO(a)).ToArray(); return(result); } }