Browse Source

Merge remote-tracking branch 'cloud-schoolapi/ywx'

tags/正式版本
王宁 2 years ago
parent
commit
660818d3a8

+ 0
- 2
sexam/src/main/java/com/xhkjedu/sexam/model/exam/ESubject.java View File

5
 
5
 
6
 import javax.persistence.Id;
6
 import javax.persistence.Id;
7
 import javax.persistence.Table;
7
 import javax.persistence.Table;
8
-import javax.persistence.Transient;
9
 
8
 
10
 @Table(name = "e_subject")
9
 @Table(name = "e_subject")
11
 @Data
10
 @Data
41
     //设置时间
40
     //设置时间
42
     private Integer handletime;
41
     private Integer handletime;
43
 
42
 
44
-    @Transient
45
     //科目名称
43
     //科目名称
46
     private String subjectname;
44
     private String subjectname;
47
 }
45
 }

+ 5
- 2
sexam/src/main/java/com/xhkjedu/sexam/model/paperstudent/EPaperStudentQuestion.java View File

67
     //批改时间
67
     //批改时间
68
     private Integer checktime;
68
     private Integer checktime;
69
 
69
 
70
-    //作答情况0默认1优秀2违规
71
-    private Integer goodbad;
70
+    //优秀试卷0默认1优秀
71
+    private Integer good;
72
+
73
+    //违纪试卷0默认1违纪
74
+    private Integer bad;
72
 
75
 
73
     //学生答题卡作答图片
76
     //学生答题卡作答图片
74
     private String stupic;
77
     private String stupic;

+ 1
- 21
sexam/src/main/java/com/xhkjedu/sexam/service/exam/EBaseService.java View File

90
         students.forEach(s -> s.setExamid(examid));
90
         students.forEach(s -> s.setExamid(examid));
91
         eClassStudentMapper.insertList(students);
91
         eClassStudentMapper.insertList(students);
92
 
92
 
93
-        //考试科目、试卷
93
+        //考试科目
94
         List<String> subjectids = model.getSubjectids();
94
         List<String> subjectids = model.getSubjectids();
95
         List<ESubject> subjects = new ArrayList<>();//考试科目
95
         List<ESubject> subjects = new ArrayList<>();//考试科目
96
-        List<EPaper> papers = new ArrayList<>();//考试试卷
97
         String examdate = model.getExamdate();//考试时间
96
         String examdate = model.getExamdate();//考试时间
98
         for (String subjectid : subjectids) {
97
         for (String subjectid : subjectids) {
99
             ESubject s = new ESubject();
98
             ESubject s = new ESubject();
102
             s.setSdate(examdate);
101
             s.setSdate(examdate);
103
             s.setEsstate(0);
102
             s.setEsstate(0);
104
             subjects.add(s);
103
             subjects.add(s);
105
-            EPaper p = new EPaper();
106
-            p.setExamid(examid);
107
-            p.setSubjectid(subjectid);
108
-            p.setPtype(0);
109
-            p.setPnum(0);
110
-            p.setPscore(0.0);
111
-            p.setAnswered(0);
112
-            p.setCorrecttype(0);
113
-            papers.add(p);
114
         }
104
         }
115
         eSubjectMapper.insertList(subjects);//考试科目
105
         eSubjectMapper.insertList(subjects);//考试科目
116
 
106
 
117
-        Integer createid = model.getCreateid();
118
-        Integer createtime = model.getCreatetime();
119
-        for (int i = 0; i < papers.size(); i++) {
120
-            EPaper ePaper = papers.get(i);
121
-            ePaper.setEsid(subjects.get(i).getId());
122
-            ePaper.setCreateid(createid);
123
-            ePaper.setCreatetime(createtime);
124
-        }
125
-        ePaperMapper.insertList(papers);//考试试卷
126
-
127
         return null;
107
         return null;
128
     }
108
     }
129
 
109
 

+ 2
- 1
sexam/src/main/java/com/xhkjedu/sexam/service/notice/NoticeService.java View File

