Browse Source

0814_1.0

master
zy_Java 5 years ago
parent
commit
3a89d50ea0
  1. 13
      mt/src/main/java/com/ccsens/mt/api/TopicController.java
  2. 3
      mt/src/main/java/com/ccsens/mt/api/VoteController.java
  3. 14
      mt/src/main/java/com/ccsens/mt/bean/dto/TopicDto.java
  4. 26
      mt/src/main/java/com/ccsens/mt/bean/vo/TopicVo.java
  5. 15
      mt/src/main/java/com/ccsens/mt/persist/dao/TopicDao.java
  6. 30
      mt/src/main/java/com/ccsens/mt/persist/dao/VoteDao.java
  7. 17
      mt/src/main/java/com/ccsens/mt/service/ITopicService.java
  8. 4
      mt/src/main/java/com/ccsens/mt/service/IVoteService.java
  9. 4
      mt/src/main/java/com/ccsens/mt/service/MessageServicer.java
  10. 3
      mt/src/main/java/com/ccsens/mt/service/ScoreService.java
  11. 3
      mt/src/main/java/com/ccsens/mt/service/SigninService.java
  12. 39
      mt/src/main/java/com/ccsens/mt/service/TopicService.java
  13. 3
      mt/src/main/java/com/ccsens/mt/service/UserService.java
  14. 66
      mt/src/main/java/com/ccsens/mt/service/VoteService.java
  15. 2
      mt/src/main/java/com/ccsens/mt/util/Constant.java
  16. 4
      mt/src/main/resources/application.yml
  17. 1
      mt/src/main/resources/mapper_dao/GroupDao.xml
  18. 27
      mt/src/main/resources/mapper_dao/TopicDao.xml
  19. 34
      mt/src/main/resources/mapper_dao/VoteDao.xml
  20. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

13
mt/src/main/java/com/ccsens/mt/api/TopicController.java

