派生自 projectDept/qhighschool

EricsHu
2023-08-14 3f82cda34b6c7d9243b62df2509a9e5fd711c184
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
package com.qxueyou.scc.stucontroller;
 
import java.util.Date;
import java.util.Map;
 
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import com.qxueyou.scc.base.model.Result;
import com.qxueyou.scc.base.util.CollectionUtils;
 
/**
 * 学习端 考试前端控制器
 * 
 * @author chenjunliang
 *
 */
@RestController
@RequestMapping(value = "/stu/exam")
public class StuExamController {
    /**
     * 获取考试列表
     * 
     * @param limit
     *            每页显示几条
     * @param pageNum
     *            页码
     * @param classId
     *            班级id
     * 
     * @return percent(状态说明:0,草稿。1,待完成。2,已完成。3,逾期未交)
     */
    @GetMapping(value = "getExamLst")
    public Result getExamLst(Integer limit, Integer pageNum, String classId) {
 
        return new Result(true, "success", CollectionUtils.newObjectMap("examLst",
                CollectionUtils.newList(
                        CollectionUtils.newObjectMap("examId", "11111", "examName", "虚拟现实技术入门体检与制作1", "percent", 0,
                                "startTime", new Date(), "endTime", new Date(), "score", 30),
                        CollectionUtils.newObjectMap("examId", "2222", "examName", "虚拟现实技术入门体检与制作2", "percent", 1,
                                "startTime", new Date(), "endTime", new Date(), "score", 30),
                        CollectionUtils.newObjectMap("examId", "3333", "examName", "虚拟现实技术入门体检与制作3", "percent", 2,
                                "startTime", new Date(), "endTime", new Date(), "score", 30),
                        CollectionUtils.newObjectMap("examId", "4444", "examName", "虚拟现实技术入门体检与制作4", "percent", 3,
                                "startTime", new Date(), "endTime", new Date(), "score", 30)),
                "examCount", 4));
    }
 
    /**
     * 获取考试详情
     * 
     * @param examId
     *            考试id
     * 
     * 
     * 
     */
    @GetMapping(value = "getExamDetail")
    public Result getExamDetail(String examId) {
        Map<String, Object> typeOne = CollectionUtils.newObjectMap("type", 1, "count", 3);
        Map<String, Object> typeTwo = CollectionUtils.newObjectMap("type", 2, "count", 3);
        Map<String, Object> typeThree = CollectionUtils.newObjectMap("type", 3, "count", 3);
 
        return new Result(true, "success", CollectionUtils.newObjectMap("examName", "虚拟现实技术入门基础考试", "subjectName", "物流",
                "duration", 30, "maxLateMin", "", "showType", 1, "showScore", 1, "startTime", new Date(), "endTime",
                new Date(), "totalScore", 100, "paperType", 1, "shouScoreDays", "", "difficultLevel", 5, "passingScore",
                60, "questionTypes", CollectionUtils.newList(typeOne, typeTwo, typeThree), "percent", 0, "goal", 88));
    }
 
    /**
     * 开始考试获取考试题目
     */
    @GetMapping(value = "getExamItems")
    public Result getItems(String examId) {
        Map<String, Object> optionA = CollectionUtils.newObjectMap("optionId", 1111, "content", "体检VR眼睛的参数功能,形成报告A",
                "optionOrder", "A", "imgPath", "/web/path", "check", false);
        Map<String, Object> optionB = CollectionUtils.newObjectMap("optionId", 2222, "content", "体检VR眼睛的参数功能,形成报告B",
                "optionOrder", "B", "imgPath", "/web/path", "check", false);
        Map<String, Object> optionC = CollectionUtils.newObjectMap("optionId", 3333, "content", "体检VR眼睛的参数功能,形成报告C",
                "optionOrder", "C", "imgPath", "/web/path", "check", false);
        Map<String, Object> optionD = CollectionUtils.newObjectMap("optionId", 4444, "content", "体检VR眼睛的参数功能,形成报告D",
                "optionOrder", "D", "imgPath", "/web/path", "check", false);
        // 判断题
        Map<String, Object> checkoptionA = CollectionUtils.newObjectMap("optionId", 5555, "content", "李白是李白他爸爸生的",
                "optionOrder", false, "imgPath", "/web/path", "check", false);
        Map<String, Object> checkoptionB = CollectionUtils.newObjectMap("optionId", 6666, "content", "李白是李白他妈妈生的",
                "optionOrder", true, "imgPath", "/web/path", "check", false);
 
        // 显示题目 列表;
        Map<String, Object> two = CollectionUtils.newObjectMap("socre", 5, "exerciseId", "11111", "title", "这是多选题",
                "type", 2, "options", CollectionUtils.newList(optionA, optionB, optionC, optionD), "answer", "A,B",
                "analisis", "这是答案解析", "isRight", true);
        Map<String, Object> one = CollectionUtils.newObjectMap("socre", 6, "exerciseId", "22222", "title", "这是单选题",
                "type", 1, "options", CollectionUtils.newList(optionA, optionB, optionC, optionD), "answer", "A",
                "analisis", "这是答案解析", "isRight", true);
 
        Map<String, Object> three = CollectionUtils.newObjectMap("socre", 8, "exerciseId", "33333", "title", "这是判断题",
                "type", 3, "options", CollectionUtils.newList(checkoptionA, checkoptionB), "answer", "A", "analisis",
                "这是答案解析", "isRight", true);
        // fileType1 图片; 2 文档 3 视频 4 音频,5 压缩包
 
        return new Result(true, "success",
 
                CollectionUtils.newList(
                        CollectionUtils.newObjectMap("examPaperSectionId", "1111", "sectionName", "第一部分", "sectionDesc",
                                "根据题目信息选择正确答案", "itemLst", CollectionUtils.newList(one, two)),
                        CollectionUtils.newObjectMap("examPaperSectionId", "2222", "sectionName", "第二部分", "sectionDesc",
                                "根据题目信息选择正确答案", "itemLst", CollectionUtils.newList(three))));
 
    }
 
    /**
     * 提交试卷
     * 
     * @param answerItem
     *            [{"exerciseId":"11111","optionId":"4444,2222,3333"},{"exerciseId":"22222","optionId":"2222"},{"exerciseId":"33333","optionId":""}]
     * @param status
     *            提交状态(1,保存草稿。2,提交作业。)
     */
    @PostMapping(value = "saveExam")
    public Result saveExam(String examId, String answerItem, Integer durationTime, Integer status) {
        return new Result(true, "success");
    }
}