public HttpResponseMessage GetAll(HttpRequestMessage request, string keyword, int page, int pageSize = 20, string MaTT = "") { return(CreateHttpResponse(request, () => { int totalRow = 0; IEnumerable <DanhMucChiCuc> model = new List <DanhMucChiCuc>(); if (!string.IsNullOrEmpty(MaTT)) { model = chiCucService.GetAllByMaTT(MaTT); } else { model = chiCucService.GetAll(keyword); } totalRow = model.Count(); var query = model.OrderByDescending(x => x.Stt).Skip(page * pageSize).Take(pageSize); var trungtam = this.trungTamService.GetAll(); var responseData = Mapper.Map <IEnumerable <DanhMucChiCuc>, IEnumerable <DanhMucChiCucViewModel> >(query).Select(x => { x.TenTTSL = trungtam.First(n => n.MaTTSL == x.MaTrungTam).TenTTSL; return x; }).ToList(); var paginationSet = new PaginationSet <DanhMucChiCucViewModel>() { Items = responseData, Page = page, TotalCount = totalRow, TotalPages = (int)Math.Ceiling((decimal)totalRow / pageSize) }; var response = request.CreateResponse(HttpStatusCode.OK, paginationSet); return response; })); }
public HttpResponseMessage GetAll(HttpRequestMessage request, string keyword, int page, int pageSize = 20, string MaTT = "") { return(CreateHttpResponse(request, () => { int totalRow = 0; var userName = HttpContext.Current.GetOwinContext().Authentication.User.Identity.Name; var user = userManager.FindByNameAsync(userName).Result; var model = chiCucService.GetAll(user.LevelCode); if (keyword != null) { model = model.Where(x => x.MaChiCuc.ToLower().Contains(keyword.ToLower()) || (x.TenChiCuc != null && x.TenChiCuc.ToLower().Contains(keyword.ToLower())) || (x.SdtChiCuc != null && x.SdtChiCuc.Contains(keyword))); } totalRow = model.Count(); var query = model.OrderByDescending(x => x.Stt).Skip(page * pageSize).Take(pageSize); var trungtam = this.trungTamService.GetAll(); var responseData = Mapper.Map <IEnumerable <DanhMucChiCuc>, IEnumerable <DanhMucChiCucViewModel> >(query).Select(x => { x.TenTTSL = trungtam.First(n => n.MaTTSL == x.MaTrungTam).TenTTSL; return x; }).ToList(); var paginationSet = new PaginationSet <DanhMucChiCucViewModel>() { Items = responseData, Page = page, TotalCount = totalRow, TotalPages = (int)Math.Ceiling((decimal)totalRow / pageSize) }; var response = request.CreateResponse(HttpStatusCode.OK, paginationSet); return response; })); }