智慧保安后台管理-外网项目备份
Administrator
2022-01-19 29e064a60b78ae87d0479159089ffeb27f43833c
src/main/java/org/springblade/modules/exam/mapper/ExamPaperMapper.xml
@@ -130,10 +130,16 @@
        <if test="paper.deptId!=null and paper.deptId!=''">
            and bd.id = #{paper.deptId}
        </if>
        <if test="paper.deptName!=null and paper.deptName!=''">
            and bd.dept_name like concat('%',#{paper.deptName},'%')
        </if>
        <if test="paper.examTime!=null and paper.examTime!=''">
            and date_format(ke.start_time,'%Y-%m-%d') = #{paper.examTime}
        </if>
        <if test="paper.auditStatus!=null and paper.auditStatus!=''">
            and audit_status = #{paper.auditStatus}
        </if>
        order by start_time desc
        order by ke.start_time desc,ke.id desc
    </select>
    <select id="PagerSubject" resultMap="PagerSubjectAnswer">
@@ -237,7 +243,7 @@
         exam_score es
      on
      es.apply_id = str.id
        where str.user_id = #{userId}
        where str.user_id = #{examPaper.userId}
        and bu.is_train = 1
        and (str.is_exam = 1 or str.is_exam = 3)
        and ke.audit_status = 1
@@ -378,4 +384,32 @@
        and cancel = 1
    </select>
    <!--考试查询统计-->
    <select id="getExamStatistics" resultType="org.springblade.modules.exam.vo.ExamStatisticsVO">
        SELECt
        ke.id,ke.start_time startTime,ke.end_time endTime,bd.dept_name schoolName,
        ifnull(a.c,0) znum,
        ifnull(b.c,0) yknum,
        ifnull(c.c,0) qknum,
        ifnull(d.c,0) ycnum,
        ifnull(e.c,0) qxnum
        from ksxt_exam ke
        left join (select count(*) c,train_exam_id from sys_training_registration GROUP BY train_exam_id) a on a.train_exam_id = ke.id
        left join (select count(*) c,train_exam_id from sys_training_registration where 1=1 and (is_exam = 2 or is_exam = 3)  GROUP BY train_exam_id) b on b.train_exam_id = ke.id
        left join (select count(*) c,train_exam_id from sys_training_registration str left join blade_user bu on bu.id = str.user_id where 1=1 and is_exam = 4 and cancel =2 or (is_exam=1 and cancel =1) and bu.examination_type!=1 GROUP BY train_exam_id) c on c.train_exam_id = ke.id
        left join (select count(*) c,train_exam_id from sys_training_registration str left join blade_user bu on bu.id = str.user_id where 1=1 and cancel =1 and is_exam = 1 and bu.examination_type = 1 GROUP BY train_exam_id) d on d.train_exam_id = ke.id
        left join (select count(*) c,train_exam_id from sys_training_registration where 1=1 and is_exam = 1 and cancel =2 GROUP BY train_exam_id) e on e.train_exam_id = ke.id
        left join blade_user bu2 on bu2.id = ke.creator
        left join blade_dept bd on bd.id = bu2.dept_id
        where 1=1
        and ke.audit_status = 1
        <if test="examPaper.schoolName!=null and examPaper.schoolName!=''">
            and bd.dept_name like concat('%',#{examPaper.schoolName},'%')
        </if>
        <if test="examPaper.examTime!=null and examPaper.examTime!=''">
            and date_format(ke.start_time,'%Y-%m-%d') = #{examPaper.examTime}
        </if>
        order by ke.id desc
    </select>
</mapper>