feat: 开发中...

This commit is contained in:
2023-04-03 20:59:23 +08:00
parent e2bdd6a674
commit f2981ace22
52 changed files with 1576 additions and 847 deletions

View File

@@ -1,6 +1,7 @@
package cn.hamster3.application.blog.controller;
import cn.hamster3.application.blog.service.IBlogService;
import cn.hamster3.application.blog.vo.PageableVO;
import cn.hamster3.application.blog.vo.ResponseVO;
import cn.hamster3.application.blog.vo.blog.BlogInfoResponseVO;
import cn.hamster3.application.blog.vo.blog.BlogUpdateRequireVO;
@@ -13,8 +14,6 @@ import org.springframework.data.domain.PageRequest;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Tag(name = "BlogController", description = "博文相关接口")
@RestController
@RequestMapping(value = "/api/v1/blog", produces = MediaType.APPLICATION_JSON_VALUE)
@@ -36,7 +35,7 @@ public class BlogController {
@GetMapping("/")
@Operation(summary = "获取博文列表")
public ResponseVO<List<BlogInfoResponseVO>> getBlogInfoList(
public ResponseVO<PageableVO<BlogInfoResponseVO>> getBlogInfoList(
@Parameter(description = "页码", example = "0") int page,
@Parameter(description = "大小", example = "10") int size
) {

View File

@@ -1,19 +1,18 @@
package cn.hamster3.application.blog.service;
import cn.hamster3.application.blog.vo.PageableVO;
import cn.hamster3.application.blog.vo.ResponseVO;
import cn.hamster3.application.blog.vo.blog.BlogInfoResponseVO;
import cn.hamster3.application.blog.vo.blog.BlogUpdateRequireVO;
import org.jetbrains.annotations.NotNull;
import org.springframework.data.domain.PageRequest;
import java.util.List;
public interface IBlogService {
@NotNull ResponseVO<Long> createBlog(@NotNull BlogUpdateRequireVO requireVO);
@NotNull ResponseVO<BlogInfoResponseVO> getBlogInfo(@NotNull Long blogID);
@NotNull ResponseVO<List<BlogInfoResponseVO>> getBlogInfoList(@NotNull PageRequest page);
@NotNull ResponseVO<PageableVO<BlogInfoResponseVO>> getBlogInfoList(@NotNull PageRequest page);
@NotNull ResponseVO<Void> updateBlog(@NotNull Long blogID, @NotNull BlogUpdateRequireVO requireVO);

View File

@@ -8,6 +8,7 @@ import cn.hamster3.application.blog.entity.mapper.BlogMapper;
import cn.hamster3.application.blog.entity.repo.BlogRepository;
import cn.hamster3.application.blog.service.IBlogService;
import cn.hamster3.application.blog.util.BlogUtils;
import cn.hamster3.application.blog.vo.PageableVO;
import cn.hamster3.application.blog.vo.ResponseVO;
import cn.hamster3.application.blog.vo.blog.BlogInfoResponseVO;
import cn.hamster3.application.blog.vo.blog.BlogUpdateRequireVO;
@@ -17,8 +18,6 @@ import org.jetbrains.annotations.NotNull;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
public class BlogService implements IBlogService {
@@ -50,12 +49,8 @@ public class BlogService implements IBlogService {
}
@Override
public @NotNull ResponseVO<List<BlogInfoResponseVO>> getBlogInfoList(@NotNull PageRequest page) {
return ResponseVO.success(
blogRepo.findAll(page).stream()
.map(o -> blogMapper.entityToInfoVO(o))
.toList()
);
public @NotNull ResponseVO<PageableVO<BlogInfoResponseVO>> getBlogInfoList(@NotNull PageRequest page) {
return PageableVO.success(blogRepo.findAll(page).map(o -> blogMapper.entityToInfoVO(o)));
}
@Override

View File

@@ -10,11 +10,26 @@ import java.util.List;
@Data
@AllArgsConstructor
public class PageableVO<T> {
private int page;
private int size;
/**
* 当前查询页码
*/
private int pageNumber;
/**
* 当前查询页面大小
*/
private int pageSize;
/**
* 总元素数量
*/
private long totalElements;
/**
* 总页码
*/
private int totalPage;
private List<T> data;
/**
* 当前查询内容
*/
private List<T> elements;
@NotNull
public static <T> ResponseVO<PageableVO<T>> success(@NotNull Page<T> page) {

View File

@@ -15,7 +15,7 @@ public class ResponseVO<T> {
@Nullable
private String msg;
@Nullable
private T data;
private T content;
@NotNull
public static ResponseVO<Void> success() {