public async Task <PageResultDto <Client> > SearchAsync(QuerySearchDefault @param)
        {
            var query = Context.Clients.AsQueryable();

            if (!string.IsNullOrEmpty(@param.SearchKey))
            {
                query = query.Where(x => EF.Functions.Like(x.ClientName, $"%{@param.SearchKey}%"));
            }

            int totalRecord = await query.CountAsync();

            var result = await query
                         .OrderByDescending(x => x.Created)
                         .Skip(@param.GetSkip())
                         .Take(@param.GetTake())
                         .ToListAsync();

            return(new PageResultDto <Client>(totalRecord,
                                              @param.GetTake(),
                                              result.Select(x => x.ToModel())));
        }
Example #2
0
 public async Task <IActionResult> SearchAsync([FromQuery] QuerySearchDefault @param)
 => Ok(await _clientService.SearchAsync(@param));