|
@@ -195,11 +195,15 @@
|
195
|
195
|
</select>
|
196
|
196
|
<!--教师阅卷-待/已阅卷列表-->
|
197
|
197
|
<select id="listCorrect" resultType="java.util.Map">
|
198
|
|
- select s.msid,s.subjectname,s.sdate,s.begintime,s.endtime,e.examname,e.gradeid,e.examtype,e.exammode
|
|
198
|
+ select t.msid,t.subjectname,t.sdate,t.begintime,t.endtime,t.examname,t.gradeid,t.examtype,t.exammode
|
|
199
|
+ ,t.mpid,t.checktype,t.dispenseway,t.numtype,t.correcttype
|
|
200
|
+ ,truncate(t.checkedNum*100/t.totalNum,2) as checkrate
|
|
201
|
+ from(select s.msid,s.subjectname,s.sdate,s.begintime,s.endtime,e.examname,e.gradeid,e.examtype,e.exammode
|
199
|
202
|
,pc.mpid,pc.checktype,pc.dispenseway,pc.numtype,pc.correcttype
|
200
|
|
- ,truncate((count(distinct if(psb.firstcid = #{param.handleid} and psb.firstcime>0,psb.mpsbid,null))
|
201
|
|
- +count(distinct if(pc.checktype=2 and psb.secondcid = #{param.handleid} and psb.secondctime>0,psb.mpsbid,null))
|
|
203
|
+ ,truncate((count(distinct if(psb.firstcime>0 or psb.secondctime>0,psb.mpsbid,null))
|
202
|
204
|
)*100/count(distinct psb.mpsbid),2) as checkrate
|
|
205
|
+ ,count(distinct if(psb.firstcime>0 or psb.secondctime>0,psb.mpsbid,null)) as checkedNum
|
|
206
|
+ ,count(distinct psb.mpsbid) as totalNum
|
203
|
207
|
from ms_subject s inner join ms_exam e on s.examid = e.examid
|
204
|
208
|
inner join ms_paper_check pc on pc.msid = s.msid
|
205
|
209
|
inner join ms_paper_check_teacher pct on pc.mblockid = pct.mblockid and pct.mpid=pc.mpid
|
|
@@ -214,6 +218,8 @@
|
214
|
218
|
,pc.mpid,pc.checktype,pc.dispenseway,pc.numtype,pc.correcttype
|
215
|
219
|
,truncate((count(distinct if(psb.firstcime>0 or psb.secondctime>0,psb.mpsqid,null))
|
216
|
220
|
)*100/count(distinct psb.mpsqid),2) as checkrate
|
|
221
|
+ ,count(distinct if(psb.firstcime>0 or psb.secondctime>0,psb.mpsqid,null)) as checkedNum
|
|
222
|
+ ,count(distinct psb.mpsqid) as totalNum
|
217
|
223
|
from ms_subject s inner join ms_exam e on s.examid = e.examid
|
218
|
224
|
inner join ms_paper_check pc on pc.msid = s.msid
|
219
|
225
|
inner join ms_paper_check_teacher pct on pc.mblockid = pct.mblockid and pct.mpid=pc.mpid
|
|
@@ -228,6 +234,8 @@
|
228
|
234
|
,pc.mpid,pc.checktype,pc.dispenseway,pc.numtype,pc.correcttype
|
229
|
235
|
,truncate((count(distinct if(psb.firstcime>0 or psb.secondctime>0,psb.mpsqid,null))
|
230
|
236
|
)*100/count(distinct psb.mpsqid),2) as checkrate
|
|
237
|
+ ,count(distinct if(psb.firstcime>0 or psb.secondctime>0,psb.mpsqid,null)) as checkedNum
|
|
238
|
+ ,count(distinct psb.mpsqid) as totalNum
|
231
|
239
|
from ms_subject s inner join ms_exam e on s.examid = e.examid
|
232
|
240
|
inner join ms_paper_check pc on pc.msid = s.msid
|
233
|
241
|
inner join ms_paper_check_teacher pct on pc.mblockid = pct.mblockid and pct.mpid=pc.mpid
|
|
@@ -242,6 +250,8 @@
|
242
|
250
|
select s.msid,s.subjectname,s.sdate,s.begintime,s.endtime,e.examname,e.gradeid,e.examtype,e.exammode
|
243
|
251
|
,pc.mpid,pc.checktype,pc.dispenseway,pc.numtype,pc.correcttype
|
244
|
252
|
,truncate((count(distinct if(pctt.checkstate=3,pctt.mpcttid,null)))*100/count(distinct pctt.mpcttid),2) as checkrate
|
|
253
|
+ ,count(distinct if(pctt.checkstate=3,pctt.mpcttid,null)) as checkedNum
|
|
254
|
+ ,count(distinct pctt.mpcttid) as totalNum
|
245
|
255
|
from ms_subject s inner join ms_exam e on s.examid = e.examid
|
246
|
256
|
inner join ms_paper_check pc on pc.msid = s.msid
|
247
|
257
|
inner join ms_paper_check_teacher_task pctt on pc.mblockid = pctt.mblockid and pctt.mpid=pc.mpid
|
|
@@ -250,6 +260,10 @@
|
250
|
260
|
group by s.msid
|
251
|
261
|
<if test="param.checktype==0">having 100>checkrate</if>
|
252
|
262
|
<if test="param.checktype==1">having 100=checkrate</if>
|
|
263
|
+ )t
|
|
264
|
+ group by t.msid
|
|
265
|
+ <if test="param.checktype==0">having 100>checkrate</if>
|
|
266
|
+ <if test="param.checktype==1">having 100=checkrate</if>
|
253
|
267
|
order by msid desc
|
254
|
268
|
</select>
|
255
|
269
|
<!--教师阅卷-待阅卷详情-->
|