TopicControllerApi.java
6.38 KB
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
package com.cnlive.shenhe.api;
import com.alibaba.fastjson.JSONObject;
import com.cnlive.shenhe.bean.ErrorEnum;
import com.cnlive.shenhe.bean.ResponseBean;
import com.cnlive.shenhe.entity.ShyTopic;
import com.cnlive.shenhe.serviceImpl.CommentsServiceImpl;
import com.cnlive.shenhe.serviceImpl.TopicServiceImpl;
import com.cnlive.shenhe.utils.AuditPass;
import com.cnlive.shenhe.utils.CommonConst;
import com.cnlive.shenhe.utils.CommonUtils;
import com.cnlive.shenhe.utils.TransitServiceUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
@Controller
@RequestMapping("/api/topic")
public class TopicControllerApi {
private static Logger logger = LoggerFactory.getLogger(TopicControllerApi.class);
@Autowired
AuditPass Pass;
@Autowired
CommentsServiceImpl commentsService;
@Autowired
TopicServiceImpl topicService;
@Autowired
TransitServiceUtils t;
/**
* @author liwei
* @Date: 2019/12/13 15:17
* @Description: 话题送审接口
*/
@PostMapping("/import")
@ResponseBody
public ResponseBean impotTopic(@RequestBody String param) {
logger.info("话题入库,param=====" + param);
JSONObject json = JSONObject.parseObject(param);
JSONObject result = new JSONObject();
//获取所有参数
String topic_id = json.getString("topic_id");//话题id
Integer spId = Integer.parseInt(json.getString("spId"));//spId
String topicTitle = json.getString("topicTitle");//话题标题
String topicPic = json.getString("topicPic");//话题图片
String topic_text = json.getString("topic_text");//话题内容
String topic_tag = json.getString("topic_tag");//话题标签
String topic_url = json.getString("topic_url");//话题url
String topic_time = json.getString("createTime");//话题创建时间
//判断是否存在
ShyTopic shyTopic=new ShyTopic();
shyTopic.setTopic_id(topic_id);
List<ShyTopic> topicList = topicService.findshyTopic(shyTopic);
//获取审核类型
Integer shenheType = topicService.getShenheType(spId);
//存在则更新
if (topicList.size() > 0) {
ShyTopic shyTopic1 = topicList.get(0);
shyTopic1.setTitle(topicTitle);//话题标题
shyTopic1.setTopic_image(topicPic);//话题图片
shyTopic1.setShenhe_type(shenheType);//审核类型
shyTopic1.setTopic_text(topic_text);//话题内容
shyTopic1.setTopic_tag(topic_tag);//话题标签
shyTopic1.setTopic_url(topic_url);//话题url
shyTopic1.setTopic_time(topic_time);//话题创建时间
shyTopic1.setSp_id(spId);//spid
shyTopic1.setShenhe_status(CommonConst.AUDIT_INTT);;//当前话题的审核状态
shyTopic1.setUpdate_date(CommonUtils.getCurrentTime());//最后一次更新时间
boolean YorN = topicService.updateshyTopic(shyTopic1);
if (YorN == true) {
return new ResponseBean(ErrorEnum.SUCCESS,new JSONObject().put("topic_id", topic_id));
} else {
return new ResponseBean(ErrorEnum.ERROR,new JSONObject().put("topic_id", topic_id));
}
}
//如果不存在直接插入
shyTopic.setTitle(topicTitle);//话题标题
shyTopic.setTopic_image(topicPic);//话题图片
shyTopic.setShenhe_type(shenheType);//审核类型
shyTopic.setTopic_text(topic_text);//话题内容
shyTopic.setTopic_tag(topic_tag);//话题标签
shyTopic.setTopic_url(topic_url);//话题url
shyTopic.setTopic_time(topic_time);//话题创建时间
shyTopic.setSp_id(spId);//spid
shyTopic.setShenhe_status(CommonConst.AUDIT_INTT);;//当前话题的审核状态
shyTopic.setUpdate_date(CommonUtils.getCurrentTime());//最后一次更新时间
shyTopic.setCreate_date(CommonUtils.getCurrentTime());//送审时间
boolean YorN = topicService.impotshyTopic(shyTopic);
if (YorN == true) {
return new ResponseBean(ErrorEnum.SUCCESS,new JSONObject().put("topic_id", topic_id));
} else {
return new ResponseBean(ErrorEnum.ERROR,new JSONObject().put("topic_id", topic_id));
}
}
@GetMapping("/send")
@ResponseBody
public String send() {
System.out.println("1111");
JSONObject params = new JSONObject();
params.put("video_id", "11111");
params.put("state", "22222");
params.put("attr_tags", "33333");
params.put("msg", "4444");
t.send("cms","/api/callback", false, params);
return "1111";
}
@PostMapping("/callback")
@ResponseBody
public void callback(@RequestBody String param) {
logger.info("话题回调通知,param=====" + param);
JSONObject json = JSONObject.parseObject(param);
//获取中转服务器消息
String errorCode = json.getString("errorCode");
String errorMessage=json.getString("errorMessage");
String date=json.getString("date");
//获取接收方消息
JSONObject dateObject = JSONObject.parseObject(date);
String topic_id=dateObject.getString("topic_id");
//获取当前话题实体
ShyTopic shyTopic=new ShyTopic();
shyTopic.setTopic_id(topic_id);
ShyTopic topic = topicService.getShyTopic(shyTopic);
if(errorCode.equals("0")){
logger.info("cms系统已通知");
if(topic!=null){
topic.setShenhe_msg(topic.getShenhe_msg()+",cms系统已通知");
}
}else{//中转服务器失败
logger.info("中转服务器调用cms失败,失败消息:"+errorMessage);
topic.setShenhe_msg(topic.getShenhe_msg()+",中转服务器调用cms失败,失败消息:"+errorMessage);
topic.setShenhe_status(CommonConst.AUDIT_INTT);
topic.setShenhe_type(CommonConst.AUDIT_TYPE_USER);
}
topicService.updateshyTopic(shyTopic);
}
}