wangliang 4 yıl önce
ebeveyn
işleme
816167ac20

+ 4 - 2
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/mapper/TBExamStudentMapper.java

@@ -93,11 +93,13 @@ public interface TBExamStudentMapper extends BaseMapper<TBExamStudent> {
      * @param teachCollegeId
      * @param teacherId
      * @param studentParam
+     * @param column
+     * @param order
      * @return
      */
-    IPage<InspectCollegeResult> listInspectCollegeResult(@Param("page") Page<InspectCollegeResult> page, @Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("current") Boolean current, @Param("teachCollegeId") Long teachCollegeId, @Param("teacherId") Long teacherId, @Param("studentParam") String studentParam);
+    IPage<InspectCollegeResult> listInspectCollegeResult(@Param("page") Page<InspectCollegeResult> page, @Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("current") Boolean current, @Param("teachCollegeId") Long teachCollegeId, @Param("teacherId") Long teacherId, @Param("studentParam") String studentParam, @Param("column") String column, @Param("order") String order);
 
-    List<InspectCollegeResult> listInspectCollegeResult(@Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("current") Boolean current, @Param("teachCollegeId") Long teachCollegeId, @Param("teacherId") Long teacherId, @Param("studentParam") String studentParam);
+    List<InspectCollegeResult> listInspectCollegeResult(@Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("current") Boolean current, @Param("teachCollegeId") Long teachCollegeId, @Param("teacherId") Long teacherId, @Param("studentParam") String studentParam, @Param("column") String column, @Param("order") String order);
 
     /**
      * 学生报告预览-列表接口

+ 2 - 2
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TBExamStudentServiceImpl.java

@@ -239,14 +239,14 @@ public class TBExamStudentServiceImpl extends ServiceImpl<TBExamStudentMapper, T
     public IPage<InspectCollegeResult> listInspectCollegeResult(String semester, Long examId, String courseCode, Boolean current, Long teachCollegeId, Long teacherId, String studentParam, Integer pageNumber, Integer pageSize, String column, OrderEnum order) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<InspectCollegeResult> page = new Page<>(pageNumber, pageSize);
-        IPage<InspectCollegeResult> listPage = tbExamStudentMapper.listInspectCollegeResult(page, schoolId, semester, examId, courseCode, current, teachCollegeId, teacherId, studentParam);
+        IPage<InspectCollegeResult> listPage = tbExamStudentMapper.listInspectCollegeResult(page, schoolId, semester, examId, courseCode, current, teachCollegeId, teacherId, studentParam, column, Objects.nonNull(order) ? order.name() : null);
         return listPage;
     }
 
     @Override
     public void exportInspectCollegeResult(String semester, Long examId, String courseCode, Boolean current, Long teachCollegeId, Long teacherId, String studentParam, HttpServletResponse response, String column, OrderEnum order) throws Exception {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        List<InspectCollegeResult> list = tbExamStudentMapper.listInspectCollegeResult(schoolId, semester, examId, courseCode, current, teachCollegeId, teacherId, studentParam);
+        List<InspectCollegeResult> list = tbExamStudentMapper.listInspectCollegeResult(schoolId, semester, examId, courseCode, current, teachCollegeId, teacherId, studentParam, column, Objects.nonNull(order) ? order.name() : null);
         ExcelUtil.excelExport("开课成绩查询", TeachCollegeResult.class, list, response);
     }
 

+ 60 - 56
teachcloud-report-business/src/main/resources/mapper/TBExamStudentMapper.xml

@@ -76,41 +76,41 @@
 
     <select id="listTeachCollegeResult"
             resultType="com.qmth.teachcloud.report.business.bean.result.TeachCollegeResult">
-        SELECT
-            d.semester,
-            d.exam_name examName,
-            a.course_code courseCode,
-            a.course_name courseName,
-            a.ticket_number ticketNumber,
-            a.student_code studentCode,
-            a.name,
-            a.student_current `current`,
-            case a.student_current when true then '应届' else '非应届' end as currentStr,
-            round(b.objective_score, 1) objectiveScore,
-            round(b.subjective_score, 1) subjectiveScore,
-            round(b.total_score, 1) totalScore,
-            round(c.assigned_score, 1) assignedScore,
-            e.clazz_code clazzCode,
-            e.clazz_name clazzName,
-            f.name teachCollegeName,
-            g.name inspectCollegeName,
-            h.real_name teacherName
+        select * from(SELECT
+        d.semester,
+        d.exam_name examName,
+        a.course_code courseCode,
+        a.course_name courseName,
+        a.ticket_number ticketNumber,
+        a.student_code studentCode,
+        a.name,
+        a.student_current `current`,
+        case a.student_current when true then '应届' else '非应届' end as currentStr,
+        round(b.objective_score, 1) objectiveScore,
+        round(b.subjective_score, 1) subjectiveScore,
+        round(b.total_score, 1) totalScore,
+        round(c.assigned_score, 1) assignedScore,
+        e.clazz_code clazzCode,
+        e.clazz_name clazzName,
+        f.name teachCollegeName,
+        g.name inspectCollegeName,
+        h.real_name teacherName
         FROM
-            t_b_exam_student a
+        t_b_exam_student a
         LEFT JOIN
-            t_b_exam_record b ON a.id = b.exam_student_id
+        t_b_exam_record b ON a.id = b.exam_student_id
         LEFT JOIN
-            t_a_exam_course_record c ON b.id = c.exam_record_id
+        t_a_exam_course_record c ON b.id = c.exam_record_id
         LEFT JOIN
-            t_b_exam d ON a.exam_id = d.id
+        t_b_exam d ON a.exam_id = d.id
         LEFT JOIN
-            t_b_school_clazz e ON a.clazz_id = e.id
+        t_b_school_clazz e ON a.clazz_id = e.id
         LEFT JOIN
-            sys_org f ON a.teach_college_id = f.id
+        sys_org f ON a.teach_college_id = f.id
         LEFT JOIN
-            sys_org g ON a.inspect_college_id = g.id
+        sys_org g ON a.inspect_college_id = g.id
         LEFT JOIN
-            sys_user h ON a.teacher_id = h.id
+        sys_user h ON a.teacher_id = h.id
         <where>
             and d.school_id = #{schoolId}
             <if test="semester != null and semester != ''">
@@ -142,45 +142,46 @@
                     #{collegeId}
                 </foreach>
             </if>
-            <if test="column != null and column != '' and order != null and order != ''">
-                order by ${column} ${order}
-            </if>
-        </where>
+        </where> ) t
+        <if test="column != null and column != '' and order != null and order != ''">
+            order by ${column} ${order}
+        </if>
     </select>
+
     <select id="listInspectCollegeResult"
             resultType="com.qmth.teachcloud.report.business.bean.result.InspectCollegeResult">
-        SELECT
-            d.semester,
-            d.exam_name examName,
-            a.course_code courseCode,
-            a.course_name courseName,
-            a.ticket_number ticketNumber,
-            a.student_code studentCode,
-            a.name,
-            a.student_current `current`,
-            case a.student_current when true then '应届' else '非应届' end as currentStr,
-            round(c.assigned_score, 1) assignedScore,
-            e.clazz_code clazzCode,
-            e.clazz_name clazzName,
-            f.name teachCollegeName,
-            g.name inspectCollegeName,
-            h.real_name teacherName
+        select * from(SELECT
+        d.semester,
+        d.exam_name examName,
+        a.course_code courseCode,
+        a.course_name courseName,
+        a.ticket_number ticketNumber,
+        a.student_code studentCode,
+        a.name,
+        a.student_current `current`,
+        case a.student_current when true then '应届' else '非应届' end as currentStr,
+        round(c.assigned_score, 1) assignedScore,
+        e.clazz_code clazzCode,
+        e.clazz_name clazzName,
+        f.name teachCollegeName,
+        g.name inspectCollegeName,
+        h.real_name teacherName
         FROM
-            t_b_exam_student a
+        t_b_exam_student a
         LEFT JOIN
-            t_b_exam_record b ON a.id = b.exam_student_id
+        t_b_exam_record b ON a.id = b.exam_student_id
         LEFT JOIN
-            t_a_exam_course_record c ON b.id = c.exam_record_id
+        t_a_exam_course_record c ON b.id = c.exam_record_id
         LEFT JOIN
-            t_b_exam d ON a.exam_id = d.id
+        t_b_exam d ON a.exam_id = d.id
         LEFT JOIN
-            t_b_school_clazz e ON a.clazz_id = e.id
+        t_b_school_clazz e ON a.clazz_id = e.id
         LEFT JOIN
-            sys_org f ON a.teach_college_id = f.id
+        sys_org f ON a.teach_college_id = f.id
         LEFT JOIN
-            sys_org g ON a.inspect_college_id = g.id
+        sys_org g ON a.inspect_college_id = g.id
         LEFT JOIN
-            sys_user h ON a.teacher_id = h.id
+        sys_user h ON a.teacher_id = h.id
         <where>
             and d.school_id = #{schoolId}
             <if test="semester != null and semester != ''">
@@ -206,7 +207,10 @@
                 or a.student_code like concat('%' ,#{studentParam}, '%')
                 or a.name like concat('%' ,#{studentParam}, '%'))
             </if>
-        </where>
+        </where> ) t
+        <if test="column != null and column != '' and order != null and order != ''">
+            order by ${column} ${order}
+        </if>
     </select>
 
     <select id="reportList" resultType="com.qmth.teachcloud.report.business.bean.result.TBStudentReportResult">