wangliang 4 лет назад
Родитель
Сommit
1dae832aab

+ 0 - 40
teachcloud-common/src/main/java/com/qmth/teachcloud/common/contant/SystemConstant.java

@@ -242,44 +242,4 @@ public class SystemConstant {
             throw ExceptionResultEnum.ERROR.exception("[" + name + ":" + str + "]' 超过长度限制 : " + length);
         }
     }
-
-    /**
-     * 获取排序列名
-     *
-     * @param column
-     * @return
-     */
-    public static String getOrderColumn(String column) {
-        if (Objects.nonNull(column) && Objects.equals(column, "inspectCollegeName")) {
-            return "inspect_college_name";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "teachCollegeName")) {
-            return "teach_college_name";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "teacherName")) {
-            return "teacher_name";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "courseCode")) {
-            return "course_code";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "courseName")) {
-            return "course_name";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "rank")) {
-            return "teacher_rank";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "currentStr")) {
-            return "student_current";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "currentStr")) {
-            return "student_current";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "objectiveScore")) {
-            return "objective_score";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "subjectiveScore")) {
-            return "subjective_score";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "totalScore")) {
-            return "total_score";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "assignedScore")) {
-            return "assigned_score";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "clazzCode")) {
-            return "clazz_code";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "clazzName")) {
-            return "clazz_name";
-        } else {
-            return null;
-        }
-    }
 }

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

