1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package com.tanpu.community.controller;
import com.alibaba.fastjson.JSONObject;
import com.tanpu.community.api.beans.TopicDTO;
import com.tanpu.community.controller.convert.TopicConverter;
import com.tanpu.community.dao.entity.community.TopicEntity;
import com.tanpu.community.manager.TopicManager;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.MissingServletRequestParameterException;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.stream.Collectors;
@RestController
@Slf4j
@RequestMapping(value = "/api/topic")
public class TopicController {
@Autowired
private TopicManager topicManager;
@PostMapping(value = "/queryTopicDetailList")
@ApiOperation("查询所有的主题详情")
@ResponseBody
public List<TopicDTO> getAllTopicList(@RequestBody String content){
JSONObject params = JSONObject.parseObject(content);
List<TopicEntity> allTopic = topicManager.getAllTopic();
List<TopicDTO> topicDTOS = TopicConverter.convertToDTOs(allTopic);
//获取浏览数据:浏览、发帖、回帖
return topicDTOS;
}
@PostMapping(value = "/queryTopicNameList")
@ApiOperation("查询所有的主题名称列表")
@ResponseBody
public List<String> getTopicNameList(@RequestBody String content){
JSONObject params = JSONObject.parseObject(content);
List<TopicEntity> allTopic = topicManager.getAllTopic();
List<String> topictitiles = allTopic.stream().map(TopicEntity::getTopicTitle).collect(Collectors.toList());
//获取浏览数据:浏览、发帖、回帖
return topictitiles;
}
@PostMapping(value="/insertTopic")
@ApiOperation("新增主题主题")
@ResponseBody
public String addTopic(@RequestParam String topicTitle){
//TODO:获取登录用户信息
String userId = "liujm";
topicManager.insertTopic(topicTitle,userId);
return "success";
}
@ApiOperation("单个话题数据总览")
@PostMapping("/selectOne")
@ResponseBody
public String selectOne(@RequestParam String topicId) throws MissingServletRequestParameterException {
if (StringUtils.isEmpty(topicId)){
throw new MissingServletRequestParameterException("topicId","String");
}
TopicDTO topicDTO=topicManager.getDetail(topicId);
return "success";
}
@PostMapping(value = "/setTop")
@ApiOperation("顶置/取消顶置主题")
@ResponseBody
public String setTopTopic(@RequestParam String topicId,@RequestParam boolean setTop) throws MissingServletRequestParameterException {
if (StringUtils.isEmpty(topicId)){
throw new MissingServletRequestParameterException("topicId","String");
}
topicManager.setTopTopic(topicId,setTop);
return "success";
}
@PostMapping(value = "/setConceal")
@ApiOperation("隐藏/显示主题")
@ResponseBody
public String setConceal(@RequestParam String topicId,@RequestParam boolean setConceal) throws MissingServletRequestParameterException {
if (StringUtils.isEmpty(topicId)){
throw new MissingServletRequestParameterException("topicId","String");
}
topicManager.setTopicConceal(topicId,setConceal);
return "success";
}
@PostMapping(value = "/modifyViewNum")
@ApiOperation("主题浏览数调整")
@ResponseBody
public String modifyViewNum(@RequestParam String topicId,@RequestParam Long modifyMount) throws MissingServletRequestParameterException {
if (StringUtils.isEmpty(topicId)){
throw new MissingServletRequestParameterException("topicId","String");
}
//修改浏览量
return "success";
}
}