104
             } else {//通知对象2老师
104
             } else {//通知对象2老师
105
                 List<Integer> userids = msgList.stream().map(m -> m.getUserid()).distinct().collect(Collectors.toList());
105
                 List<Integer> userids = msgList.stream().map(m -> m.getUserid()).distinct().collect(Collectors.toList());
106
                 List<Map> users = userMapper.listPhoneByUserIds(userids);//根据用户ids查找手机号
106
                 List<Map> users = userMapper.listPhoneByUserIds(userids);//根据用户ids查找手机号
107
+                Map<Integer, TMsg> msgMap = msgList.stream().collect(Collectors.toMap(m -> m.getUserid(), m -> m));
107
                 for (int i = 0; i < users.size(); i++) {
108
                 for (int i = 0; i < users.size(); i++) {
108
                     Map u = users.get(i);
109
                     Map u = users.get(i);
109
                     String userphone = u.get("userphone").toString();
110
                     String userphone = u.get("userphone").toString();
110
                     if (N_Utils.isEmpty(userphone)) continue;
111
                     if (N_Utils.isEmpty(userphone)) continue;
111
-                    TMsg m = msgList.get(i);
112
+                    TMsg m = msgMap.get(u.get("userid"));
112
                     m.setUserphone(userphone);
113
                     m.setUserphone(userphone);
113
                     m.setCreatetime(createtime);
114
                     m.setCreatetime(createtime);
114
                     msgs.add(m);
115
                     msgs.add(m);

+ 1
- 2
sexam/src/main/resources/mapper/exam/EBaseMapper.xml View File

14
     <!--考试列表-->
14
     <!--考试列表-->
15
     <select id="listAll" resultType="java.util.Map">
15
     <select id="listAll" resultType="java.util.Map">
16
         select b.examid,b.examname,b.examdate,b.gradeid,b.examtype,b.exammode,b.monitored
16
         select b.examid,b.examname,b.examdate,b.gradeid,b.examtype,b.exammode,b.monitored
17
-        ,b.examstate,group_concat(distinct s.subjectname order by s.subjectorder separator '|')subjectname
17
+        ,b.examstate,group_concat(distinct es.subjectname separator '|')subjectname
18
         ,count(distinct case when es.begintime is null or es.begintime='' then es.esid else null end)esnum
18
         ,count(distinct case when es.begintime is null or es.begintime='' then es.esid else null end)esnum
19
         ,min(es.esstate)esstate,min(ep.correcttype)correcttype
19
         ,min(es.esstate)esstate,min(ep.correcttype)correcttype
20
         ,(case when b.exammode=1 then (count(distinct es.esid)-count(distinct ei.esid))
20
         ,(case when b.exammode=1 then (count(distinct es.esid)-count(distinct ei.esid))
22
         left join e_paper_student ps on ec.examid=ps.examid and ps.sstate in(0,1)
22
         left join e_paper_student ps on ec.examid=ps.examid and ps.sstate in(0,1)
23
         where ec.examid=b.examid) end)papernum
23
         where ec.examid=b.examid) end)papernum
24
         from e_base b left join e_subject es on es.examid=b.examid
24
         from e_base b left join e_subject es on es.examid=b.examid
25
-        left join t_subject s on es.subjectid=s.subjectid
26
         left join e_paper ep on ep.esid = es.esid
25
         left join e_paper ep on ep.esid = es.esid
27
         left join e_subject_invigilate ei on ei.esid = es.esid
26
         left join e_subject_invigilate ei on ei.esid = es.esid
28
         where b.schoolid=#{base.schoolid} and b.deleted=1
27
         where b.schoolid=#{base.schoolid} and b.deleted=1

+ 2
- 4
sexam/src/main/resources/mapper/exam/ESubjectInvigilateMapper.xml View File

7
     </delete>
7
     </delete>
8
     <!--监考设置列表-->
8
     <!--监考设置列表-->
9
     <select id="listSubject" resultType="java.util.Map">
9
     <select id="listSubject" resultType="java.util.Map">
10
-        select s.esid,s.subjectid,s.sdate,s.begintime,s.endtime,s.esstate
10
+        select s.esid,s.subjectid,s.sdate,s.begintime,s.endtime,s.esstate,s.subjectname
11
         ,ifnull(ep.pnum,0)pnum,ifnull(ep.pscore,0)pscore,ep.correcttype
11
         ,ifnull(ep.pnum,0)pnum,ifnull(ep.pscore,0)pscore,ep.correcttype
12
-        ,(select ts.subjectname from t_subject ts where ts.subjectid=s.subjectid)subjectname
13
         ,(select group_concat(distinct u.username separator '、')
12
         ,(select group_concat(distinct u.username separator '、')
14
         from e_subject_invigilate ei left join t_user u on ei.teacherid = u.userid
13
         from e_subject_invigilate ei left join t_user u on ei.teacherid = u.userid
15
         where ei.esid=s.esid and ei.majored=1)majorname
14
         where ei.esid=s.esid and ei.majored=1)majorname
24
     </select>
23
     </select>
25
     <!--教师监考-监控列表-->
24
     <!--教师监考-监控列表-->
26
     <select id="listJkSubject" resultType="java.util.Map">
25
     <select id="listJkSubject" resultType="java.util.Map">
27
-        select es.esid,es.sdate,es.begintime,es.endtime,es.esstate,ts.subjectname
26
+        select es.esid,es.sdate,es.begintime,es.endtime,es.esstate,es.subjectname
28
         ,eb.examname,eb.gradeid,eb.examtype,sum(ec.classnum)examnum
27
         ,eb.examname,eb.gradeid,eb.examtype,sum(ec.classnum)examnum
29
         ,count(case when eps.sstate=0 then eps.epsid else null end) wjcnum
28
         ,count(case when eps.sstate=0 then eps.epsid else null end) wjcnum
30
         ,count(case when eps.sstate=1 then eps.epsid else null end)jcnum
29
         ,count(case when eps.sstate=1 then eps.epsid else null end)jcnum
34
         from e_subject es left join e_base eb on eb.examid = es.examid
33
         from e_subject es left join e_base eb on eb.examid = es.examid
35
         left join e_class ec on eb.examid = ec.examid
34
         left join e_class ec on eb.examid = ec.examid
36
         left join e_paper_student eps on es.esid = eps.esid
35
         left join e_paper_student eps on es.esid = eps.esid
37
-        left join t_subject ts on es.subjectid = ts.subjectid
38
         where es.teacherid=#{teacherid}
36
         where es.teacherid=#{teacherid}
39
         <if test="esstate==1">
37
         <if test="esstate==1">
40
             and concat(es.sdate,' ',es.endtime)>now()
38
             and concat(es.sdate,' ',es.endtime)>now()

+ 7
- 11
sexam/src/main/resources/mapper/exam/ESubjectMapper.xml View File

12
     <!--考试下所有科目-->
12
     <!--考试下所有科目-->
13
     <select id="listExamSubjects" resultType="com.xhkjedu.sexam.vo.exam.ESubjectVo">
13
     <select id="listExamSubjects" resultType="com.xhkjedu.sexam.vo.exam.ESubjectVo">
14
         select es.esid,es.subjectid,es.sdate,es.begintime,es.endtime,es.teacherid,
14
         select es.esid,es.subjectid,es.sdate,es.begintime,es.endtime,es.teacherid,
15
-        u.username teachername,es.esstate,s.subjectname
15
+        u.username teachername,es.esstate,es.subjectname
16
         from e_subject es left join t_user u on es.teacherid=u.userid
16
         from e_subject es left join t_user u on es.teacherid=u.userid
17
-        left join t_subject s on es.subjectid=s.subjectid
18
         where es.examid=#{examid} order by s.subjectorder
17
         where es.examid=#{examid} order by s.subjectorder
19
     </select>
18
     </select>
20
 
19
 
29
     </update>
28
     </update>
30
     <!--考试科目列表-->
29
     <!--考试科目列表-->
31
     <select id="listSubject" resultType="java.util.Map">
30
     <select id="listSubject" resultType="java.util.Map">
32
-        select es.subjectid,s.subjectname,es.sdate,es.begintime,es.endtime,es.teacherid,u.username
33
-        from e_subject es left join t_subject s on es.subjectid=s.subjectid
34
-        left join t_user u on es.teacherid=u.userid
31
+        select es.subjectid,es.subjectname,es.sdate,es.begintime,es.endtime,es.teacherid,u.username
32
+        from e_subject es left join t_user u on es.teacherid=u.userid
35
         where examid=#{examid}
33
         where examid=#{examid}
36
     </select>
34
     </select>
37
     <!--根据考试科目id获取考试id-->
35
     <!--根据考试科目id获取考试id-->
40
     </select>
38
     </select>
41
     <!--考试科目设置列表-->
39
     <!--考试科目设置列表-->
42
     <select id="listSubjectSet" resultType="java.util.Map">
40
     <select id="listSubjectSet" resultType="java.util.Map">
43
-        select es.subjectid,s.subjectname,es.sdate,es.begintime,es.endtime,es.esstate
41
+        select es.subjectid,es.subjectname,es.sdate,es.begintime,es.endtime,es.esstate
44
         ,ep.correcttype
42
         ,ep.correcttype
45
         ,(select count(*) from e_subject_invigilate ei where ei.esid=es.esid)jkjsnum
43
         ,(select count(*) from e_subject_invigilate ei where ei.esid=es.esid)jkjsnum
46
         ,count(case when eps.sstate=3 then eps.epsid else null end)qknum
44
         ,count(case when eps.sstate=3 then eps.epsid else null end)qknum
47
         ,count(case when eps.sstate=2 then eps.epsid else null end)tjnum
45
         ,count(case when eps.sstate=2 then eps.epsid else null end)tjnum
48
         ,ifnull(truncate(count(case when eps.checked=2 then eps.epsid else null end)*100/
46
         ,ifnull(truncate(count(case when eps.checked=2 then eps.epsid else null end)*100/
49
         count(case when eps.sstate=2 then eps.epsid else null end),0),0)pyrate
47
         count(case when eps.sstate=2 then eps.epsid else null end),0),0)pyrate
50
-        from e_subject es left join t_subject s on es.subjectid=s.subjectid
51
-        left join e_paper ep on es.esid = ep.esid
48
+        from e_subject es left join e_paper ep on es.esid = ep.esid
52
         left join e_paper_student eps on ep.epid = eps.epid
49
         left join e_paper_student eps on ep.epid = eps.epid
53
         where es.examid=#{examid}
50
         where es.examid=#{examid}
54
         group by es.esid
51
         group by es.esid
55
     </select>
52
     </select>
56
     <!--考试科目阅卷设置列表-->
53
     <!--考试科目阅卷设置列表-->
57
     <select id="listSubjectCSet" resultType="java.util.Map">
54
     <select id="listSubjectCSet" resultType="java.util.Map">
58
-        select es.subjectid,s.subjectname,es.sdate,es.begintime,es.endtime,es.esstate
55
+        select es.subjectid,es.subjectname,es.sdate,es.begintime,es.endtime,es.esstate
59
         ,ep.ptype,ep.epid,ep.pnum,ep.pscore,ep.correcttype
56
         ,ep.ptype,ep.epid,ep.pnum,ep.pscore,ep.correcttype
60
-        from e_subject es left join t_subject s on es.subjectid=s.subjectid
61
-        left join e_paper ep on es.esid = ep.esid
57
+        from e_subject es left join e_paper ep on es.esid = ep.esid
62
         where es.examid=#{examid}
58
         where es.examid=#{examid}
63
     </select>
59
     </select>
64
     <!--根据考试科目id获取考试科目基本信息-->
60
     <!--根据考试科目id获取考试科目基本信息-->

Loading…
Cancel
Save