public async Task <IActionResult> GetAllWithPaging([FromQuery] GetChucVuPagingRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var result = await _chucVuServices.GetAllWithPaging(request); if (result.ResultObj != null) { return(Ok(result)); } return(BadRequest(result)); }
public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 5) { var pagingRequest = new GetChucVuPagingRequest() { keyword = keyword, pageIndex = pageIndex, pageSize = pageSize }; var result = await _chucVuApiClient.GetAllWithPaging(pagingRequest); if (result.ResultObj != null) { if (TempData["result"] != null) { ViewBag.Success = true; ViewBag.SuccessMessage = TempData["result"]; } return(View(result.ResultObj)); } return(View(result)); }
public async Task <APIResult <PageResult <ChucVuViewModel> > > GetAllWithPaging(GetChucVuPagingRequest request) { var client = _httpClientFactory.CreateClient(); client.BaseAddress = new Uri(_configuration["BaseAddress"]); var session = _httpContextAccessor.HttpContext.Session.GetString("Token"); client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", session); var reponse = await client.GetAsync($"/api/ChucVus/paging?pageIndex={request.pageIndex}&pageSize={request.pageSize}&keyword={request.keyword}"); var body = await reponse.Content.ReadAsStringAsync(); var chucvu = JsonConvert.DeserializeObject <APISuccessedResult <PageResult <ChucVuViewModel> > >(body); return(chucvu); }
public async Task <APIResult <PageResult <ChucVuViewModel> > > GetAllWithPaging(GetChucVuPagingRequest request) { var query = from bp in _context.BoPhans join cv in _context.ChucVus on bp.IDBP equals cv.IDBP select new ChucVuViewModel { TenBP = bp.TenBP, IDCV = cv.IDCV, TenCV = cv.TenCV }; if (!string.IsNullOrEmpty(request.keyword)) { query = query.Where(x => x.TenBP.Contains(request.keyword) || x.TenCV.Contains(request.keyword)); } var totalRow = await query.CountAsync(); var data = await query.Skip((request.pageIndex - 1) *request.pageSize) .Take(request.pageSize) .Select(x => new ChucVuViewModel { TenBP = x.TenBP, IDCV = x.IDCV, TenCV = x.TenCV }).ToListAsync(); var pageResult = new PageResult <ChucVuViewModel>() { TotalRecord = totalRow, PageIndex = request.pageIndex, PageSize = request.pageSize, Items = data }; return(new APISuccessedResult <PageResult <ChucVuViewModel> >(pageResult)); }