TopicManager.java 1.69 KB
Newer Older
刘基明's avatar
刘基明 committed
1 2
package com.tanpu.community.manager;

3
import com.tanpu.common.auth.UserHolder;
刘基明's avatar
刘基明 committed
4
import com.tanpu.common.exception.BizException;
刘基明's avatar
刘基明 committed
5
import com.tanpu.community.api.beans.qo.TopicRankQo;
刘基明's avatar
刘基明 committed
6
import com.tanpu.community.api.beans.req.page.Page;
刘基明's avatar
刘基明 committed
7
import com.tanpu.community.api.beans.req.topic.TopicSearchReq;
8
import com.tanpu.community.api.enums.VisitTypeEnum;
刘基明's avatar
刘基明 committed
9
import com.tanpu.community.service.*;
刘基明's avatar
刘基明 committed
10
import com.tanpu.community.util.PageUtils;
刘基明's avatar
刘基明 committed
11 12 13
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

14
import javax.annotation.Resource;
刘基明's avatar
刘基明 committed
15 16 17 18 19 20 21 22
import java.util.List;

@Service
public class TopicManager {

    @Autowired
    private TopicService topicService;

刘基明's avatar
刘基明 committed
23 24
    @Autowired
    private VisitSummaryService visitSummaryService;
刘基明's avatar
刘基明 committed
25 26
    @Autowired
    private RankService rankService;
刘基明's avatar
刘基明 committed
27

28 29 30
    @Resource
    private UserHolder userHolder;

刘基明's avatar
刘基明 committed
31
    //新增话题
刘基明's avatar
刘基明 committed
32
    public void insertTopic(String topicTitle, String userId) {
刘基明's avatar
刘基明 committed
33
        if (topicService.queryByTitile(topicTitle) == null) {
刘基明's avatar
刘基明 committed
34
            throw new BizException("话题名称已存在:" + topicTitle);
刘基明's avatar
刘基明 committed
35
        }
刘基明's avatar
刘基明 committed
36
        topicService.addTopic(topicTitle, userId);
刘基明's avatar
刘基明 committed
37

刘基明's avatar
刘基明 committed
38
    }
刘基明's avatar
刘基明 committed
39

刘基明's avatar
刘基明 committed
40 41 42
    //首页-话题标签
    public List<TopicRankQo> getTop4TopicTitles() {
        return rankService.getRankTopicListTop4();
刘基明's avatar
刘基明 committed
43 44 45
    }


刘基明's avatar
刘基明 committed
46
    //话题搜索列表
刘基明's avatar
刘基明 committed
47
    public Page<TopicRankQo> getAllTopicBriefInfo(TopicSearchReq req) {
刘基明's avatar
刘基明 committed
48
        return PageUtils.page(req.getPage(), rankService.getRankTopicList());
刘基明's avatar
刘基明 committed
49 50
    }

刘基明's avatar
刘基明 committed
51
    //话题详情页
刘基明's avatar
刘基明 committed
52
    public TopicRankQo getDetail(String topicId) {
53 54
        //话题详情
        visitSummaryService.addPageView(userHolder.getUserId(), topicId, VisitTypeEnum.TOPIC_PAGE_VIEW);
刘基明's avatar
刘基明 committed
55
        return rankService.getTopicDetail(topicId);
刘基明's avatar
刘基明 committed
56 57 58
    }


刘基明's avatar
刘基明 committed
59
}
刘基明's avatar
刘基明 committed
60