Browse Source

0813v1.0

master
zy_Java 5 years ago
parent
commit
cb77392a3e
  1. 4
      mt/src/main/java/com/ccsens/mt/bean/dto/TopicDto.java
  2. 17
      mt/src/main/java/com/ccsens/mt/persist/dao/GroupDao.java
  3. 21
      mt/src/main/java/com/ccsens/mt/service/TopicService.java
  4. 18
      mt/src/main/java/com/ccsens/mt/util/Constant.java
  5. 23
      mt/src/main/resources/mapper_dao/GroupDao.xml

4
mt/src/main/java/com/ccsens/mt/bean/dto/TopicDto.java

@ -64,8 +64,12 @@ public class TopicDto {
@Data
@ApiModel("题目id")
public static class Topic{
@NotNull
@ApiModelProperty("题目id")
private Long topicId;
@NotNull
@ApiModelProperty("项目ID")
private Long projectId;
}
@Data

17
mt/src/main/java/com/ccsens/mt/persist/dao/GroupDao.java

@ -0,0 +1,17 @@
package com.ccsens.mt.persist.dao;
import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.vo.TopicVo;
/**
* 答题项目
* @author whj
*/
public interface GroupDao {
/**
* 查询抢答成功的组信息
* @param topic 抢答条件
* @return
*/
TopicVo.GroupInfo getResponder(TopicDto.Topic topic);
}

21
mt/src/main/java/com/ccsens/mt/service/TopicService.java

@ -3,6 +3,9 @@ package com.ccsens.mt.service;
import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.vo.TopicVo;
import com.ccsens.mt.persist.dao.TopicDao;
import com.ccsens.mt.persist.dao.GroupDao;
import com.ccsens.mt.util.Constant;
import com.ccsens.util.RedisUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@ -15,9 +18,15 @@ import java.util.List;
@Service
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public class TopicService implements ITopicService{
@Resource
private TopicDao topicDao;
@Resource
private RedisUtil redisUtil;
@Resource
private GroupDao groupDao;
@Override
public TopicVo.TopicInfo getTopicByLink(TopicDto.GetTopic getTopic) {
log.info("查询题目:{}",getTopic.toString());
@ -41,7 +50,7 @@ public class TopicService implements ITopicService{
@Override
public void responderStart(TopicDto.Topic topic) {
redisUtil.set(topic.getProjectId()+ Constant.Redis.START_QUESTION,topic.getProjectId(), Constant.Redis.TIME_OUT);
}
@Override
@ -51,7 +60,15 @@ public class TopicService implements ITopicService{
@Override
public TopicVo.GroupInfo getResponder(TopicDto.Topic topic) {
return null;
log.info("查询抢答成功的组请求:{}", topic);
Object o = redisUtil.get(topic.getProjectId() + Constant.Redis.RESPONDER + topic.getTopicId());
log.info("缓存:{}", o);
if (o!=null) {
return (TopicVo.GroupInfo)o;
}
TopicVo.GroupInfo info = groupDao.getResponder(topic);
log.info("查询抢答成功的组:{}", info);
return info;
}
@Override

18
mt/src/main/java/com/ccsens/mt/util/Constant.java

@ -0,0 +1,18 @@
package com.ccsens.mt.util;
/**
* @description:
* @author: whj
* @time: 2020/8/13 17:14
*/
public class Constant {
public static class Redis{
// 项目正在进行中的题目 项目ID_start_question
public final static String START_QUESTION = "_start_question";
// 有效期10分钟
public final static long TIME_OUT = 10 * 60;
// 抢答成功的队伍 项目ID_responder_题目ID
public final static String RESPONDER = "_responder_";
}
}

23
mt/src/main/resources/mapper_dao/GroupDao.xml

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.mt.persist.dao.GroupDao">
<select id="getResponder" resultType="com.ccsens.mt.bean.vo.TopicVo$GroupInfo">
SELECT
g.id as groupId,
g.NAME as groupName
FROM
t_mt_responder r,
t_mt_group g
WHERE
r.group_id = g.id
AND g.project_id = 1
AND r.topic_id = 1
AND r.rec_status = 0
AND g.rec_status = 0
ORDER BY
r.created_at DESC
LIMIT 1
</select>
</mapper>
Loading…
Cancel
Save