diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/ExamDOController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/ExamDOController.java index 57ffa80..fd55bcb 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/ExamDOController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/ExamDOController.java @@ -12,6 +12,7 @@ import com.ruoyi.test.domain.Questionbank; import com.ruoyi.test.domain.Vo.ExamCreateVo; import com.ruoyi.test.domain.Vo.QuestionbankVo; import com.ruoyi.test.domain.Vo.QuestionbankVo1; +import com.ruoyi.test.domain.Vo.QuestionbankVo2; import com.ruoyi.test.seriver.IExamCreateService; import com.ruoyi.test.seriver.IExamDOService; import com.ruoyi.test.seriver.IExamPaperService; @@ -40,7 +41,7 @@ public class ExamDOController { @ApiOperation("题库列表") @GetMapping("selectList") - public R> selectList(int pagenum,int pagesize){ + public R> selectList(int pagenum, int pagesize){ return R.ok(iExamDOService.selectExamDoList(pagenum,pagesize)); } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionbankVo2.java b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionbankVo2.java new file mode 100644 index 0000000..bace822 --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionbankVo2.java @@ -0,0 +1,20 @@ +package com.ruoyi.test.domain.Vo; + +import lombok.Data; + +import java.util.List; +import java.util.Map; + +@Data +public class QuestionbankVo2 { + private Long id; + private Long questiontype; + private String subject; + private String content; + private List> chance; + private String answer; + private Double score; + private String analysis; + private Long difficulty; + private String createtime; +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IExamDOService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IExamDOService.java index 8517662..c8ff85f 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IExamDOService.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IExamDOService.java @@ -8,12 +8,13 @@ import com.ruoyi.test.domain.Questionbank; import com.ruoyi.test.domain.Vo.ExamCreateVo; import com.ruoyi.test.domain.Vo.QuestionbankVo; import com.ruoyi.test.domain.Vo.QuestionbankVo1; +import com.ruoyi.test.domain.Vo.QuestionbankVo2; import java.util.List; public interface IExamDOService { - IPage selectExamDoList(int pagenum,int pagesize); + IPage selectExamDoList(int pagenum, int pagesize); QuestionbankVo1 preview(Long id); diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/ExamDOServiceImpl.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/ExamDOServiceImpl.java index 62896e8..f0d41f0 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/ExamDOServiceImpl.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/ExamDOServiceImpl.java @@ -12,12 +12,10 @@ import com.ruoyi.test.domain.ExamCreate; import com.ruoyi.test.domain.ExamPaper; import com.ruoyi.test.domain.QuestionType; import com.ruoyi.test.domain.Questionbank; -import com.ruoyi.test.domain.Vo.ExamCreateVo; -import com.ruoyi.test.domain.Vo.QuestionanswerVo; -import com.ruoyi.test.domain.Vo.QuestionbankVo; -import com.ruoyi.test.domain.Vo.QuestionbankVo1; +import com.ruoyi.test.domain.Vo.*; import com.ruoyi.test.mapper.*; import com.ruoyi.test.seriver.IExamDOService; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.parameters.P; import org.springframework.stereotype.Service; @@ -60,31 +58,23 @@ public class ExamDOServiceImpl extends ServiceImpl impleme } @Override - public IPage selectExamDoList(int pagenum,int pagesize) { + public IPage selectExamDoList(int pagenum, int pagesize) { Page page = new Page<>(pagenum,pagesize); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - IPage iPage = questionbankMapper.selectPage(page,queryWrapper); - List list = new ArrayList<>(); - List questionbankList = page.getRecords(); + List list = new ArrayList<>(); + List questionbankList = questionbankMapper.selectList(queryWrapper); for(Questionbank questionbank : questionbankList){ - QuestionbankVo questionbankVo = new QuestionbankVo(); - questionbankVo.setId(questionbank.getId()); - questionbankVo.setQuestiontype(questionbank.getQuestiontype()); - questionbankVo.setContent(questionbank.getContent()); - String chance = questionbank.getChance(); + QuestionbankVo2 questionbankVo2 = new QuestionbankVo2(); + BeanUtils.copyProperties(questionbank,questionbankVo2); Gson gson = new Gson(); // 将 JSON 字符串转换为 List> - List> listMap = gson.fromJson(chance, List.class); - questionbankVo.setChance(listMap); - questionbankVo.setAnswer(questionbank.getAnswer()); - questionbankVo.setScore(questionbank.getScore()); - questionbankVo.setAnalysis(questionbank.getAnalysis()); - questionbankVo.setDifficulty(questionbank.getDifficulty()); - questionbankVo.setCreatetime(questionbank.getCreatetime()); - list.add(questionbankVo); + List> listMap = gson.fromJson(questionbank.getChance(), List.class); + questionbankVo2.setChance(listMap); + list.add(questionbankVo2); } - IPage pageVo = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); + IPage pageVo = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); pageVo.setRecords(list); + System.out.println("++++++++++++"+pageVo); return pageVo; } diff --git a/vue2/vue/package-lock.json b/vue2/vue/package-lock.json index 37a3d3b..eb6f08e 100644 --- a/vue2/vue/package-lock.json +++ b/vue2/vue/package-lock.json @@ -12,6 +12,7 @@ "core-js": "^3.39.0", "echarts": "^4.9.0", "element-ui": "^2.15.14", + "lodash": "^4.17.21", "vue": "^2.6.14", "vue-router": "^3.5.1", "vuex": "^3.6.2" @@ -6532,8 +6533,7 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "node_modules/lodash.debounce": { "version": "4.0.8", diff --git a/vue2/vue/package.json b/vue2/vue/package.json index 318e4fe..29d162d 100644 --- a/vue2/vue/package.json +++ b/vue2/vue/package.json @@ -11,6 +11,7 @@ "core-js": "^3.39.0", "echarts": "^4.9.0", "element-ui": "^2.15.14", + "lodash": "^4.17.21", "vue": "^2.6.14", "vue-router": "^3.5.1", "vuex": "^3.6.2" diff --git a/vue2/vue/src/components/Login.vue b/vue2/vue/src/components/Login.vue index a823405..33dc829 100644 --- a/vue2/vue/src/components/Login.vue +++ b/vue2/vue/src/components/Login.vue @@ -94,7 +94,7 @@ export default { }); }else if(res.data.roles[0] === 'teacher'){ this.$router.push({ - path: '/teacher/correct', + path: '/teacher/homePage', query: { userId: userId } }); // window.location.href = 'http://localhost:8081/teacher/correct'; diff --git a/vue2/vue/src/views/Teacher/Questions.vue b/vue2/vue/src/views/Teacher/Questions.vue index 9f6c096..6e47ba8 100644 --- a/vue2/vue/src/views/Teacher/Questions.vue +++ b/vue2/vue/src/views/Teacher/Questions.vue @@ -13,36 +13,60 @@ - - + +
+ + + + + + + + + + + + - -
- - - 添加题目 - + + + + + + + + + + + + + + + 重置 + + 添加题目 + + +
+ + + - +
-
{{ question.id }}
@@ -62,13 +86,12 @@ />
-

{{ question.content }}

学科类型: {{ question.subject }} 难度: {{ question.difficulty }} - 创建时间: {{ question.createtime}} + 创建时间: {{ question.createtime }}
@@ -99,7 +122,7 @@

题目内容: {{ previewQuestionData.content }}

选项:

- + {{ option.label }}: {{ option.text }} @@ -121,7 +144,7 @@ -