diff --git a/ruoyi-exam/src/main/java/com/ruoyi/exam/controller/ApiPracticeController.java b/ruoyi-exam/src/main/java/com/ruoyi/exam/controller/ApiPracticeController.java index 7cdb5bf64..ff8f3478b 100644 --- a/ruoyi-exam/src/main/java/com/ruoyi/exam/controller/ApiPracticeController.java +++ b/ruoyi-exam/src/main/java/com/ruoyi/exam/controller/ApiPracticeController.java @@ -1,16 +1,19 @@ package com.ruoyi.exam.controller; import com.ruoyi.exam.domain.ExamPractice; +import com.ruoyi.exam.domain.ExamPracticeQuestion; +import com.ruoyi.exam.domain.ExamPracticeQuestionVO; +import com.ruoyi.exam.domain.ExamQuestion; +import com.ruoyi.exam.service.IExamPracticeQuestionService; import com.ruoyi.exam.service.IExamPracticeService; +import com.ruoyi.exam.service.IExamQuestionService; import com.ruoyi.framework.web.base.BaseController; import com.ruoyi.framework.web.page.TableDataInfo; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; import java.util.List; /** @@ -18,12 +21,18 @@ import java.util.List; */ @Api("练习") @RestController -@RequestMapping("/api/practice") +@RequestMapping("/api/v1/practice") public class ApiPracticeController extends BaseController { @Autowired private IExamPracticeService examPracticeService; + @Autowired + private IExamPracticeQuestionService examPracticeQuestionService; + + @Autowired + private IExamQuestionService examQuestionService; + @PostMapping("/list") public TableDataInfo list(ExamPractice examPractice) { @@ -32,4 +41,17 @@ public class ApiPracticeController extends BaseController { return getDataTable( list ); } + @GetMapping("/queryone/question/{id}") + public TableDataInfo queryOne(@PathVariable("id") Integer id) { + ExamPracticeQuestionVO examPracticeQuestion = new ExamPracticeQuestionVO(); + examPracticeQuestion.setId(id); + List list = examPracticeQuestionService.selectExamPracticeQuestionList(examPracticeQuestion); + List ids = new ArrayList<>(); + for (ExamPracticeQuestionVO item : list) { + ids.add(item.getExamQuestionId().toString()); + } + List result = examQuestionService.selectByIdsPage(ids); + return getDataTable( result ); + } + } diff --git a/ruoyi-exam/src/main/java/com/ruoyi/exam/service/IExamQuestionService.java b/ruoyi-exam/src/main/java/com/ruoyi/exam/service/IExamQuestionService.java index 4c8c556e2..24926d344 100644 --- a/ruoyi-exam/src/main/java/com/ruoyi/exam/service/IExamQuestionService.java +++ b/ruoyi-exam/src/main/java/com/ruoyi/exam/service/IExamQuestionService.java @@ -62,4 +62,6 @@ public interface IExamQuestionService extends AbstractBaseService List selectQuestionList(ExamQuestion examQuestion); List selectListBycategory(ExamQuestion examQuestion); + + List selectByIdsPage(List ids); } diff --git a/ruoyi-exam/src/main/java/com/ruoyi/exam/service/impl/ExamQuestionServiceImpl.java b/ruoyi-exam/src/main/java/com/ruoyi/exam/service/impl/ExamQuestionServiceImpl.java index 78479037b..b9758d34a 100644 --- a/ruoyi-exam/src/main/java/com/ruoyi/exam/service/impl/ExamQuestionServiceImpl.java +++ b/ruoyi-exam/src/main/java/com/ruoyi/exam/service/impl/ExamQuestionServiceImpl.java @@ -161,4 +161,16 @@ public class ExamQuestionServiceImpl extends AbstractBaseServiceImpl selectByIdsPage(List ids) { + StringBuffer sb = new StringBuffer(); + for (String id : ids) { + sb.append(id+","); + } + String substring = sb.substring(0, sb.length() - 1); + startPage(); + return examQuestionMapper.selectByIds(substring.toString()); + + } + }