diff --git a/src/main/java/cn/celess/blog/controller/ArticleController.java b/src/main/java/cn/celess/blog/controller/ArticleController.java index e611d94..80fd4cc 100644 --- a/src/main/java/cn/celess/blog/controller/ArticleController.java +++ b/src/main/java/cn/celess/blog/controller/ArticleController.java @@ -120,7 +120,7 @@ public class ArticleController { @GetMapping("/admin/articles") public Response adminArticles(@RequestParam(name = "page", defaultValue = "1") int page, @RequestParam(name = "count", defaultValue = "10") int count, - @RequestParam(name = "deleted", defaultValue = "false") boolean deleted) { + @RequestParam(name = "deleted", required = false) Boolean deleted) { return Response.success(articleService.adminArticles(count, page, deleted)); } diff --git a/src/main/java/cn/celess/blog/service/ArticleService.java b/src/main/java/cn/celess/blog/service/ArticleService.java index 53e1494..f74b875 100644 --- a/src/main/java/cn/celess/blog/service/ArticleService.java +++ b/src/main/java/cn/celess/blog/service/ArticleService.java @@ -52,7 +52,7 @@ public interface ArticleService { * @param page 数据页 * @return 分页数据 */ - PageData adminArticles(int count, int page, boolean deleted); + PageData adminArticles(int count, int page, Boolean deleted); /** * 获取文章状态为开放的文章 diff --git a/src/main/java/cn/celess/blog/service/serviceimpl/ArticleServiceImpl.java b/src/main/java/cn/celess/blog/service/serviceimpl/ArticleServiceImpl.java index ed7d788..f05158c 100644 --- a/src/main/java/cn/celess/blog/service/serviceimpl/ArticleServiceImpl.java +++ b/src/main/java/cn/celess/blog/service/serviceimpl/ArticleServiceImpl.java @@ -278,11 +278,16 @@ public class ArticleServiceImpl implements ArticleService { * @return PageInfo */ @Override - public PageData adminArticles(int count, int page, boolean deleted) { + public PageData adminArticles(int count, int page, Boolean deleted) { List
articleList = articleMapper.findAll(); PageData pageData = new PageData<>(null, 0, count, page); - List
collect = articleList.stream().filter(article -> article.isDeleted() == deleted).collect(Collectors.toList()); + List
collect; + if (deleted != null) { + collect = articleList.stream().filter(article -> article.isDeleted() == deleted).collect(Collectors.toList()); + } else { + collect = articleList; + } pageData.setTotal(collect.size()); List articleModels = collect.stream() .peek(article -> article.setMdContent(null)) diff --git a/src/test/java/cn/celess/blog/service/ArticleServiceTest.java b/src/test/java/cn/celess/blog/service/ArticleServiceTest.java new file mode 100644 index 0000000..b32c223 --- /dev/null +++ b/src/test/java/cn/celess/blog/service/ArticleServiceTest.java @@ -0,0 +1,27 @@ +package cn.celess.blog.service; + +import cn.celess.blog.BaseTest; +import cn.celess.blog.entity.model.ArticleModel; +import cn.celess.blog.entity.model.PageData; +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; + +import static org.junit.Assert.*; + +public class ArticleServiceTest extends BaseTest { + + @Autowired + ArticleService articleService; + + @Test + public void adminArticles() { + // 测deleted参数传值 + PageData pageData = articleService.adminArticles(10, 1, true); + assertTrue(pageData.getList().stream().allMatch(ArticleModel::isDeleted)); + pageData = articleService.adminArticles(10, 1, false); + assertFalse(pageData.getList().stream().allMatch(ArticleModel::isDeleted)); + pageData = articleService.adminArticles(10, 1, null); + assertTrue(pageData.getList().stream().anyMatch(ArticleModel::isDeleted)); + assertTrue(pageData.getList().stream().anyMatch(articleModel -> !articleModel.isDeleted())); + } +} \ No newline at end of file