@ -3,6 +3,7 @@ package com.ccsens.mt.api;
import com.ccsens.mt.bean.dto.TopicDto; import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.vo.TopicVo; import com.ccsens.mt.bean.vo.TopicVo;
import com.ccsens.mt.service.ITopicService; import com.ccsens.mt.service.ITopicService;
import com.ccsens.util.CodeEnum;
import com.ccsens.util.JsonResponse; import com.ccsens.util.JsonResponse;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
@ -69,6 +70,16 @@ public class TopicController {
return JsonResponse.newInstance().ok(queryRankings); return JsonResponse.newInstance().ok(queryRankings);
} }
@ApiOperation(value = "晋级", notes = "")
@ApiImplicitParams({
})
@RequestMapping(value = "/promoted", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse promoted(@RequestBody @ApiParam @Validated TopicDto.Promoted promoted) throws Exception {
log.info("查排名:{}",promoted.toString());
CodeEnum codeEnum = topicService.promoted(promoted);
return JsonResponse.newInstance().ok(codeEnum);
}
@ApiOperation(value = "选手抢答", notes = "") @ApiOperation(value = "选手抢答", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
}) })
@ -80,7 +91,6 @@ public class TopicController {
} }
/*=============================================================================*/
@ApiOperation(value = "主持人在大屏点击开始抢答(倒计时结束后)", notes = "") @ApiOperation(value = "主持人在大屏点击开始抢答(倒计时结束后)", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
}) })
@ -100,6 +110,7 @@ public class TopicController {
public JsonResponse<TopicVo.GroupInfo> getResponder(@RequestBody @ApiParam @Validated TopicDto.Topic topic) throws Exception { public JsonResponse<TopicVo.GroupInfo> getResponder(@RequestBody @ApiParam @Validated TopicDto.Topic topic) throws Exception {
log.info("查询抢答成功的组:{}",topic.toString()); log.info("查询抢答成功的组:{}",topic.toString());
TopicVo.GroupInfo group = topicService.getResponder(topic); TopicVo.GroupInfo group = topicService.getResponder(topic);
return JsonResponse.newInstance().ok(group); return JsonResponse.newInstance().ok(group);
} }

3
mt/src/main/java/com/ccsens/mt/api/VoteController.java

@ -43,14 +43,13 @@ public class VoteController {
return JsonResponse.newInstance().ok(); return JsonResponse.newInstance().ok();
} }
@MustLogin
@ApiOperation(value = "查询投票结果", notes = "") @ApiOperation(value = "查询投票结果", notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
}) })
@RequestMapping(value = "/get", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @RequestMapping(value = "/get", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<VoteVo.GroupInfo>> queryVote(@RequestBody @ApiParam @Validated QueryDto<TopicDto.Project> params) throws Exception { public JsonResponse<List<VoteVo.GroupInfo>> queryVote(@RequestBody @ApiParam @Validated QueryDto<TopicDto.Project> params) throws Exception {
log.info("查询投票结果:{}",params.toString()); log.info("查询投票结果:{}",params.toString());
List<VoteVo.GroupInfo> groupInfoList = voteService.queryVote(params); List<VoteVo.GroupInfo> groupInfoList = voteService.queryVote(params.getParam());
return JsonResponse.newInstance().ok(groupInfoList); return JsonResponse.newInstance().ok(groupInfoList);
} }

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

@ -24,6 +24,9 @@ public class TopicDto {
@NotNull @NotNull
@ApiModelProperty("当前环节的题号") @ApiModelProperty("当前环节的题号")
private int topicNum; private int topicNum;
@NotNull
@ApiModelProperty("项目ID")
private long projectId;
} }
@Data @Data
@ -69,6 +72,17 @@ public class TopicDto {
private int linkType; private int linkType;
} }
@Data
@ApiModel("晋级")
public static class Promoted{
@ApiModelProperty("晋级 1志在必得 2以快制胜 3绝地反击 4你说我猜")
@Min(1)
@Max(4)
private Byte linkTypes;
@ApiModelProperty("分组ID")
private List<Long> groupIds;
}
@Data @Data
@ApiModel("题目id") @ApiModel("题目id")
public static class Topic{ public static class Topic{

26
mt/src/main/java/com/ccsens/mt/bean/vo/TopicVo.java

@ -24,6 +24,32 @@ public class TopicVo {
private List<String> options; private List<String> options;
@ApiModelProperty("正确答案") @ApiModelProperty("正确答案")
private String answersTrue; private String answersTrue;
@ApiModelProperty("题号")
private int sequence;
@ApiModelProperty("有无上一个:0:无 1:有")
private Byte prev;
@ApiModelProperty("有无下一个:0:无 1:有")
private Byte next;
@ApiModelProperty("答案")
private List<Answer> answers;
}
@Data
@ApiModel("最小和最大题号")
public static class TopicSequence{
@ApiModelProperty("最小题号")
private Integer min ;
@ApiModelProperty("最大题号")
private Integer max ;
}
public static class Answer{
@ApiModelProperty("分组ID")
private Long groupId;
@ApiModelProperty("分组的名字")
private String groupName;
@ApiModelProperty("答案")
private String answer;
} }
@Data @Data

15
mt/src/main/java/com/ccsens/mt/persist/dao/TopicDao.java

@ -29,6 +29,14 @@ public interface TopicDao extends MtTopicMapper {
* @return * @return
*/ */
List<TopicVo.GroupInfo> queryGroupByProject(@Param("projectId")Long projectId, @Param("linkType")int linkType, @Param("type")int type); List<TopicVo.GroupInfo> queryGroupByProject(@Param("projectId")Long projectId, @Param("linkType")int linkType, @Param("type")int type);
/**
* 查询答案
* @param projectId
* @param topicId
* @return
*/
List<TopicVo.Answer> queryAnswer(@Param("projectId") Long projectId, @Param("topicId")Long topicId);
/** /**
* 查询所有绝地反击类型的题 * 查询所有绝地反击类型的题
* @param getTopicAll 请求类型 * @param getTopicAll 请求类型
@ -44,10 +52,17 @@ public interface TopicDao extends MtTopicMapper {
List<String> queryOption(@Param("topicId") Long topicId); List<String> queryOption(@Param("topicId") Long topicId);
/** /**
<<<<<<< HEAD
* 查询当前阶段的排名 * 查询当前阶段的排名
* @param projectId 项目id * @param projectId 项目id
* @param linkType 阶段类型 * @param linkType 阶段类型
* @return 返回排名按分数从大到小排列 * @return 返回排名按分数从大到小排列
*/ */
List<TopicVo.QueryRanking> queryRanking(@Param("projectId")Long projectId, @Param("linkType")int linkType); List<TopicVo.QueryRanking> queryRanking(@Param("projectId")Long projectId, @Param("linkType")int linkType);
/**
* 查询该类型下最小最大题号
* @param linkType 类型
* @return 最小 最大
*/
TopicVo.TopicSequence getMinAndMax(@Param("linkType") int linkType);
} }

