public async Task <IActionResult> AddStudentToClass(string id) { //Lấy danh sách sinh viên để show thành list var requestSinhVien = new SinhVienManagePagingRequest() { PageIndex = 1, PageSize = 1000 }; var sinhViens = await _sinhVienApiClient.GetAllPaging(requestSinhVien); ViewBag.sinhViens = sinhViens.Items; ViewBag.ID_LopHocPhan = id; return(View()); }
public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 10) { var request = new SinhVienManagePagingRequest() { Keyword = keyword, PageIndex = pageIndex, PageSize = pageSize }; var data = await _sinhVienApiClient.GetAllPaging(request); ViewBag.Keyword = keyword; if (TempData["result"] != null) { ViewBag.SuccessMessage = TempData["result"]; } return(View(data)); }
public async Task <PagedResult <SinhVienViewModel> > GetAllPaging(SinhVienManagePagingRequest request) { var query = from sv in _context.SinhViens select new { sv }; if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.sv.HoTen.Contains(request.Keyword) || x.sv.ID.Contains(request.Keyword) || x.sv.ID_LopBienChe.Contains(request.Keyword)); } int totalRow = await query.CountAsync(); var data = await query.Skip((request.PageIndex - 1) *request.PageSize) .Take(request.PageSize) .Select(x => new SinhVienViewModel() { ID = x.sv.ID, SoThuTu = x.sv.SoThuTu, Ho = x.sv.Ho, Ten = x.sv.Ten, HoTen = x.sv.HoTen, DiaChi = x.sv.DiaChi, Email = x.sv.Email, SoDienThoai = x.sv.SoDienThoai, GioiTinh = x.sv.GioiTinh, NgaySinh = x.sv.NgaySinh, IsActive = x.sv.IsActive, Nam = x.sv.Nam, ID_LopBienChe = x.sv.ID_LopBienChe, }).ToListAsync(); var pagedResult = new PagedResult <SinhVienViewModel>() { TotalRecords = totalRow, PageIndex = request.PageIndex, PageSize = request.PageSize, Items = data }; return(pagedResult); }
public async Task<PagedResult<SinhVienViewModel>> GetAllPaging(SinhVienManagePagingRequest request) { var sessions = _httpContextAccessor .HttpContext .Session .GetString(SystemConstants.AppSettings.Token); var client = _httpClientFactory.CreateClient(); client.BaseAddress = new Uri(_configuration[SystemConstants.AppSettings.BaseAddress]); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", sessions); var response = await client.GetAsync( $"/api/sinhviens/paging?pageIndex={request.PageIndex}" + $"&pageSize={request.PageSize}" + $"&keyword={request.Keyword}" ); var body = await response.Content.ReadAsStringAsync(); var sinhVien = JsonConvert.DeserializeObject<PagedResult<SinhVienViewModel>>(body); return sinhVien; }
public async Task <IActionResult> GetAllPaging([FromQuery] SinhVienManagePagingRequest request) { var sinhVien = await _sinhVienService.GetAllPaging(request); return(Ok(sinhVien)); }