From 55f1cc845d8bcf2de799aa9405f33510bd4b4fe3 Mon Sep 17 00:00:00 2001 From: flower Date: Thu, 10 Jan 2019 01:31:10 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=83=E4=B9=A0=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ApiPracticeController.java | 52 ++++++++++++------- .../com/ruoyi/exam/domain/ExamQuestionVO.java | 18 +++++++ .../ruoyi/exam/mapper/ExamQuestionMapper.java | 5 ++ .../exam/service/IExamQuestionService.java | 6 ++- .../service/impl/ExamQuestionServiceImpl.java | 13 ++--- .../mapper/exam/ExamPracticeMapper.xml | 4 +- .../mapper/exam/ExamQuestionMapper.xml | 45 +++++++++++++++- 7 files changed, 112 insertions(+), 31 deletions(-) create mode 100644 ruoyi-exam/src/main/java/com/ruoyi/exam/domain/ExamQuestionVO.java 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 ff8f3478b..14d190e01 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,9 +1,7 @@ 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.common.base.AjaxResult; +import com.ruoyi.exam.domain.*; import com.ruoyi.exam.service.IExamPracticeQuestionService; import com.ruoyi.exam.service.IExamPracticeService; import com.ruoyi.exam.service.IExamQuestionService; @@ -13,8 +11,7 @@ import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.ArrayList; -import java.util.List; +import java.util.*; /** * Created by flower on 2019/1/9. @@ -35,23 +32,42 @@ public class ApiPracticeController extends BaseController { @PostMapping("/list") - public TableDataInfo list(ExamPractice examPractice) { + public AjaxResult list(ExamPractice examPractice) { List list = examPracticeService.selectListFromWeb(examPractice); - return getDataTable( list ); + AjaxResult success = success("查询成功"); + success.put("data",list); + return success; } - @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()); + /** + * 查询练习具体的问题列表 + * @param map + * @return + */ + @PostMapping("/queryone/question") + public AjaxResult queryOne(@RequestParam Map map) { + List result = examQuestionService.selectQuestionListByPracticeId(map); + if(map.containsKey("disorder")&&map.get("disorder").toString().equals("1")){ + Collections.shuffle(result); } - List result = examQuestionService.selectByIdsPage(ids); - return getDataTable( result ); + AjaxResult success = success("查询成功"); + success.put("data",result); + return success; + } + + @PostMapping("/answer") + public AjaxResult answer(@RequestBody List> answers) { + for (Map answer : answers) { + String questionId = answer.get("questionId").toString(); + String userAnswer = answer.get("userAnswer").toString(); + ExamQuestion examQuestion = examQuestionService.selectById(questionId); + if(!examQuestion.getAnswer().equals(userAnswer)){ + + } + } + AjaxResult success = success("查询成功"); + return success; } } diff --git a/ruoyi-exam/src/main/java/com/ruoyi/exam/domain/ExamQuestionVO.java b/ruoyi-exam/src/main/java/com/ruoyi/exam/domain/ExamQuestionVO.java new file mode 100644 index 000000000..245114ec9 --- /dev/null +++ b/ruoyi-exam/src/main/java/com/ruoyi/exam/domain/ExamQuestionVO.java @@ -0,0 +1,18 @@ +package com.ruoyi.exam.domain; + +import java.util.List; + +/** + * Created by flower on 2019/1/10. + */ +public class ExamQuestionVO extends ExamQuestion{ + private List questionItem; + + public List getQuestionItem() { + return questionItem; + } + + public void setQuestionItem(List questionItem) { + this.questionItem = questionItem; + } +} diff --git a/ruoyi-exam/src/main/java/com/ruoyi/exam/mapper/ExamQuestionMapper.java b/ruoyi-exam/src/main/java/com/ruoyi/exam/mapper/ExamQuestionMapper.java index 448715281..839dfe84b 100644 --- a/ruoyi-exam/src/main/java/com/ruoyi/exam/mapper/ExamQuestionMapper.java +++ b/ruoyi-exam/src/main/java/com/ruoyi/exam/mapper/ExamQuestionMapper.java @@ -2,6 +2,9 @@ package com.ruoyi.exam.mapper; import com.ruoyi.exam.domain.ExamQuestion; import java.util.List; +import java.util.Map; + +import com.ruoyi.exam.domain.ExamQuestionVO; import com.ruoyi.framework.web.base.MyMapper; /** @@ -61,4 +64,6 @@ public interface ExamQuestionMapper extends MyMapper public int deleteExamQuestionByIds(String[] ids); List selectListBycategory(ExamQuestion examQuestion); + + List selectQuestionListByPracticeId(Map map); } \ No newline at end of file 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 24926d344..9111735d8 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 @@ -2,8 +2,10 @@ package com.ruoyi.exam.service; import com.ruoyi.exam.domain.ExamQuestion; -import java.util.Collection; import java.util.List; +import java.util.Map; + +import com.ruoyi.exam.domain.ExamQuestionVO; import com.ruoyi.framework.web.base.AbstractBaseService; /** * 问题 服务层 @@ -63,5 +65,5 @@ public interface IExamQuestionService extends AbstractBaseService List selectListBycategory(ExamQuestion examQuestion); - List selectByIdsPage(List ids); + List selectQuestionListByPracticeId(Map map); } 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 b9758d34a..35645da5e 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 @@ -1,10 +1,11 @@ package com.ruoyi.exam.service.impl; -import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; +import java.util.Map; import com.ruoyi.exam.domain.ExamQuestionItem; +import com.ruoyi.exam.domain.ExamQuestionVO; import com.ruoyi.exam.mapper.ExamQuestionItemMapper; import com.ruoyi.framework.web.util.ShiroUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -162,14 +163,10 @@ 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); + public List selectQuestionListByPracticeId(Map map) { + startPage(); - return examQuestionMapper.selectByIds(substring.toString()); + return examQuestionMapper.selectQuestionListByPracticeId(map); } diff --git a/ruoyi-exam/src/main/resources/mapper/exam/ExamPracticeMapper.xml b/ruoyi-exam/src/main/resources/mapper/exam/ExamPracticeMapper.xml index 3ad760aad..46ce43144 100644 --- a/ruoyi-exam/src/main/resources/mapper/exam/ExamPracticeMapper.xml +++ b/ruoyi-exam/src/main/resources/mapper/exam/ExamPracticeMapper.xml @@ -48,8 +48,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from exam_practice - ((enable_control_time = '1' and end_time > NOW() and start_time < NOW()) - or enable_control_time = '0') + now() and start_time < now()) + or enable_control_time = '0')]]> and id = #{id} and dept_id = #{deptId} and name = #{name} diff --git a/ruoyi-exam/src/main/resources/mapper/exam/ExamQuestionMapper.xml b/ruoyi-exam/src/main/resources/mapper/exam/ExamQuestionMapper.xml index ec2707867..76e209b39 100644 --- a/ruoyi-exam/src/main/resources/mapper/exam/ExamQuestionMapper.xml +++ b/ruoyi-exam/src/main/resources/mapper/exam/ExamQuestionMapper.xml @@ -18,6 +18,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, title, answer, type, label, category_id, create_by, create_date, update_by, update_date, remarks, del_flag from exam_question @@ -41,7 +69,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - where id = #{id} @@ -66,6 +94,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + insert into exam_question