Browse Source

查询全部试题

master
zhizhi wu 5 years ago
parent
commit
8305f4a25e
  1. 4
      mt/src/main/java/com/ccsens/mt/bean/dto/TopicDto.java
  2. 2
      mt/src/main/java/com/ccsens/mt/bean/vo/TopicVo.java
  3. 17
      mt/src/main/java/com/ccsens/mt/persist/dao/TopicDao.java
  4. 6
      mt/src/main/java/com/ccsens/mt/service/TopicService.java
  5. 4
      mt/src/main/resources/mapper_dao/GroupDao.xml
  6. 36
      mt/src/main/resources/mapper_dao/TopicDao.xml

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

@ -90,6 +90,10 @@ public class TopicDto {
@Data
@ApiModel("查询所有绝地反击的题")
public static class GetTopicAll{
@NotNull
@ApiModelProperty("项目id")
private Long projectId;
@ApiModelProperty("比赛环节 1志在必得 2以快制胜 3绝地反击 4你说我猜 默认查询绝地反击")
private int linkType = 3;
@Max(50)

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

@ -1,5 +1,6 @@
package com.ccsens.mt.bean.vo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -51,6 +52,7 @@ public class TopicVo {
@Data
@ApiModel("查询到的所有绝地反击的题")
@JsonIgnoreProperties(value = { "handler" })
public static class TopicByLink{
@ApiModelProperty("题目id")
private Long topicId;

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

@ -1,10 +1,13 @@
package com.ccsens.mt.persist.dao;
import com.ccsens.mt.bean.dto.TopicDto;
import com.ccsens.mt.bean.vo.TopicVo;
import com.ccsens.mt.persist.mapper.MtTopicMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author
*/
@ -17,4 +20,18 @@ public interface TopicDao extends MtTopicMapper {
* @return 返回题目信息
*/
TopicVo.TopicInfo getTopicByLink(@Param("linkType") int linkType, @Param("topicNum")int topicNum);
/**
* 查询所有绝地反击类型的题
* @param getTopicAll 请求类型
* @return 试题信息
*/
List<TopicVo.TopicByLink> queryTopicAllByLink(TopicDto.GetTopicAll getTopicAll);
/**
* 根据试题ID查询选项
* @param topicId 试题ID
* @return 选项
*/
List<String> queryOption(@Param("topicId") Long topicId);
}

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

@ -74,8 +74,8 @@ public class TopicService implements ITopicService{
@Override
public List<TopicVo.TopicByLink> queryTopicAllByLink(TopicDto.GetTopicAll getTopicAll) {
log.info("查询所有绝地反击类型的题请求参数:{}", getTopicAll);
return null;
List<TopicVo.TopicByLink> list = topicDao.queryTopicAllByLink(getTopicAll);
log.info("所有绝地反击题:{}", list);
return list;
}
}

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

@ -12,8 +12,8 @@
t_mt_group g
WHERE
r.group_id = g.id
AND g.project_id = 1
AND r.topic_id = 1
AND g.project_id = #{projectId}
AND r.topic_id = #{topicId}
AND r.rec_status = 0
AND g.rec_status = 0
ORDER BY

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

@ -10,6 +10,14 @@
<id column="options"/>
</collection>
</resultMap>
<resultMap id="topicByLink" type="com.ccsens.mt.bean.vo.TopicVo$TopicByLink" >
<id column="topicId" property="topicId"/>
<result column="description" property="description"/>
<result column="answersTrue" property="answersTrue"/>
<result column="hasAnswers" property="hasAnswers"/>
<collection property="options" ofType="String" column="topicId" select="queryOption">
</collection>
</resultMap>
<select id="getTopicByLink" parameterType="java.util.Map" resultMap="getTopicByLink">
@ -28,5 +36,33 @@
t.sequence = #{topicNum}
ORDER BY o.sequence
</select>
<select id="queryTopicAllByLink" resultMap="topicByLink">
SELECT
p.id AS topicId,
p.score AS topicScore,
p.description as description,
p.answers as answersTrue,
IF( gp.id IS NULL, 0, 1 ) as hasAnswers
FROM
t_mt_topic p
LEFT JOIN t_mt_group_topic gp ON p.id = gp.topic_id
LEFT JOIN t_mt_group g ON gp.group_id = g.id
WHERE
p.link_type = #{linkType}
and p.rec_status = 0
and (g.project_id = #{projectId} or g.id is null)
and (gp.rec_status = 0 or gp.id is null)
and (g.rec_status = 0 or gp.id is null)
GROUP BY p.id
LIMIT ${nums}
</select>
<select id="queryOption" resultType="java.lang.String">
SELECT
concat( o.`option`, ':', o.contant )
FROM
t_mt_topic_option o
WHERE
o.topic_id = #{topicId}
</select>
</mapper>
Loading…
Cancel
Save