private IQueryable <QuangCao> Filtering(IQueryable <QuangCao> quangcao, QuangCaoQuery query) { if (query.TenDoiTac != null) { quangcao = quangcao.Where(x => x.TenDoiTac.Contains(query.TenDoiTac)); } if (query.NguoiDaiDien != null) { quangcao = quangcao.Where(x => x.NguoiDaiDien.Contains(query.NguoiDaiDien)); } if (query.NgayBatDau != null) { quangcao = quangcao.Where(x => x.NgayBatDau >= query.NgayBatDau); } if (query.NgayKetThuc != null) { quangcao = quangcao.Where(x => x.NgayKetThuc <= query.NgayKetThuc); } if (query.TinhTrang != null) { quangcao = quangcao.Where(x => x.TinhTrang == query.TinhTrang); } if (query.LoaiQuangCao != null) { quangcao = quangcao.Where(x => db.LoaiQuangCao.Find(x.IDLoaiQC).ViTri == query.LoaiQuangCao); } return(quangcao); }
public async Task <object> Get(QuangCaoQuery query) { var quangcao = Sorting <QuangCao> .Get(Filtering(db.QuangCao, query), query); return(new { Total = quangcao.Count(), Content = await Paging <QuangCao> .Get(quangcao, query).ToListAsync() }); }
public async Task <IActionResult> Get([FromQuery] QuangCaoQuery query) { return(Ok(await _quangCaoService.Get(query))); }