Commit f4cd44fb by Author name

2.3完善博客查看和评论权限

parent 36733c3b
......@@ -46,6 +46,11 @@ public class BlogApi {
if (result.hasErrors()) {
return Response.fieldError(result.getFieldError());
}
//如果为不可查看则默认为不可评论和转载
if (0 == publishBlogForm.getViewPrivileges()) {
publishBlogForm.setAllowComment(false);
publishBlogForm.setAllowForward(false);
}
Blog blog = new Blog();
BeanUtils.copyProperties(publishBlogForm, blog);
......@@ -106,7 +111,7 @@ public class BlogApi {
@ApiOperation("我的博客列表")
@GetMapping("/my/blogs")
public Response<PageVO<Blog>> getMyBlogs (@Valid PageForm pageForm , @CurrentSubject Subject subject) {
IPage<Blog> blogPage = blogService.getUserBlogPage(pageForm.getPage(), pageForm.getSize(), (String) subject.getId());
IPage<Blog> blogPage = blogService.getMyBlogPage(pageForm.getPage(), pageForm.getSize(), (String) subject.getId());
PageVO<Blog> blogPageVO = new PageVO<>(blogPage);
return Response.success(blogPageVO);
}
......
......@@ -10,6 +10,7 @@ public enum BlogCommentErrorCode implements IErrorCode {
COMMENT_NOT_FOUND(8003,"该评论不存在"),
NO_DELETE_PRIVILEGES(8004,"没有权限删除评论"),
PARENT_COMMENT_NOT_FOUND(8006,"父评论不存在"),
NO_COMMENT_PRIVILEGES(8007,"没有评论权限")
;
private long code;
......
......@@ -63,6 +63,14 @@ public interface IBlogService extends IService<Blog> {
*/
IPage<Blog> getUserBlogPage(Integer pageNumber , Integer pageSize , String userId);
/**
* 我的博客列表
* @param pageNumber
* @param pageSize
* @param userId
* @return
*/
IPage<Blog> getMyBlogPage(Integer pageNumber , Integer pageSize , String userId);
/**
* 更新博客
......
......@@ -48,9 +48,13 @@ public class BlogCommentServiceImpl extends ServiceImpl<BlogCommentMapper, BlogC
public void createComment(String blogId, Integer parentId, String comment, String userId) throws BlogServiceException, BlogCommentServiceException {
//判断博客是否存在
//判断博客是否存在,并且有评论权限
Blog blog = blogService.getById(blogId);
if (null == blog) {
if (null != blog) {
if (!blog.getAllowComment()) {
throw new BlogCommentServiceException(BlogCommentErrorCode.NO_COMMENT_PRIVILEGES);
}
} else {
throw new BlogServiceException(BlogErrorCode.BLOG_NOT_FOUND);
}
......
......@@ -172,11 +172,14 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
//1.获取博客
Blog blog = getById(blogId);
//若找不到该博客,则抛出业务异常
if (null == blog) {
//判断是否存在此博客,如果存在判断是否有权限查看
if (null != blog) {
if (0 == blog.getViewPrivileges()) {
throw new BlogServiceException(BlogErrorCode.BLOG_NOT_FOUND);
}
} else {
throw new BlogServiceException(BlogErrorCode.BLOG_NOT_FOUND);
}
//2.获取项目内容
QueryWrapper<BlogExt> blogExtQueryWrapper = new QueryWrapper();
blogExtQueryWrapper.eq("blog_id", blogId);
......@@ -210,6 +213,7 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
public IPage<Blog> getBlogPage(Integer pageNumber, Integer pageSize) {
IPage<Blog> page = new Page<>(pageNumber, pageSize);
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("view_privileges", 1);
queryWrapper.orderByDesc("create_time");
return page(page,queryWrapper);
}
......@@ -223,6 +227,23 @@ public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IB
*/
@Override
public IPage<Blog> getUserBlogPage(Integer pageNumber, Integer pageSize, String userId) {
QueryWrapper blogQueryWrapper = new QueryWrapper();
blogQueryWrapper.eq("user_id", userId);
blogQueryWrapper.eq("view_privileges", 1);
blogQueryWrapper.orderByDesc("create_time");
IPage<Blog> page = new Page<>(pageNumber, pageSize);
return page(page, blogQueryWrapper);
}
/**
* 我的博客列表
* @param pageNumber
* @param pageSize
* @param userId
* @return
*/
@Override
public IPage<Blog> getMyBlogPage(Integer pageNumber, Integer pageSize, String userId) {
QueryWrapper myBlogQueryWrapper = new QueryWrapper();
myBlogQueryWrapper.eq("user_id", userId);
myBlogQueryWrapper.orderByDesc("create_time");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment