Commit 1af32241 authored by 陈立彬's avatar 陈立彬

出题

parent 2051ae55
package cn.aibreeze.exam.api; package cn.aibreeze.exam.api;
import cn.aibreeze.exam.dto.ApiResponse; import cn.aibreeze.exam.dto.ApiResponse;
import cn.aibreeze.exam.dto.GetQuestionResponseResult;
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.ElehKnowledgeTagDo;
...@@ -40,17 +41,29 @@ public class ExamController { ...@@ -40,17 +41,29 @@ public class ExamController {
} }
@GetMapping(value = "/get_question") @GetMapping(value = "/get_question")
public ApiResponse<ElehKnowledgeDo> getQuestion(@RequestParam("tenant") Integer tenant, public ApiResponse<GetQuestionResponseResult> getQuestion(@RequestParam("tenant") Integer tenant,
@RequestParam("code") String code, @RequestParam("code") String code,
@RequestParam("session_id") String sessionId, @RequestParam("session_id") String sessionId,
@RequestParam("user_id") String userId) { @RequestParam("user_id") String userId) {
GetQuestionResponseResult result = new GetQuestionResponseResult();
// 根据分类获取考题
ElehKnowledgeTagDo tagDo = tagMapper.selectByCode(tenant, code); ElehKnowledgeTagDo tagDo = tagMapper.selectByCode(tenant, code);
if(Objects.nonNull(tagDo)) {
Long maxQuestionId = qaRecordMapper.selectSessionMaxQuestionId(tenant, sessionId, userId);
maxQuestionId = Objects.nonNull(maxQuestionId) ? maxQuestionId : 0;
ElehKnowledgeDo knowledgeDo = knowledgeMapper.selectQuestion(tenant, tagDo.getId(), maxQuestionId);
if(Objects.nonNull(knowledgeDo)) {
result.setQuestion(knowledgeDo.getQuestion());
result.setAnswer(knowledgeDo.getAnswer());
result.setProject(tagDo.getName());
result.setCode(tagDo.getCode());
result.setNext(true);
}
}
Long maxQuestionId = qaRecordMapper.selectSessionMaxQuestionId(tenant, sessionId, userId); return ApiResponse.ok(result);
maxQuestionId = Objects.nonNull(maxQuestionId) ? maxQuestionId : 0;
ElehKnowledgeDo knowledgeDo = knowledgeMapper.selectQuestion(tenant, tagDo.getId(), maxQuestionId);
return ApiResponse.ok(knowledgeDo);
} }
@PostMapping(value = "update_question") @PostMapping(value = "update_question")
......
package cn.aibreeze.exam.dto;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class GetQuestionResponseResult implements Serializable {
@JsonProperty("question_id")
private Long questionId;
private String question;
private String answer;
private String project;
private String code;
private boolean next = false;
}
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