@@ -95,9 +95,9 @@ public interface TBExamStudentMapper extends BaseMapper<TBExamStudent> {
      * @param studentParam
      * @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("inspectCollegeId") Long inspectCollegeId, @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);
 
     /**
      * 学生报告预览-列表接口

+ 3 - 4
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamCourseCollegeTeacherServiceImpl.java

@@ -3,7 +3,6 @@ package com.qmth.teachcloud.report.business.service.impl;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.service.SysOrgService;
 import com.qmth.teachcloud.common.util.ServletUtil;
@@ -68,9 +67,9 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         List<Long> collegeIds = sysOrgService.findCollegeIds(sysUser.getOrgId());
         if (Objects.nonNull(collegeIds) && collegeIds.size() > 0) {
-            return taExamCourseCollegeTeacherMapper.listAllTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, teachCollegeId, courseCode, teacherId, collegeIds, SystemConstant.getOrderColumn(column), Objects.nonNull(order) ? order.name() : null);
+            return taExamCourseCollegeTeacherMapper.listAllTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, teachCollegeId, courseCode, teacherId, collegeIds, column, Objects.nonNull(order) ? order.name() : null);
         } else {
-            return taExamCourseCollegeTeacherMapper.listAllTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, teachCollegeId, courseCode, teacherId, Arrays.asList(sysUser.getOrgId()), SystemConstant.getOrderColumn(column), Objects.nonNull(order) ? order.name() : null);
+            return taExamCourseCollegeTeacherMapper.listAllTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, teachCollegeId, courseCode, teacherId, Arrays.asList(sysUser.getOrgId()), column, Objects.nonNull(order) ? order.name() : null);
         }
     }
 
@@ -91,6 +90,6 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
     public IPage<TeacherClassRankResult> listTeacherClassRank(SemesterEnum semester, Long examId, String courseCode, Integer pageNumber, Integer pageSize, String column, OrderEnum order) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<TeacherClassRankResult> page = new Page<>(pageNumber, pageSize);
-        return taExamCourseCollegeTeacherMapper.listTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode, SystemConstant.getOrderColumn(column), Objects.nonNull(order) ? order.name() : null);
+        return taExamCourseCollegeTeacherMapper.listTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode, column, Objects.nonNull(order) ? order.name() : null);
     }
 }

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

@@ -143,27 +143,17 @@ public class TBExamStudentServiceImpl extends ServiceImpl<TBExamStudentMapper, T
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<TeachCollegeResult> page = new Page<>(pageNumber, pageSize);
         List<Long> collegeIds = sysOrgService.findCollegeIds(sysUser.getOrgId());
-        String finalColumn = null;
-        if (Objects.nonNull(column) && Objects.equals(column, "teachCollegeName")) {
-            finalColumn = "f.name ";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "inspectCollegeName")) {
-            finalColumn = "g.name";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "teacherName")) {
-            finalColumn = "h.real_name";
-        } else {
-            finalColumn = SystemConstant.getOrderColumn(column);
-        }
         IPage<TeachCollegeResult> listPage;
         if (Objects.nonNull(collegeIds) && collegeIds.size() > 0) {
-            listPage = tbExamStudentMapper.listTeachCollegeResult(page, schoolId, semester, examId, courseCode, current, inspectCollegeId, orgId, teacherId, studentParam, collegeIds, finalColumn, Objects.nonNull(order) ? order.name() : null);
+            listPage = tbExamStudentMapper.listTeachCollegeResult(page, schoolId, semester, examId, courseCode, current, inspectCollegeId, orgId, teacherId, studentParam, collegeIds, column, Objects.nonNull(order) ? order.name() : null);
         } else {
-            listPage = tbExamStudentMapper.listTeachCollegeResult(page, schoolId, semester, examId, courseCode, current, inspectCollegeId, orgId, teacherId, studentParam, Arrays.asList(sysUser.getOrgId()), finalColumn, Objects.nonNull(order) ? order.name() : null);
+            listPage = tbExamStudentMapper.listTeachCollegeResult(page, schoolId, semester, examId, courseCode, current, inspectCollegeId, orgId, teacherId, studentParam, Arrays.asList(sysUser.getOrgId()), column, Objects.nonNull(order) ? order.name() : null);
         }
         for (TeachCollegeResult record : listPage.getRecords()) {
             String tmp = record.getSemester();
             String result = "";
             for (SemesterEnum value : SemesterEnum.values()) {
-                if (tmp.equals(String.valueOf(value))){
+                if (tmp.equals(String.valueOf(value))) {
                     result = value.getTitle();
                 }
             }
@@ -234,32 +224,20 @@ public class TBExamStudentServiceImpl extends ServiceImpl<TBExamStudentMapper, T
     @Override
     public void exportTeachCollegeResult(String semester, Long examId, String courseCode, Boolean current, Long inspectCollegeId, Long teacherId, String studentParam, HttpServletResponse response, String column, OrderEnum order) throws Exception {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        String finalColumn = null;
-        if (Objects.nonNull(column) && Objects.equals(column, "teachCollegeName")) {
-            finalColumn = "f.name ";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "inspectCollegeName")) {
-            finalColumn = "g.name";
-        } else if (Objects.nonNull(column) && Objects.equals(column, "teacherName")) {
-            finalColumn = "h.real_name";
-        } else {
-            finalColumn = SystemConstant.getOrderColumn(column);
-        }
-        List<TeachCollegeResult> list = tbExamStudentMapper.listTeachCollegeResult(schoolId, semester, examId, courseCode, current, inspectCollegeId, teacherId, studentParam, finalColumn, Objects.nonNull(order) ? order.name() : null);
+        List<TeachCollegeResult> list = tbExamStudentMapper.listTeachCollegeResult(schoolId, semester, examId, courseCode, current, inspectCollegeId, teacherId, studentParam, column, Objects.nonNull(order) ? order.name() : null);
         ExcelUtil.excelExport("开课成绩查询", TeachCollegeResult.class, list, response);
     }
 
     @Override
     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());
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        Long inspectCollegeId = sysUser.getOrgId();
         Page<InspectCollegeResult> page = new Page<>(pageNumber, pageSize);
-        IPage<InspectCollegeResult> listPage = tbExamStudentMapper.listInspectCollegeResult(page, schoolId, semester, examId, courseCode, current, teachCollegeId,inspectCollegeId, teacherId, studentParam);
+        IPage<InspectCollegeResult> listPage = tbExamStudentMapper.listInspectCollegeResult(page, schoolId, semester, examId, courseCode, current, teachCollegeId, teacherId, studentParam, column, Objects.nonNull(order) ? order.name() : null);
         for (InspectCollegeResult record : listPage.getRecords()) {
             String tmp = record.getSemester();
             String result = "";
             for (SemesterEnum value : SemesterEnum.values()) {
-                if (tmp.equals(String.valueOf(value))){
+                if (tmp.equals(String.valueOf(value))) {
                     result = value.getTitle();
                 }
             }
@@ -271,7 +249,7 @@ public class TBExamStudentServiceImpl extends ServiceImpl<TBExamStudentMapper, T
     @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);
     }
 

+ 16 - 16
teachcloud-report-business/src/main/resources/mapper/TAExamCourseCollegeTeacherMapper.xml

@@ -75,18 +75,18 @@
 
     <select id="listAllTeacherClassRank"
             resultType="com.qmth.teachcloud.report.business.bean.result.TeacherClassRankResult">
-        SELECT
-            a.teach_college_name teachCollegeName,
-            a.inspect_college_name inspectCollegeName,
-            a.course_code courseCode,
-            a.course_name courseName,
-            a.teacher_name teacherName,
-            round(a.avg_score_assign, 1) avgScoreAssign,
-            a.teacher_rank `rank`
+        select * from(SELECT
+        a.teach_college_name teachCollegeName,
+        a.inspect_college_name inspectCollegeName,
+        a.course_code courseCode,
+        a.course_name courseName,
+        a.teacher_name teacherName,
+        round(a.avg_score_assign, 1) avgScoreAssign,
+        a.teacher_rank `rank`
         FROM
-            t_a_exam_course_college_teacher a
-                LEFT JOIN
-            t_b_exam b ON a.exam_id = b.id
+        t_a_exam_course_college_teacher a
+        LEFT JOIN
+        t_b_exam b ON a.exam_id = b.id
         <where>
             and b.school_id = #{schoolId}
             <if test="semester != null and semester != ''">
@@ -110,10 +110,10 @@
                     #{collegeId}
                 </foreach>
             </if>
+        </where> ) t
             <if test="column != null and column != '' and order != null and order != ''">
-                order by a.${column} ${order}
+                order by t.${column} ${order}
             </if>
-        </where>
     </select>
 
     <select id="findTeacherInfo" resultType="com.qmth.teachcloud.report.business.bean.result.TAExamCourseTeacherResult">
@@ -164,7 +164,7 @@
 
     <select id="listTeacherClassRank"
             resultType="com.qmth.teachcloud.report.business.bean.result.TeacherClassRankResult">
-        SELECT
+        select * from(SELECT
         a.inspect_college_name inspectCollegeName,
         a.teacher_name teacherName,
         round(a.avg_score_assign, 1) avgScoreAssign,
@@ -184,9 +184,9 @@
             <if test="courseCode != null and courseCode != ''">
                 and a.course_code = #{courseCode}
             </if>
-        </where>
+        </where> ) t
         <if test="column != null and column != '' and order != null and order != ''">
-            order by a.${column} ${order}
+            order by t.${column} ${order}
         </if>
     </select>
 </mapper>

+ 1 - 1
teachcloud-report-business/src/main/resources/mapper/TAExamTotalMapper.xml

@@ -73,7 +73,7 @@
         </where>
         ) t
         <if test="column != null and column != '' and order != null and order != ''">
-            order by ${column} ${order}
+            order by t.${column} ${order}
         </if>
     </select>
 </mapper>

+ 2 - 5
teachcloud-report-business/src/main/resources/mapper/TBExamStudentMapper.xml

@@ -144,7 +144,7 @@
             </if>
         </where> ) t
         <if test="column != null and column != '' and order != null and order != ''">
-            order by ${column} ${order}
+            order by t.${column} ${order}
         </if>
     </select>
 
@@ -199,9 +199,6 @@
             <if test="teachCollegeId != null">
                 and a.teach_college_id = #{teachCollegeId}
             </if>
-            <if test="inspectCollegeId != null">
-                and a.inspect_college_id = #{inspectCollegeId}
-            </if>
             <if test="teacherId != null">
                 and a.teacher_id = #{teacherId}
             </if>
@@ -212,7 +209,7 @@
             </if>
         </where> ) t
         <if test="column != null and column != '' and order != null and order != ''">
-            order by ${column} ${order}
+            order by t.${column} ${order}
         </if>
     </select>