30
mt/src/main/java/com/ccsens/mt/persist/dao/VoteDao.java

@ -0,0 +1,30 @@
package com.ccsens.mt.persist.dao;
import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.vo.VoteVo;
import com.ccsens.mt.persist.mapper.MtVoteMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @description: 投票
* @author: whj
* @time: 2020/8/13 18:52
*/
public interface VoteDao extends MtVoteMapper {
/**
* 查看投票结果
* @param params
* @return
*/
List<VoteVo.GroupInfo> queryVote(TopicDto.Project params);
/**
* 判断是否已经在当前项目中投票
* @param userId
* @param projectId
* @return
*/
long countUserVoteNums(@Param("userId") Long userId, @Param("projectId") Long projectId);
}

17
mt/src/main/java/com/ccsens/mt/service/ITopicService.java

@ -2,9 +2,13 @@ package com.ccsens.mt.service;
import com.ccsens.mt.bean.dto.TopicDto; import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.vo.TopicVo; import com.ccsens.mt.bean.vo.TopicVo;
import com.ccsens.util.CodeEnum;
import java.util.List; import java.util.List;
/**
* @author zy
*/
public interface ITopicService { public interface ITopicService {
/** /**
* 通过比赛环节查询题目 * 通过比赛环节查询题目
@ -53,9 +57,16 @@ public interface ITopicService {
TopicVo.GroupInfo getResponder(TopicDto.Topic topic); TopicVo.GroupInfo getResponder(TopicDto.Topic topic);
/** /**
* 查询所有绝地反击类型的 * 根据类型和数量查询试
* @param getTopicAll * @param getTopicAll 类型
* @return * @return 试题
*/ */
List<TopicVo.TopicByLink> queryTopicAllByLink(TopicDto.GetTopicAll getTopicAll); List<TopicVo.TopicByLink> queryTopicAllByLink(TopicDto.GetTopicAll getTopicAll);
/**
* 晋级
* @param promoted 晋级组信息
* @return 结果
*/
CodeEnum promoted(TopicDto.Promoted promoted);
} }

4
mt/src/main/java/com/ccsens/mt/service/IVoteService.java

@ -15,8 +15,8 @@ public interface IVoteService {
/** /**
* 查看投票结果 * 查看投票结果
* @param params * @param project
* @return * @return
*/ */
List<VoteVo.GroupInfo> queryVote(QueryDto<TopicDto.Project> params); List<VoteVo.GroupInfo> queryVote(TopicDto.Project project);
} }

4
mt/src/main/java/com/ccsens/mt/service/MessageServicer.java

@ -10,8 +10,12 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate; import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
@Slf4j @Slf4j
@Service @Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class MessageServicer implements IMessageService{ public class MessageServicer implements IMessageService{
@Autowired @Autowired
private AmqpTemplate rabbitTemplate; private AmqpTemplate rabbitTemplate;

3
mt/src/main/java/com/ccsens/mt/service/ScoreService.java

@ -30,6 +30,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.DefaultResourceLoader; import org.springframework.core.io.DefaultResourceLoader;
import org.springframework.core.io.ResourceLoader; import org.springframework.core.io.ResourceLoader;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.io.*; import java.io.*;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -38,6 +40,7 @@ import java.util.*;
import static java.math.BigDecimal.ROUND_HALF_UP; import static java.math.BigDecimal.ROUND_HALF_UP;
@Service @Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class ScoreService implements IScoreService { public class ScoreService implements IScoreService {
@Autowired @Autowired
private TallFeignClient tallFeignClient; private TallFeignClient tallFeignClient;

3
mt/src/main/java/com/ccsens/mt/service/SigninService.java

@ -15,11 +15,14 @@ import com.ccsens.util.CodeEnum;
import com.ccsens.util.exception.BaseException; import com.ccsens.util.exception.BaseException;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@Service @Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class SigninService implements ISigninService{ public class SigninService implements ISigninService{
@Autowired @Autowired
private MtSigninDao mtSigninDao; private MtSigninDao mtSigninDao;

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

@ -5,11 +5,13 @@ import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.ccsens.mt.bean.dto.TopicDto; import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.po.*; import com.ccsens.mt.bean.po.*;
import com.ccsens.mt.bean.po.MtGroup;
import com.ccsens.mt.bean.vo.TopicVo; import com.ccsens.mt.bean.vo.TopicVo;
import com.ccsens.mt.persist.dao.GroupDao; import com.ccsens.mt.persist.dao.GroupDao;
import com.ccsens.mt.persist.dao.GroupTopicDao; import com.ccsens.mt.persist.dao.GroupTopicDao;
import com.ccsens.mt.persist.dao.TopicDao; import com.ccsens.mt.persist.dao.TopicDao;
import com.ccsens.mt.persist.mapper.MtResponderMapper; import com.ccsens.mt.persist.mapper.MtResponderMapper;
import com.ccsens.mt.persist.mapper.MtGroupMapper;
import com.ccsens.mt.util.Constant; import com.ccsens.mt.util.Constant;
import com.ccsens.util.CodeEnum; import com.ccsens.util.CodeEnum;
import com.ccsens.util.RedisUtil; import com.ccsens.util.RedisUtil;
@ -39,11 +41,25 @@ public class TopicService implements ITopicService{
private GroupTopicDao groupTopicDao; private GroupTopicDao groupTopicDao;
@Resource @Resource
private MtResponderMapper mtResponderMapper; private MtResponderMapper mtResponderMapper;
@Resource
private MtGroupMapper mtGroupMapper;
@Override @Override
public TopicVo.TopicInfo getTopicByLink(TopicDto.GetTopic getTopic) { public TopicVo.TopicInfo getTopicByLink(TopicDto.GetTopic getTopic) {
log.info("查询题目:{}",getTopic.toString()); log.info("查询题目:{}",getTopic.toString());
return topicDao.getTopicByLink(getTopic.getLinkType(),getTopic.getTopicNum()); TopicVo.TopicInfo topicInfo = topicDao.getTopicByLink(getTopic.getLinkType(), getTopic.getTopicNum());
if (topicInfo == null) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
// 查询做题答案
List<TopicVo.Answer> answers = topicDao.queryAnswer(getTopic.getProjectId(), topicInfo.getTopicId());
// 查询是否有最小最大序号
TopicVo.TopicSequence sequence = topicDao.getMinAndMax(getTopic.getLinkType());
topicInfo.setAnswers(answers);
topicInfo.setPrev(topicInfo.getSequence() == sequence.getMin() ? (byte)0 : 1);
topicInfo.setNext(topicInfo.getSequence() == sequence.getMax() ? (byte)0 : 1);
return topicInfo;
} }
@Override @Override
@ -177,7 +193,14 @@ public class TopicService implements ITopicService{
Object o = redisUtil.get(topic.getProjectId() + Constant.Redis.RESPONDER + topic.getTopicId()); Object o = redisUtil.get(topic.getProjectId() + Constant.Redis.RESPONDER + topic.getTopicId());
log.info("缓存:{}", o); log.info("缓存:{}", o);
if (o!=null) { if (o!=null) {
return (TopicVo.GroupInfo)o; MtGroup mtGroup = mtGroupMapper.selectByPrimaryKey((Long) o);
if (mtGroup == null) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
TopicVo.GroupInfo info = new TopicVo.GroupInfo();
info.setGroupId(mtGroup.getId());
info.setGroupName(mtGroup.getName());
return info;
} }
TopicVo.GroupInfo info = groupDao.getResponder(topic); TopicVo.GroupInfo info = groupDao.getResponder(topic);
log.info("查询抢答成功的组:{}", info); log.info("查询抢答成功的组:{}", info);
@ -191,4 +214,16 @@ public class TopicService implements ITopicService{
log.info("所有绝地反击题:{}", list); log.info("所有绝地反击题:{}", list);
return list; return list;
} }
@Override
public CodeEnum promoted(TopicDto.Promoted promoted) {
promoted.getGroupIds().forEach(groupId -> {
MtGroup mtGroup = new MtGroup();
mtGroup.setId(groupId);
mtGroup.setAdvanceStatus(promoted.getLinkTypes());
mtGroupMapper.updateByPrimaryKeySelective(mtGroup);
});
return CodeEnum.SUCCESS;
}
} }

3
mt/src/main/java/com/ccsens/mt/service/UserService.java

@ -10,11 +10,14 @@ import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
@Slf4j @Slf4j
@Service @Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class UserService implements IUserService{ public class UserService implements IUserService{
@Autowired @Autowired
private TallFeignClient tallFeignClient; private TallFeignClient tallFeignClient;

66
mt/src/main/java/com/ccsens/mt/service/VoteService.java

@ -1,21 +1,83 @@
package com.ccsens.mt.service; package com.ccsens.mt.service;
import cn.hutool.core.lang.Snowflake;
import com.ccsens.mt.bean.dto.TopicDto; import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.po.MtGroup;
import com.ccsens.mt.bean.po.MtVote;
import com.ccsens.mt.bean.vo.VoteVo; import com.ccsens.mt.bean.vo.VoteVo;
import com.ccsens.mt.persist.dao.VoteDao;
import com.ccsens.mt.persist.mapper.MtGroupMapper;
import com.ccsens.mt.util.Constant;
import com.ccsens.util.CodeEnum;
import com.ccsens.util.bean.dto.QueryDto; import com.ccsens.util.bean.dto.QueryDto;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List; import java.util.List;
@Slf4j
@Service @Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class VoteService implements IVoteService{ public class VoteService implements IVoteService{
@Resource
private VoteDao voteDao;
@Resource
private MtGroupMapper mtGroupMapper;
@Resource
private Snowflake snowflake;
@Override @Override
public void saveVote(QueryDto<List<TopicDto.Group>> params) { public void saveVote(QueryDto<List<TopicDto.Group>> params) {
Long projectId = null;
List<TopicDto.Group> groups = params.getParam();
//获取项目ID,并校验参数
if (groups == null || groups.size() != Constant.VOTE_TOTAL) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
for (TopicDto.Group group: groups) {
if (group == null || group.getGroupId() == null) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
MtGroup mtGroup = mtGroupMapper.selectByPrimaryKey(group.getGroupId());
if (mtGroup == null) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
if (projectId == null) {
projectId = mtGroup.getProjectId();
} else {
if (projectId.longValue() != mtGroup.getId().longValue()) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
}
}
// 判断是否在当前项目中已投
long count = voteDao.countUserVoteNums(params.getUserId(), projectId);
log.info("{}-{}投票数:{}", params.getUserId(), projectId, count);
if (count > 0) {
throw new BaseException(CodeEnum.VOTED);
}
groups.forEach(group -> {
MtVote mtVote = new MtVote();
mtVote.setId(snowflake.nextId());
mtVote.setGroupId(group.getGroupId());
mtVote.setUserId(params.getUserId());
voteDao.insertSelective(mtVote);
});
} }
@Override @Override
public List<VoteVo.GroupInfo> queryVote(QueryDto<TopicDto.Project> params) { public List<VoteVo.GroupInfo> queryVote(TopicDto.Project params) {
return null;
return voteDao.queryVote(params);
} }
} }

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

@ -15,4 +15,6 @@ public class Constant {
public final static String RESPONDER = "_responder_"; public final static String RESPONDER = "_responder_";
} }
public static final int VOTE_TOTAL = 2;
} }

4
mt/src/main/resources/application.yml

@ -1,4 +1,4 @@
spring: spring:
profiles: profiles:
active: dev active: test
include: common, util-dev include: common, util-test

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

@ -14,6 +14,7 @@
r.group_id = g.id r.group_id = g.id
AND g.project_id = #{projectId} AND g.project_id = #{projectId}
AND r.topic_id = #{topicId} AND r.topic_id = #{topicId}
AND g.type = 0
AND r.rec_status = 0 AND r.rec_status = 0
AND g.rec_status = 0 AND g.rec_status = 0
ORDER BY ORDER BY

27
mt/src/main/resources/mapper_dao/TopicDao.xml

@ -51,9 +51,11 @@
p.link_type = #{linkType} p.link_type = #{linkType}
and p.rec_status = 0 and p.rec_status = 0
and (g.project_id = #{projectId} or g.id is null) and (g.project_id = #{projectId} or g.id is null)
and (g.type = 0 or g.id is null)
and (gp.rec_status = 0 or gp.id is null) and (gp.rec_status = 0 or gp.id is null)
and (g.rec_status = 0 or gp.id is null) and (g.rec_status = 0 or gp.id is null)
GROUP BY p.id GROUP BY p.id
order by p.score
LIMIT ${nums} LIMIT ${nums}
</select> </select>
<select id="queryOption" resultType="java.lang.String"> <select id="queryOption" resultType="java.lang.String">
@ -64,6 +66,31 @@
WHERE WHERE
o.topic_id = #{topicId} o.topic_id = #{topicId}
</select> </select>
<select id="queryAnswer" resultType="com.ccsens.mt.bean.vo.TopicVo$Answer">
SELECT
g.id AS groupId,
g.NAME AS groupName,
t.answers AS answer
FROM
t_mt_group g,
t_mt_group_topic t
WHERE
g.id = t.group_id
AND g.project_id = #{projectId}
AND t.topic_id = #{topicId}
AND g.rec_status = 0
AND t.rec_status = 0
</select>
<select id="getMinAndMax" resultType="com.ccsens.mt.bean.vo.TopicVo$TopicSequence">
SELECT
min( sequence ) AS min,
max( sequence ) AS max
FROM
t_mt_topic
WHERE
link_type = #{linkType}
AND rec_status = 0
</select>
<select id="queryGroupByProject" parameterType="java.util.Map" resultType="com.ccsens.mt.bean.vo.TopicVo$GroupInfo"> <select id="queryGroupByProject" parameterType="java.util.Map" resultType="com.ccsens.mt.bean.vo.TopicVo$GroupInfo">
SELECT SELECT

34
mt/src/main/resources/mapper_dao/VoteDao.xml

@ -0,0 +1,34 @@
<?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.VoteDao">
<select id="queryVote" resultType="com.ccsens.mt.bean.vo.VoteVo$GroupInfo">
SELECT
g.id as groupId,
g.name as groupName,
count(*) as voteNums
FROM
t_mt_group g
LEFT JOIN t_mt_vote v ON g.id = v.group_id
WHERE
g.project_id = #{projectId}
AND g.type = 1
AND g.rec_status = 0
AND ( v.rec_status = 0 OR v.id IS NULL )
GROUP BY g.id, g.name
</select>
<select id="countUserVoteNums" resultType="java.lang.Long">
SELECT
count( * )
FROM
t_mt_vote v,
t_mt_group g
WHERE
v.group_id = g.id
AND v.user_id = #{userId}
AND g.project_id = #{projectId}
AND v.rec_status = 0
AND g.rec_status = 0
</select>
</mapper>

1
util/src/main/java/com/ccsens/util/CodeEnum.java

@ -131,6 +131,7 @@ public enum CodeEnum {
VERIFICATION_CODE_PAST(110,"验证码失效,请刷新重试",true), VERIFICATION_CODE_PAST(110,"验证码失效,请刷新重试",true),
VERIFICATION_CODE_ERROR(111,"验证码错误",true), VERIFICATION_CODE_ERROR(111,"验证码错误",true),
NOT_ROW(112,"该行不存在",true), NOT_ROW(112,"该行不存在",true),
VOTED(113,"对不起,您已经支持过看好的队伍了",true),
NOT_TOPIC(113,"找不到该题目",true), NOT_TOPIC(113,"找不到该题目",true),
NOT_GROUP(113,"找不到该组信息",true), NOT_GROUP(113,"找不到该组信息",true),

Loading…
Cancel
Save