CommentController.java 2.42 KB
Newer Older
刘基明's avatar
刘基明 committed
1 2 3 4
package com.tanpu.community.controller;


import com.tanpu.common.api.CommonResp;
刘基明's avatar
刘基明 committed
5 6
import com.tanpu.common.auth.AuthLogin;
import com.tanpu.common.auth.UserHolder;
刘基明's avatar
刘基明 committed
7
import com.tanpu.community.api.beans.qo.CommentQo;
刘基明's avatar
刘基明 committed
8
import com.tanpu.community.api.beans.req.comment.CreateCommentReq;
刘基明's avatar
刘基明 committed
9
import com.tanpu.community.api.beans.req.comment.LikeCommentReq;
刘基明's avatar
刘基明 committed
10 11
import com.tanpu.community.api.beans.req.comment.QueryCommentReq;
import com.tanpu.community.api.beans.req.page.Page;
刘基明's avatar
刘基明 committed
12
import com.tanpu.community.manager.CommentManager;
刘基明's avatar
刘基明 committed
13
import com.tanpu.community.util.PageUtils;
刘基明's avatar
刘基明 committed
14 15 16
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
刘基明's avatar
刘基明 committed
17
import org.springframework.validation.annotation.Validated;
刘基明's avatar
刘基明 committed
18 19
import org.springframework.web.bind.annotation.*;

刘基明's avatar
刘基明 committed
20
import javax.annotation.Resource;
刘基明's avatar
刘基明 committed
21 22 23 24 25 26 27 28 29 30
import java.util.List;

@RestController
@Slf4j
@RequestMapping(value = "/api/theme")
public class CommentController {

    @Autowired
    private CommentManager commentManager;

刘基明's avatar
刘基明 committed
31 32 33
    @Resource
    private UserHolder userHolder;

刘基明's avatar
刘基明 committed
34
    @ApiOperation("发表评论")
刘基明's avatar
刘基明 committed
35
    @AuthLogin
刘基明's avatar
刘基明 committed
36 37
    @PostMapping(value = "/publishComment")
    @ResponseBody
刘基明's avatar
刘基明 committed
38
    public CommonResp<Void> publishCommet(@Validated @RequestBody CreateCommentReq req) {
刘基明's avatar
刘基明 committed
39
        String userId = userHolder.getUserId();
刘基明's avatar
刘基明 committed
40 41 42 43
        commentManager.comment(req, userId);
        return CommonResp.success();
    }

刘基明's avatar
刘基明 committed
44
    @ApiOperation("评论列表")
刘基明's avatar
刘基明 committed
45
    @AuthLogin
刘基明's avatar
刘基明 committed
46
    @PostMapping(value = "/queryComment")
刘基明's avatar
刘基明 committed
47
    @ResponseBody
刘基明's avatar
刘基明 committed
48
    public CommonResp<Page<CommentQo>> queryComment(@Validated @RequestBody QueryCommentReq req) {
刘基明's avatar
刘基明 committed
49
        String userId = userHolder.getUserId();
刘基明's avatar
刘基明 committed
50
        List<CommentQo> result = commentManager.queryComments(req.getThemeId(), userId);
刘基明's avatar
刘基明 committed
51
        return CommonResp.success(PageUtils.page(req.getPage(), result));
刘基明's avatar
刘基明 committed
52 53 54
    }

    @ApiOperation("点赞评论")
刘基明's avatar
刘基明 committed
55
    @PostMapping(value = "/likeComment")
刘基明's avatar
刘基明 committed
56
    @AuthLogin
刘基明's avatar
刘基明 committed
57
    @ResponseBody
刘基明's avatar
刘基明 committed
58
    public CommonResp<Void> likeComment(@Validated @RequestBody LikeCommentReq req) {
刘基明's avatar
刘基明 committed
59
        String userId = userHolder.getUserId();
刘基明's avatar
刘基明 committed
60
        commentManager.likeComment(req, userId);
刘基明's avatar
刘基明 committed
61 62 63 64
        return CommonResp.success();
    }

    @ApiOperation("举报评论")
刘基明's avatar
刘基明 committed
65
    @GetMapping(value = "/reportComment")
刘基明's avatar
刘基明 committed
66
    @AuthLogin
刘基明's avatar
刘基明 committed
67
    @ResponseBody
刘基明's avatar
刘基明 committed
68
    public CommonResp<Void> reportComment(@RequestParam String commentId) {
刘基明's avatar
刘基明 committed
69
        //todo
刘基明's avatar
刘基明 committed
70
        String userId = userHolder.getUserId();
刘基明's avatar
刘基明 committed
71
        return CommonResp.failed("功能暂未开放");
刘基明's avatar
刘基明 committed
72 73
    }
}