Exemplo n.º 1
0
        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;
            }));
        }
Exemplo n.º 2
0
        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;
            }));
        }