派生自 projectDept/qhighschool

EricsHu
2023-09-01 19e6057d3797b6fd6770ed5a98ddaef0b86a4c47
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
127
128
129
130
131
132
133
package com.qxueyou.scc.stucontroller;
 
import java.util.List;
import java.util.Map;
 
import com.qxueyou.scc.base.util.ClientUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import com.qxueyou.scc.admin.classes.model.ClsClass;
import com.qxueyou.scc.admin.classes.service.IClassLectureService;
import com.qxueyou.scc.admin.classes.service.IClassService;
import com.qxueyou.scc.base.model.Result;
import com.qxueyou.scc.base.util.CollectionUtils;
import com.qxueyou.scc.base.util.QBeanUtils;
import com.qxueyou.scc.exercise.service.IExerciseInfoService;
import com.qxueyou.scc.operation.topic.service.ITopicService;
import com.qxueyou.scc.teach.subject.service.ISubjectService;
import com.qxueyou.scc.user.service.IUserService;
 
import io.swagger.annotations.ApiOperation;
 
import javax.servlet.http.HttpServletRequest;
 
/**
 * 首页前端控制器
 * 
 * @author chenjunliang
 *
 */
@RestController
@CrossOrigin
@RequestMapping(value = "/stu/homepage")
public class HomePageController {
 
    @Autowired
    IClassService classService;
 
    @Autowired
    IUserService userService;
 
    @Autowired
    IClassLectureService classLectureService;
 
    @Autowired
    ISubjectService subjectService;
 
    @Autowired
    ITopicService topicService;
 
    @Autowired
    IExerciseInfoService exerciseInfoService;
 
    /**
     * 首页获取我的上次学习
     */
    @ApiOperation(value = "首页获取我的上次学习")
    @GetMapping(value = "getLastStudied")
    public Result getLastSubject(String subjectId, HttpServletRequest request) {
        Object userId = request.getSession().getAttribute("userId");
        System.out.println(userId);
        return subjectService.lastStudied(String.valueOf(userId));
    }
 
    /**
     * 首页获取班级列表
     * 
     * @param limit
     *            每页显示几条
     * @param pageNum
     *            页码
     * 
     */
    @GetMapping(value = "getClassLst")
    public Result getClassLst(Integer limit, Integer pageNum) {
 
        if (userService.isAdmin()) {// 如果为管理员则获取所有班级列表
            return classService.getAllClassLst();
        }
        if (userService.isTeacher()) {
            List<ClsClass> classes = classService.getClassLstByTeacherId();
            return new Result(true, "success", CollectionUtils.newObjectMap("classLst",
 
                    QBeanUtils
                            .listBean2ListMap(classes,
                                    CollectionUtils.newStringMap("name", "className", "teacherId", "teacherName",
                                            "classNumber", "classNumber", "classId", "classId")),
                    "classCount", classes.size()));
        }
        
        List<ClsClass> classes = classService.listMyClass();
 
        return new Result(true, "success", CollectionUtils.newObjectMap("classLst",
 
                QBeanUtils
                        .listBean2ListMap(classes,
                                CollectionUtils.newStringMap("name", "className", "teacherId", "teacherName",
                                        "classNumber", "classNumber", "classId", "classId")),
                "classCount", classes.size()));
    }
 
    /**
     * 首页获取课程列表
     */
    @GetMapping(value = "lstSubjectDetail")
    public Result subjectDetailLst(HttpServletRequest request){
        return subjectService.lstSubjectDetail();
    }
 
    /**
     * 获取首页数据排行
     * 
     * 
     * @param subjectId
     */
    @GetMapping(value = "getDataDesc")
    public Result getDataDesc(String classId, String subjectId) {
        return subjectService.getDataDesc(classId, subjectId);
    }
 
    /**
     * 获取当前学员的课程列表
     */
    @GetMapping(value = "getMySubjectLst")
    public Result getMySubjectLst() {
        List<Map<String, Object>> mySubjectList = subjectService.getMySubjectList();
        return new Result(true, "success", mySubjectList);
    }
 
}