From cb1d61da88d8d10375213af6b5d9b555a468ec02 Mon Sep 17 00:00:00 2001 From: xiangZr-hhh <“2774915446@qq.com”> Date: Tue, 16 Apr 2024 18:20:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E6=AD=A3=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 分页修正 --- .../oa/services/impl/ReviewServiceImpl.java | 44 ++++++++----------- 1 file changed, 19 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java index 28d1f99..ed22c1c 100644 --- a/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java @@ -1,8 +1,6 @@ package com.jsl.oa.services.impl; -import com.github.pagehelper.PageHelper; -import com.github.pagehelper.PageInfo; import com.jsl.oa.common.constant.ReviewConstants; import com.jsl.oa.dao.ProjectDAO; import com.jsl.oa.dao.ReviewDAO; @@ -111,10 +109,7 @@ public class ReviewServiceImpl implements ReviewService { List result = encapsulateArrayClass(reviewData); //封装结果类与数据总数 - int total = result.size(); - ReviewDataVO reviewDataVO = new ReviewDataVO(); - reviewDataVO.setReviews(result); - reviewDataVO.setDataTotal(total); + ReviewDataVO reviewDataVO = getReviewsByPage(result, page, pageSize); return ResultUtil.success(reviewDataVO); } @@ -182,10 +177,7 @@ public class ReviewServiceImpl implements ReviewService { List result = encapsulateArrayClass(reviewData); //封装结果类与数据总数 - int total = result.size(); - ReviewDataVO reviewDataVO = new ReviewDataVO(); - reviewDataVO.setReviews(result); - reviewDataVO.setDataTotal(total); + ReviewDataVO reviewDataVO = getReviewsByPage(result, page, pageSize); return ResultUtil.success(reviewDataVO); } @@ -264,13 +256,9 @@ public class ReviewServiceImpl implements ReviewService { // 根据内容筛选 if (content == null || content.equals("")) { - // 使用PageHelper进行分页 - PageHelper.startPage(page, pageSize); - PageInfo pageInfo1 = new PageInfo<>(reviewVOS); - int total = reviewVOS.size(); - ReviewDataVO reviewDataVO = new ReviewDataVO(); - reviewDataVO.setReviews(pageInfo1.getList()); - reviewDataVO.setDataTotal(total); + //封装结果类与数据总数 + ReviewDataVO reviewDataVO = getReviewsByPage(reviewVOS, page, pageSize); + return ResultUtil.success(reviewDataVO); } else { reviewVOS = reviewVOS.stream() @@ -278,16 +266,9 @@ public class ReviewServiceImpl implements ReviewService { .collect(Collectors.toList()); } - // 使用PageHelper进行分页 - PageHelper.startPage(page, pageSize); - PageInfo pageInfo = new PageInfo<>(reviewVOS); - //封装结果类与数据总数 - int total = (int) pageInfo.getTotal(); - ReviewDataVO reviewDataVO = new ReviewDataVO(); - reviewDataVO.setReviews(pageInfo.getList()); - reviewDataVO.setDataTotal(total); + ReviewDataVO reviewDataVO = getReviewsByPage(reviewVOS, page, pageSize); return ResultUtil.success(reviewDataVO); } @@ -456,6 +437,19 @@ public class ReviewServiceImpl implements ReviewService { return encapsulateArrayClass(reviewData); } + + public ReviewDataVO getReviewsByPage(List allReviews, int page, int pageSize) { + ReviewDataVO reviewDataVO = new ReviewDataVO(); + int total = allReviews.size(); + int startIndex = (page - 1) * pageSize; + int endIndex = Math.min(startIndex + pageSize, total); + List reviewsOnPage = allReviews.subList(startIndex, endIndex); + + reviewDataVO.setReviews(reviewsOnPage); + reviewDataVO.setDataTotal(total); + + return reviewDataVO; + } }