Commit 6d10f2bf authored by 陈立彬's avatar 陈立彬

根据code获取考题

parent b821e30e
...@@ -3,6 +3,7 @@ package cn.aibreeze.exam.api; ...@@ -3,6 +3,7 @@ package cn.aibreeze.exam.api;
import cn.aibreeze.exam.dto.ApiResponse; import cn.aibreeze.exam.dto.ApiResponse;
import cn.aibreeze.exam.dto.UpdateQuestionRequestDto; import cn.aibreeze.exam.dto.UpdateQuestionRequestDto;
import cn.aibreeze.exam.entity.ElehKnowledgeDo; import cn.aibreeze.exam.entity.ElehKnowledgeDo;
import cn.aibreeze.exam.entity.ElehKnowledgeTagDo;
import cn.aibreeze.exam.entity.ElehSessionQaRecordDo; import cn.aibreeze.exam.entity.ElehSessionQaRecordDo;
import cn.aibreeze.exam.mapper.ElehKnowledgeMapper; import cn.aibreeze.exam.mapper.ElehKnowledgeMapper;
import cn.aibreeze.exam.mapper.ElehKnowledgeTagMapper; import cn.aibreeze.exam.mapper.ElehKnowledgeTagMapper;
...@@ -40,12 +41,15 @@ public class ExamController { ...@@ -40,12 +41,15 @@ public class ExamController {
@GetMapping(value = "/get_question") @GetMapping(value = "/get_question")
public ApiResponse<ElehKnowledgeDo> getQuestion(@RequestParam("tenant") Integer tenant, public ApiResponse<ElehKnowledgeDo> getQuestion(@RequestParam("tenant") Integer tenant,
@RequestParam("code") String code,
@RequestParam("session_id") String sessionId, @RequestParam("session_id") String sessionId,
@RequestParam("user_id") String userId) { @RequestParam("user_id") String userId) {
ElehKnowledgeTagDo tagDo = tagMapper.selectByCode(tenant, code);
Long maxQuestionId = qaRecordMapper.selectSessionMaxQuestionId(tenant, sessionId, userId); Long maxQuestionId = qaRecordMapper.selectSessionMaxQuestionId(tenant, sessionId, userId);
maxQuestionId = Objects.nonNull(maxQuestionId) ? maxQuestionId : 0; maxQuestionId = Objects.nonNull(maxQuestionId) ? maxQuestionId : 0;
ElehKnowledgeDo knowledgeDo = knowledgeMapper.selectQuestion(tenant, maxQuestionId); ElehKnowledgeDo knowledgeDo = knowledgeMapper.selectQuestion(tenant, tagDo.getId(), maxQuestionId);
return ApiResponse.ok(knowledgeDo); return ApiResponse.ok(knowledgeDo);
} }
......
...@@ -9,7 +9,7 @@ import org.apache.ibatis.annotations.Select; ...@@ -9,7 +9,7 @@ import org.apache.ibatis.annotations.Select;
@Mapper @Mapper
public interface ElehKnowledgeMapper extends BaseMapper<ElehKnowledgeDo> { public interface ElehKnowledgeMapper extends BaseMapper<ElehKnowledgeDo> {
@Select(value = "select * from eleh_knowledge where tenant = #{tenant} and id > #{questionId} order by id ASC limit 1") @Select(value = "select * from eleh_knowledge where tenant = #{tenant} and tag_id = #{tagId} and id > #{questionId} order by id ASC limit 1")
ElehKnowledgeDo selectQuestion(@Param("tenant") Integer tenant, @Param("questionId") Long questionId); ElehKnowledgeDo selectQuestion(@Param("tenant") Integer tenant, @Param("tagId") Long tagId, @Param("questionId") Long questionId);
} }
package cn.aibreeze.exam.mapper; package cn.aibreeze.exam.mapper;
import cn.aibreeze.exam.entity.ElehKnowledgeDo;
import cn.aibreeze.exam.entity.ElehKnowledgeTagDo; import cn.aibreeze.exam.entity.ElehKnowledgeTagDo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@Mapper @Mapper
public interface ElehKnowledgeTagMapper extends BaseMapper<ElehKnowledgeTagDo> { public interface ElehKnowledgeTagMapper extends BaseMapper<ElehKnowledgeTagDo> {
@Select(value = "select * from eleh_knowledge_tag where tenant = #{tenant} and code = #{code} order by id ASC limit 1")
ElehKnowledgeTagDo selectByCode(@Param("tenant") Integer tenant, @Param("code") String code);
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment