Jelajahi Sumber

Merge remote-tracking branch 'origin/dev_v2.1.0' into dev_v2.1.0

caozixuan 4 tahun lalu
induk
melakukan
4a0009db1a

+ 157 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/bean/dto/excel/TAExamCourseDto.java

@@ -0,0 +1,157 @@
+package com.qmth.teachcloud.report.business.bean.dto.excel;
+
+import com.qmth.teachcloud.common.annotation.ExcelProperty;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * @Description: TAExamCourseDto
+ * @Param:
+ * @return:
+ * @Author: wangliang
+ * @Date: 2021/6/17
+ */
+public class TAExamCourseDto implements Serializable {
+
+    @ExcelProperty(name = "课程(代码)", width = 40, index = 1)
+    private String courseCodeName;
+
+    @ExcelProperty(name = "开课学院", width = 30, index = 2)
+    private String teachCollegeName;
+
+    @ExcelProperty(name = "考查学院", width = 30, index = 3)
+    private String inspectCollegeName;
+
+    @ExcelProperty(name = "有效人数", width = 30, index = 4)
+    private Integer realityCount;
+
+    @ExcelProperty(name = "应届占比(人数)", width = 50, index = 5)
+    private String currentRealityRate;
+
+    @ExcelProperty(name = "非应届占比(人数)", width = 50, index = 6)
+    private String pastRealityRate;
+
+    @ExcelProperty(name = "总体平均分", width = 30, index = 7)
+    private BigDecimal avgScore;
+
+    @ExcelProperty(name = "不及格率(人数)", width = 40, index = 8)
+    private String notPassRate;
+
+    @ExcelProperty(name = "缺考", width = 30, index = 9)
+    private Integer absentCount;
+
+    @ExcelProperty(name = "应届平均分", width = 30, index = 10)
+    private BigDecimal paperCurrentAvgScore;
+
+    @ExcelProperty(name = "应届不及格率(人数)", width = 50, index = 11)
+    private String currentNotPassRate;
+
+    public TAExamCourseDto() {
+
+    }
+
+    public TAExamCourseDto(String courseCodeName, String teachCollegeName, String inspectCollegeName, Integer realityCount,
+                           String currentRealityRate, String pastRealityRate, BigDecimal avgScore, String notPassRate,
+                           Integer absentCount, BigDecimal paperCurrentAvgScore, String currentNotPassRate) {
+        this.courseCodeName = courseCodeName;
+        this.teachCollegeName = teachCollegeName;
+        this.inspectCollegeName = inspectCollegeName;
+        this.realityCount = realityCount;
+        this.currentRealityRate = currentRealityRate;
+        this.pastRealityRate = pastRealityRate;
+        this.avgScore = avgScore;
+        this.notPassRate = notPassRate;
+        this.absentCount = absentCount;
+        this.paperCurrentAvgScore = paperCurrentAvgScore;
+        this.currentNotPassRate = currentNotPassRate;
+    }
+
+    public String getCourseCodeName() {
+        return courseCodeName;
+    }
+
+    public void setCourseCodeName(String courseCodeName) {
+        this.courseCodeName = courseCodeName;
+    }
+
+    public String getTeachCollegeName() {
+        return teachCollegeName;
+    }
+
+    public void setTeachCollegeName(String teachCollegeName) {
+        this.teachCollegeName = teachCollegeName;
+    }
+
+    public String getInspectCollegeName() {
+        return inspectCollegeName;
+    }
+
+    public void setInspectCollegeName(String inspectCollegeName) {
+        this.inspectCollegeName = inspectCollegeName;
+    }
+
+    public Integer getRealityCount() {
+        return realityCount;
+    }
+
+    public void setRealityCount(Integer realityCount) {
+        this.realityCount = realityCount;
+    }
+
+    public String getCurrentRealityRate() {
+        return currentRealityRate;
+    }
+
+    public void setCurrentRealityRate(String currentRealityRate) {
+        this.currentRealityRate = currentRealityRate;
+    }
+
+    public String getPastRealityRate() {
+        return pastRealityRate;
+    }
+
+    public void setPastRealityRate(String pastRealityRate) {
+        this.pastRealityRate = pastRealityRate;
+    }
+
+    public BigDecimal getAvgScore() {
+        return avgScore;
+    }
+
+    public void setAvgScore(BigDecimal avgScore) {
+        this.avgScore = avgScore;
+    }
+
+    public String getNotPassRate() {
+        return notPassRate;
+    }
+
+    public void setNotPassRate(String notPassRate) {
+        this.notPassRate = notPassRate;
+    }
+
+    public Integer getAbsentCount() {
+        return absentCount;
+    }
+
+    public void setAbsentCount(Integer absentCount) {
+        this.absentCount = absentCount;
+    }
+
+    public BigDecimal getPaperCurrentAvgScore() {
+        return paperCurrentAvgScore;
+    }
+
+    public void setPaperCurrentAvgScore(BigDecimal paperCurrentAvgScore) {
+        this.paperCurrentAvgScore = paperCurrentAvgScore;
+    }
+
+    public String getCurrentNotPassRate() {
+        return currentNotPassRate;
+    }
+
+    public void setCurrentNotPassRate(String currentNotPassRate) {
+        this.currentNotPassRate = currentNotPassRate;
+    }
+}

+ 5 - 4
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/TAExamCourseCollegeTeacherService.java

@@ -6,6 +6,7 @@ import com.qmth.teachcloud.report.business.bean.result.TAExamCourseTeacherResult
 import com.qmth.teachcloud.report.business.bean.result.TeacherClassRankResult;
 import com.qmth.teachcloud.report.business.bean.result.TeacherMyClassRankResult;
 import com.qmth.teachcloud.report.business.entity.TAExamCourseCollegeTeacher;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 
 import java.util.List;
 
@@ -19,11 +20,11 @@ import java.util.List;
  */
 public interface TAExamCourseCollegeTeacherService extends IService<TAExamCourseCollegeTeacher> {
 
-    IPage<TeacherClassRankResult> listClassRank(String semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize);
+    IPage<TeacherClassRankResult> listClassRank(SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize);
 
-    IPage<TeacherMyClassRankResult> listMyClassRank(String semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize);
+    IPage<TeacherMyClassRankResult> listMyClassRank(SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize);
 
-    IPage<TeacherClassRankResult> listAllTeacherClassRank(String semester, Long examId, Long teachCollegeId, String courseCode, Long teacherId, Integer pageNumber, Integer pageSize);
+    IPage<TeacherClassRankResult> listAllTeacherClassRank(SemesterEnum semester, Long examId, Long teachCollegeId, String courseCode, Long teacherId, Integer pageNumber, Integer pageSize);
 
     /**
      * 查询老师得分
@@ -35,5 +36,5 @@ public interface TAExamCourseCollegeTeacherService extends IService<TAExamCourse
      */
     List<TAExamCourseTeacherResult> findTeacherInfo(Long examId, String courseCode, Long collegeId);
 
-    IPage<TeacherClassRankResult> listTeacherClassRank(String semester, Long examId, String courseCode, Integer pageNumber, Integer pageSize);
+    IPage<TeacherClassRankResult> listTeacherClassRank(SemesterEnum semester, Long examId, String courseCode, Integer pageNumber, Integer pageSize);
 }

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

@@ -32,7 +32,7 @@ public interface TAExamCourseService extends IService<TAExamCourse> {
     IPage<TAExamCourseResult> surveyTeacherList(IPage<Map> iPage, Long examId, SemesterEnum semester, Long schoolId);
 
 
-    ExamCourseResult getOverview(String semester, Long examId, String courseCode);
+    ExamCourseResult getOverview(SemesterEnum semester, Long examId, String courseCode);
 
     /**
      * 赋分管理列表接口
@@ -47,7 +47,7 @@ public interface TAExamCourseService extends IService<TAExamCourse> {
      */
     IPage<TAExamCourseResult> surveyAspointsList(IPage<Map> iPage, Long schoolId, Long examId, String courseCode, PublishStatusEnum publishStatus, SemesterEnum semester);
 
-    Map<String, Object> getGradeDistribute(String semester, Long examId, String courseCode);
+    Map<String, Object> getGradeDistribute(SemesterEnum semester, Long examId, String courseCode);
 
     /**
      * 考查课程考试分析接口

+ 5 - 4
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/TAExamTotalService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.teachcloud.report.business.entity.TAExamCourse;
 import com.qmth.teachcloud.report.business.entity.TAExamTotal;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 
 import javax.servlet.http.HttpServletResponse;
 
@@ -17,11 +18,11 @@ import javax.servlet.http.HttpServletResponse;
  */
 public interface TAExamTotalService extends IService<TAExamTotal> {
 
-    TAExamTotal getOverview(String semester, Long examId);
+    TAExamTotal getOverview(SemesterEnum semester, Long examId);
 
-    IPage<TAExamCourse> getCourseSummary(String semester, Long examId, Integer pageNumber, Integer pageSize);
+    IPage<TAExamCourse> getCourseSummary(SemesterEnum semester, Long examId, Integer pageNumber, Integer pageSize);
 
-    void exportCourseSummary(String semester, Long examId, HttpServletResponse response);
+    void exportCourseSummary(SemesterEnum semester, Long examId, HttpServletResponse response) throws Exception;
 
-    void exportDataAnalysis(String semester, Long examId, String courseCode, HttpServletResponse response);
+    void exportDataAnalysis(SemesterEnum semester, Long examId, String courseCode, HttpServletResponse response);
 }

+ 10 - 8
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamCourseCollegeTeacherServiceImpl.java

@@ -9,12 +9,14 @@ import com.qmth.teachcloud.report.business.bean.result.TAExamCourseTeacherResult
 import com.qmth.teachcloud.report.business.bean.result.TeacherClassRankResult;
 import com.qmth.teachcloud.report.business.bean.result.TeacherMyClassRankResult;
 import com.qmth.teachcloud.report.business.entity.TAExamCourseCollegeTeacher;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 import com.qmth.teachcloud.report.business.mapper.TAExamCourseCollegeTeacherMapper;
 import com.qmth.teachcloud.report.business.service.TAExamCourseCollegeTeacherService;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * <p>
@@ -31,27 +33,27 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
     private TAExamCourseCollegeTeacherMapper taExamCourseCollegeTeacherMapper;
 
     @Override
-    public IPage<TeacherClassRankResult> listClassRank(String semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize) {
+    public IPage<TeacherClassRankResult> listClassRank(SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<TeacherClassRankResult> page = new Page<>(pageNumber, pageSize);
-        IPage<TeacherClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listClassRank(page, schoolId, semester, examId, courseCode, inspectCollegeId);
+        IPage<TeacherClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode, inspectCollegeId);
         return listPage;
     }
 
     @Override
-    public IPage<TeacherMyClassRankResult> listMyClassRank(String semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize) {
+    public IPage<TeacherMyClassRankResult> listMyClassRank(SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         Page<TeacherMyClassRankResult> page = new Page<>(pageNumber, pageSize);
-        IPage<TeacherMyClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listMyClassRank(page, schoolId, semester, examId, sysUser.getId(), courseCode, inspectCollegeId);
+        IPage<TeacherMyClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listMyClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, sysUser.getId(), courseCode, inspectCollegeId);
         return listPage;
     }
 
     @Override
-    public IPage<TeacherClassRankResult> listAllTeacherClassRank(String semester, Long examId, Long teachCollegeId, String courseCode, Long teacherId, Integer pageNumber, Integer pageSize) {
+    public IPage<TeacherClassRankResult> listAllTeacherClassRank(SemesterEnum semester, Long examId, Long teachCollegeId, String courseCode, Long teacherId, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<TeacherClassRankResult> page = new Page<>(pageNumber, pageSize);
-        IPage<TeacherClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listAllTeacherClassRank(page, schoolId, semester, examId, teachCollegeId, courseCode, teacherId);
+        IPage<TeacherClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listAllTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, teachCollegeId, courseCode, teacherId);
         return listPage;
     }
 
@@ -69,10 +71,10 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
     }
 
     @Override
-    public IPage<TeacherClassRankResult> listTeacherClassRank(String semester, Long examId, String courseCode, Integer pageNumber, Integer pageSize) {
+    public IPage<TeacherClassRankResult> listTeacherClassRank(SemesterEnum semester, Long examId, String courseCode, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<TeacherClassRankResult> page = new Page<>(pageNumber, pageSize);
-        IPage<TeacherClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listTeacherClassRank(page, schoolId, semester, examId, courseCode);
+        IPage<TeacherClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode);
         return listPage;
     }
 }

+ 5 - 5
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamCourseServiceImpl.java

@@ -66,9 +66,9 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
 
 
     @Override
-    public ExamCourseResult getOverview(String semester, Long examId, String courseCode) {
+    public ExamCourseResult getOverview(SemesterEnum semester, Long examId, String courseCode) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        return taExamCourseMapper.getOverview(schoolId, semester, examId, courseCode);
+        return taExamCourseMapper.getOverview(schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode);
     }
 
     /**
@@ -88,11 +88,11 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
     }
 
     @Override
-    public Map<String, Object> getGradeDistribute(String semester, Long examId, String courseCode) {
+    public Map<String, Object> getGradeDistribute(SemesterEnum semester, Long examId, String courseCode) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Map<String, Object> map = new HashMap<>();
         // 不及格率
-        Map<String, String> scoreAndRate = taExamCourseMapper.getScoreAndRate(schoolId, semester, examId, courseCode);
+        Map<String, String> scoreAndRate = taExamCourseMapper.getScoreAndRate(schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode);
         map.put("scoreAndRate", scoreAndRate);
         // 成绩正态分布
         String[] strings = {"90~100", "80~89", "70~79", "60~69", "55~59", "1~54"};
@@ -101,7 +101,7 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
             String[] str = string.split("~");
             double startScore = Double.parseDouble(str[0]);
             double endScore = Double.parseDouble(str[1]);
-            List<TAExamCourseRecord> taExamCourseRecords = taExamCourseRecordMapper.listExamCourseRecord(schoolId, semester, examId, courseCode);
+            List<TAExamCourseRecord> taExamCourseRecords = taExamCourseRecordMapper.listExamCourseRecord(schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode);
             // 全部有效人数
             long totalRealityCount = taExamCourseRecords.stream().filter(m -> Objects.nonNull(m.getAbsent()) && !m.getAbsent()).count();
             // 本分数段人数

+ 23 - 7
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamTotalServiceImpl.java

@@ -3,15 +3,24 @@ 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.google.common.reflect.TypeToken;
+import com.google.gson.Gson;
+import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.util.ExcelUtil;
+import com.qmth.teachcloud.common.util.JacksonUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
+import com.qmth.teachcloud.report.business.bean.dto.excel.TAExamCourseDto;
 import com.qmth.teachcloud.report.business.entity.TAExamCourse;
 import com.qmth.teachcloud.report.business.entity.TAExamTotal;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 import com.qmth.teachcloud.report.business.mapper.TAExamTotalMapper;
 import com.qmth.teachcloud.report.business.service.TAExamTotalService;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+import java.util.Objects;
 
 /**
  * <p>
@@ -27,27 +36,34 @@ public class TAExamTotalServiceImpl extends ServiceImpl<TAExamTotalMapper, TAExa
     @Resource
     TAExamTotalMapper taExamTotalMapper;
 
+    @Resource
+    TAExamTotalService taExamTotalService;
+
     @Override
-    public TAExamTotal getOverview(String semester, Long examId) {
+    public TAExamTotal getOverview(SemesterEnum semester, Long examId) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        return taExamTotalMapper.getOverview(schoolId, semester, examId);
+        return taExamTotalMapper.getOverview(schoolId, Objects.nonNull(semester) ? semester.name() : null, examId);
     }
 
     @Override
-    public IPage<TAExamCourse> getCourseSummary(String semester, Long examId, Integer pageNumber, Integer pageSize) {
+    public IPage<TAExamCourse> getCourseSummary(SemesterEnum semester, Long examId, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<TAExamCourse> page = new Page<>(pageNumber, pageSize);
-        IPage<TAExamCourse> listPage = taExamTotalMapper.getCourseSummary(page, schoolId, semester, examId);
+        IPage<TAExamCourse> listPage = taExamTotalMapper.getCourseSummary(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId);
         return listPage;
     }
 
     @Override
-    public void exportCourseSummary(String semester, Long examId, HttpServletResponse response) {
-
+    public void exportCourseSummary(SemesterEnum semester, Long examId, HttpServletResponse response) throws Exception {
+        IPage<TAExamCourse> taExamCourseIPage = taExamTotalService.getCourseSummary(semester, examId, SystemConstant.PAGE_NUMBER, SystemConstant.PAGE_SIZE);
+        Gson gson = new Gson();
+        List<TAExamCourseDto> examStudentCourseDtoList = gson.fromJson(JacksonUtil.parseJson(taExamCourseIPage.getRecords()), new TypeToken<List<TAExamCourseDto>>() {
+        }.getType());
+        ExcelUtil.excelExport("课程分析", TAExamCourseDto.class, examStudentCourseDtoList, response);
     }
 
     @Override
-    public void exportDataAnalysis(String semester, Long examId, String courseCode, HttpServletResponse response) {
+    public void exportDataAnalysis(SemesterEnum semester, Long examId, String courseCode, HttpServletResponse response) {
 
     }
 }

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

@@ -152,5 +152,6 @@
                 and taecct.course_code = #{courseCode}
             </if>
         </where>
+        order by taecct.inspect_college_name
     </select>
 </mapper>

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

@@ -44,7 +44,12 @@
             round(a.pass_rate * 100,1) passRate,
             round(a.current_avg_score, 1) currentAvgScore,
             a.current_pass_count currentPassCount,
-            round(a.current_pass_rate * 100, 1) currentPassRate
+            round(a.current_pass_rate * 100, 1) currentPassRate,
+            round(a.current_reality_rate * 100, 1) currentRealityRate,
+            round(a.past_reality_rate * 100, 1) pastRealityRate,
+            round((1 - a.pass_rate),1) as notPassRate,
+            a.paper_current_avg_score as paperCurrentAvgScore,
+            round((1 - a.current_pass_rate),1) as currentNotPassRate
         FROM
             t_a_exam_course a
                 LEFT JOIN

+ 10 - 9
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/DataDriveController.java

@@ -7,6 +7,7 @@ import com.qmth.teachcloud.report.business.entity.TAExamCourse;
 import com.qmth.teachcloud.report.business.entity.TAExamCourseCollegeTeacher;
 import com.qmth.teachcloud.report.business.entity.TAExamCourseTeacher;
 import com.qmth.teachcloud.report.business.entity.TAExamTotal;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 import com.qmth.teachcloud.report.business.service.TAExamCourseCollegeTeacherService;
 import com.qmth.teachcloud.report.business.service.TAExamCourseService;
 import com.qmth.teachcloud.report.business.service.TAExamCourseTeacherService;
@@ -38,7 +39,7 @@ public class DataDriveController {
     @ApiOperation(value = "全校考试总览-全校考试概况")
     @RequestMapping(value = "/exam/get_overview", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "全校考试总览-全校考试概况", response = TAExamTotal.class)})
-    public Result getOverview(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public Result getOverview(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                               @ApiParam(value = "考试ID", required = true) @RequestParam Long examId) {
         return ResultUtil.ok(taExamTotalService.getOverview(semester, examId));
     }
@@ -46,7 +47,7 @@ public class DataDriveController {
     @ApiOperation(value = "全校考试总览-全校课程考试分析汇总")
     @RequestMapping(value = "/exam/get_course_summary", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "全校考试总览-全校考试概况", response = TAExamCourse.class)})
-    public Result getCourseSummary(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public Result getCourseSummary(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                    @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                                    @ApiParam(value = "分页页码", required = true) @RequestParam Integer pageNumber,
                                    @ApiParam(value = "分页数量", required = true) @RequestParam Integer pageSize) {
@@ -55,16 +56,16 @@ public class DataDriveController {
 
     @ApiOperation(value = "全校考试总览-全校课程考试分析汇总-导出课程分析Excel报表")
     @RequestMapping(value = "/exam/export_course_summary", method = RequestMethod.POST)
-    public void exportCourseSummary(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public void exportCourseSummary(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                     @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
-                                    HttpServletResponse response) {
+                                    HttpServletResponse response) throws Exception {
         taExamTotalService.exportCourseSummary(semester, examId, response);
     }
 
     @ApiOperation(value = "全校课程考试分析-全校考试概况")
     @RequestMapping(value = "/course/get_overview", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "全校考试总览-全校考试概况", response = TAExamCourse.class)})
-    public Result getOverview(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public Result getOverview(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                               @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                               @ApiParam(value = "课程代码", required = true) @RequestParam String courseCode) {
         return ResultUtil.ok(taExamCourseService.getOverview(semester, examId, courseCode));
@@ -73,7 +74,7 @@ public class DataDriveController {
     @ApiOperation(value = "全校课程考试分析-分数段分布情况")
     @RequestMapping(value = "/course/get_grade_distribute", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "全校课程考试分析-分数段分布情况", response = Map.class)})
-    public Result getGradeDistribute(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public Result getGradeDistribute(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                      @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                                      @ApiParam(value = "课程代码", required = true) @RequestParam String courseCode) {
         return ResultUtil.ok(taExamCourseService.getGradeDistribute(semester, examId, courseCode));
@@ -82,7 +83,7 @@ public class DataDriveController {
     @ApiOperation(value = "全校课程考试分析-教师各课堂成绩排名")
     @RequestMapping(value = "/course/list_teacher_class_rank", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "全校课程考试分析-教师各课堂成绩排名", response = TAExamCourseTeacher.class)})
-    public Result listTeacherClassRank(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public Result listTeacherClassRank(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                        @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                                        @ApiParam(value = "课程代码", required = true) @RequestParam String courseCode,
                                        @ApiParam(value = "分页页码", required = true) @RequestParam Integer pageNumber,
@@ -92,7 +93,7 @@ public class DataDriveController {
 
     @ApiOperation(value = "全校课程考试分析-考试概况-导出课程分析报表")
     @RequestMapping(value = "/course/export_data_analysis", method = RequestMethod.POST)
-    public void exportDataAnalysis(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public void exportDataAnalysis(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                    @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                                    @ApiParam(value = "课程代码", required = true) @RequestParam String courseCode,
                                    HttpServletResponse response) {
@@ -102,7 +103,7 @@ public class DataDriveController {
     @ApiOperation(value = "全校教师各课堂成绩排名")
     @RequestMapping(value = "/teacher/list_all_teacher_class_rank", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "全校课程考试分析-教师各课堂成绩排名", response = TAExamCourseTeacher.class)})
-    public Result listAllTeacherClassRank(@ApiParam(value = "学期", required = true) @RequestParam String semester,
+    public Result listAllTeacherClassRank(@ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                           @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                                           @ApiParam(value = "开课学院ID", required = true) @RequestParam(required = false) Long teachCollegeId,
                                           @ApiParam(value = "课程代码", required = true) @RequestParam(required = false) String courseCode,

+ 3 - 2
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/TAExamCourseCollegeTeacherController.java

@@ -7,6 +7,7 @@ import com.qmth.teachcloud.common.util.ResultUtil;
 import com.qmth.teachcloud.report.business.bean.result.TBExamStudentResult;
 import com.qmth.teachcloud.report.business.bean.result.TeacherClassRankResult;
 import com.qmth.teachcloud.report.business.bean.result.TeacherMyClassRankResult;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 import com.qmth.teachcloud.report.business.service.TAExamCourseCollegeTeacherService;
 import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -35,7 +36,7 @@ public class TAExamCourseCollegeTeacherController {
     @RequestMapping(value = "/list_class_rank", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "教师各课堂成绩排名", response = TeacherClassRankResult.class)})
     public Result listClassRank(
-            @ApiParam(value = "学期", required = true) @RequestParam String semester,
+            @ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
             @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
             @ApiParam(value = "课程代码", required = false) @RequestParam(required = false) String courseCode,
             @ApiParam(value = "考查学院ID", required = false) @RequestParam(required = false) Long inspectCollegeId,
@@ -48,7 +49,7 @@ public class TAExamCourseCollegeTeacherController {
     @RequestMapping(value = "/list_myclass_rank", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "我的课堂考成绩排名", response = TeacherMyClassRankResult.class)})
     public Result listMyClassRank(
-            @ApiParam(value = "学期", required = true) @RequestParam String semester,
+            @ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
             @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
             @ApiParam(value = "课程代码", required = false) @RequestParam(required = false) String courseCode,
             @ApiParam(value = "考查学院ID", required = false) @RequestParam(required = false) Long inspectCollegeId,

+ 10 - 10
teachcloud-report/src/main/resources/application-test.properties

@@ -1,4 +1,4 @@
-server.port=7005
+server.port=8005
 #tomcat\u6700\u5927\u7EBF\u7A0B\u6570\uFF0C\u9ED8\u8BA4\u4E3A200
 server.tomcat.threads.max=2500
 #tomcat\u6700\u5927\u8FDE\u63A5\u6570
@@ -11,15 +11,15 @@ spring.application.name=teachcloud-report
 
 #\u6570\u636E\u6E90\u914D\u7F6E
 db.host=192.168.10.136
-db.port=3306
-db.name=teachcloud-report
-db.username=root
-db.password=Qmth87863577!
+db.port=3307
+db.name=teachcloud_report_test
+db.username=teachcloud_report_test
+db.password=teachcloud_report_test
 
 #redis\u6570\u636E\u6E90\u914D\u7F6E
 com.qmth.redis.host=${db.host}
+com.qmth.redis.db=15
 com.qmth.redis.port=6379
-com.qmth.redis.db=1
 com.qmth.redis.password=123456
 
 #mysql\u914D\u7F6E
@@ -44,8 +44,8 @@ sys.config.attachmentType=.xlsx,.xls,.doc,.docx,.pdf,.jpg,.jpeg,.png,.html,.zip,
 sys.config.attachmentLength=100
 sys.config.attachmentSize=200
 sys.config.serverUpload=
-sys.config.fileHost=localhost:7004
-sys.config.serverHost=localhost:7004
+sys.config.fileHost=192.168.10.136:8005
+sys.config.serverHost=192.168.10.136:8005
 #sys.config.accessKey=0bce69d94a7b4aef8bc0badf150351a9
 #sys.config.accessSecret=LdUwb5X4etmjW7fDn0KAdoXG0Yt7AkDu
 sys.config.accessKey=274f823e5f59410f8b3bb6edcd8e2b6e
@@ -56,7 +56,7 @@ sys.config.adminLogoUrl=http://qmth-test.oss-cn-shenzhen.aliyuncs.com/frontend/w
 #sys.config.autoCreatePdfResetMaxCount=5
 sys.config.threadPoolCoreSize=1
 sys.config.customThreadPoolCoreSize=true
-sys.config.reportUrl=http://localhost:7004/#/student-report/
+sys.config.reportUrl=http://192.168.10.136:7005/#/student-report/
 spring.resources.static-locations=file:${sys.config.serverUpload},classpath:/META-INF/resources/,classpath:/resources/
 
 org.center.url=https://solar.qmth.com.cn
@@ -95,7 +95,7 @@ prefix.url.analyze=report/analyze
 
 #\u65E5\u5FD7\u914D\u7F6E
 com.qmth.logging.root-level=info
-com.qmth.logging.file-path=/Users/king/Downloads/teachcloud-report.log
+com.qmth.logging.file-path=./logs/teachcloud-report.log
 
 #\u5F15\u5165task\u914D\u7F6E\u6587\u4EF6
 spring.profiles.include=task