分离不同状态的数据 #11
@@ -120,7 +120,7 @@ public class ArticleController {
|
|||||||
@GetMapping("/admin/articles")
|
@GetMapping("/admin/articles")
|
||||||
public Response adminArticles(@RequestParam(name = "page", defaultValue = "1") int page,
|
public Response adminArticles(@RequestParam(name = "page", defaultValue = "1") int page,
|
||||||
@RequestParam(name = "count", defaultValue = "10") int count,
|
@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));
|
return Response.success(articleService.adminArticles(count, page, deleted));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ public interface ArticleService {
|
|||||||
* @param page 数据页
|
* @param page 数据页
|
||||||
* @return 分页数据
|
* @return 分页数据
|
||||||
*/
|
*/
|
||||||
PageData<ArticleModel> adminArticles(int count, int page, boolean deleted);
|
PageData<ArticleModel> adminArticles(int count, int page, Boolean deleted);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取文章状态为开放的文章
|
* 获取文章状态为开放的文章
|
||||||
|
|||||||
@@ -278,11 +278,16 @@ public class ArticleServiceImpl implements ArticleService {
|
|||||||
* @return PageInfo
|
* @return PageInfo
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public PageData<ArticleModel> adminArticles(int count, int page, boolean deleted) {
|
public PageData<ArticleModel> adminArticles(int count, int page, Boolean deleted) {
|
||||||
List<Article> articleList = articleMapper.findAll();
|
List<Article> articleList = articleMapper.findAll();
|
||||||
|
|
||||||
PageData<ArticleModel> pageData = new PageData<>(null, 0, count, page);
|
PageData<ArticleModel> pageData = new PageData<>(null, 0, count, page);
|
||||||
List<Article> collect = articleList.stream().filter(article -> article.isDeleted() == deleted).collect(Collectors.toList());
|
List<Article> collect;
|
||||||
|
if (deleted != null) {
|
||||||
|
collect = articleList.stream().filter(article -> article.isDeleted() == deleted).collect(Collectors.toList());
|
||||||
|
} else {
|
||||||
|
collect = articleList;
|
||||||
|
}
|
||||||
pageData.setTotal(collect.size());
|
pageData.setTotal(collect.size());
|
||||||
List<ArticleModel> articleModels = collect.stream()
|
List<ArticleModel> articleModels = collect.stream()
|
||||||
.peek(article -> article.setMdContent(null))
|
.peek(article -> article.setMdContent(null))
|
||||||
|
|||||||
27
src/test/java/cn/celess/blog/service/ArticleServiceTest.java
Normal file
27
src/test/java/cn/celess/blog/service/ArticleServiceTest.java
Normal file
@@ -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<ArticleModel> 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()));
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user