Browse Source

Merge branch 'dev_v2.1.0' into release_v2.1.0
merge

wangliang 4 năm trước cách đây
mục cha
commit
7066494058
14 tập tin đã thay đổi với 77 bổ sung43 xóa
  1. 22 0
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/bean/result/TAExamCourseCollegeInspectResult.java
  2. 2 1
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/mapper/TAExamCourseMapper.java
  3. 1 1
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/TAExamCourseCollegeTeacherService.java
  4. 4 3
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/TAExamCourseService.java
  5. 1 1
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/TAExamTotalService.java
  6. 4 2
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamCourseCollegeTeacherServiceImpl.java
  7. 11 13
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamCourseServiceImpl.java
  8. 8 2
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamTotalServiceImpl.java
  9. 5 1
      teachcloud-report-business/src/main/resources/mapper/TAExamCourseCollegeInspectMapper.xml
  10. 2 1
      teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/CourseController.java
  11. 1 1
      teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/DataDriveController.java
  12. 1 2
      teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/TAExamCourseCollegeTeacherController.java
  13. 5 5
      teachcloud-report/src/main/resources/application-dev.properties
  14. 10 10
      teachcloud-report/src/main/resources/application-test.properties

+ 22 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/bean/result/TAExamCourseCollegeInspectResult.java

@@ -25,6 +25,28 @@ public class TAExamCourseCollegeInspectResult extends TAExamCourseCollegeInspect
     @ApiModelProperty(value = "学院名称")
     private String collegeName;
 
+    @ApiModelProperty(value = "考试时间")
+    private String examTime;
+
+    @ApiModelProperty(value = "考试名称")
+    private String examName;
+
+    public String getExamTime() {
+        return examTime;
+    }
+
+    public void setExamTime(String examTime) {
+        this.examTime = examTime;
+    }
+
+    public String getExamName() {
+        return examName;
+    }
+
+    public void setExamName(String examName) {
+        this.examName = examName;
+    }
+
     @Override
     public Long getCollegeId() {
         return collegeId;

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

@@ -47,7 +47,8 @@ public interface TAExamCourseMapper extends BaseMapper<TAExamCourse> {
      */
     IPage<TAExamCourseResult> surveyAspointsList(IPage<Map> iPage, @Param("schoolId") Long schoolId, @Param("examId") Long examId,
                                                  @Param("courseCode") String courseCode,
-                                                 @Param("publishStatus") String publishStatus);
+                                                 @Param("publishStatus") String publishStatus,
+                                                 @Param("semester") String semester);
 
     Map<String, String> getScoreAndRate(@Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode);
 

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

@@ -21,7 +21,7 @@ public interface TAExamCourseCollegeTeacherService extends IService<TAExamCourse
 
     IPage<TeacherClassRankResult> listClassRank(String semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize);
 
-    IPage<TeacherMyClassRankResult> listMyClassRank(String semester, Long examId, Long teacherId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize);
+    IPage<TeacherMyClassRankResult> listMyClassRank(String 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);
 

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

@@ -42,9 +42,10 @@ public interface TAExamCourseService extends IService<TAExamCourse> {
      * @param examId
      * @param courseCode
      * @param publishStatus
+     * @param semester
      * @return
      */
-    IPage<TAExamCourseResult> surveyAspointsList(IPage<Map> iPage, Long schoolId, Long examId, String courseCode, PublishStatusEnum publishStatus);
+    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);
 
@@ -111,8 +112,8 @@ public interface TAExamCourseService extends IService<TAExamCourse> {
     /**
      * 赋分试算
      *
-     * @param examId     考试id
-     * @param courseCode 课程编号
+     * @param examId      考试id
+     * @param courseCode  课程编号
      * @param coefficient 赋分系数
      * @return 结果
      */

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

@@ -21,7 +21,7 @@ public interface TAExamTotalService extends IService<TAExamTotal> {
 
     IPage<TAExamCourse> getCourseSummary(String semester, Long examId, Integer pageNumber, Integer pageSize);
 
-    void exportCourseSummary(String semester, Long examId, HttpServletResponse response);
+    void exportCourseSummary(String semester, Long examId, HttpServletResponse response) throws Exception;
 
     void exportDataAnalysis(String semester, Long examId, String courseCode, HttpServletResponse response);
 }

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

@@ -3,6 +3,7 @@ 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.entity.SysUser;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import com.qmth.teachcloud.report.business.bean.result.TAExamCourseTeacherResult;
 import com.qmth.teachcloud.report.business.bean.result.TeacherClassRankResult;
@@ -38,10 +39,11 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
     }
 
     @Override
-    public IPage<TeacherMyClassRankResult> listMyClassRank(String semester, Long examId, Long teacherId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize) {
+    public IPage<TeacherMyClassRankResult> listMyClassRank(String 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, teacherId, courseCode, inspectCollegeId);
+        IPage<TeacherMyClassRankResult> listPage = taExamCourseCollegeTeacherMapper.listMyClassRank(page, schoolId, semester, examId, sysUser.getId(), courseCode, inspectCollegeId);
         return listPage;
     }
 

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

@@ -44,9 +44,6 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
     @Resource
     TAExamCourseRecordMapper taExamCourseRecordMapper;
 
-    @Resource
-    TBPaperStructService tbPaperStructService;
-
     @Resource
     ReportCommonService reportCommonService;
 
@@ -64,7 +61,7 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
      */
     @Override
     public IPage<TAExamCourseResult> surveyTeacherList(IPage<Map> iPage, Long examId, SemesterEnum semester, Long schoolId) {
-        return taExamCourseMapper.surveyTeacherList(iPage, examId, semester.name(), schoolId);
+        return taExamCourseMapper.surveyTeacherList(iPage, examId, Objects.nonNull(semester) ? semester.name() : null, schoolId);
     }
 
 
@@ -82,11 +79,12 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
      * @param examId
      * @param courseCode
      * @param publishStatus
+     * @param semester
      * @return
      */
     @Override
-    public IPage<TAExamCourseResult> surveyAspointsList(IPage<Map> iPage, Long schoolId, Long examId, String courseCode, PublishStatusEnum publishStatus) {
-        return taExamCourseMapper.surveyAspointsList(iPage, schoolId, examId, courseCode, publishStatus.name());
+    public IPage<TAExamCourseResult> surveyAspointsList(IPage<Map> iPage, Long schoolId, Long examId, String courseCode, PublishStatusEnum publishStatus, SemesterEnum semester) {
+        return taExamCourseMapper.surveyAspointsList(iPage, schoolId, examId, courseCode, Objects.nonNull(publishStatus) ? publishStatus.name() : null, Objects.nonNull(semester) ? semester.name() : null);
     }
 
     @Override
@@ -207,7 +205,7 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
      */
     @Override
     public IPage<TAExamCourseCollegeTeacherResult> surveyTeacherTeacherView(IPage<Map> iPage, Long schoolId, SemesterEnum semester, Long examId, String courseCode) {
-        return taExamCourseMapper.surveyTeacherTeacherView(iPage, schoolId, semester.name(), examId, courseCode);
+        return taExamCourseMapper.surveyTeacherTeacherView(iPage, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode);
     }
 
     /**
@@ -247,8 +245,8 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
     @Override
     public TrialCalculationResult trialCalculate(Long examId, String courseCode, BigDecimal coefficient) {
         // 试卷分数设置
-        List<TBPaper> tbPaperList = tbPaperService.list(new QueryWrapper<TBPaper>().lambda().eq(TBPaper::getExamId,examId).eq(TBPaper::getCourseCode,courseCode));
-        if (tbPaperList.size() == 0){
+        List<TBPaper> tbPaperList = tbPaperService.list(new QueryWrapper<TBPaper>().lambda().eq(TBPaper::getExamId, examId).eq(TBPaper::getCourseCode, courseCode));
+        if (tbPaperList.size() == 0) {
             throw ExceptionResultEnum.ERROR.exception("该课程不存在");
         }
         TBPaper tbPaper = tbPaperList.get(0);
@@ -256,13 +254,13 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
         BigDecimal passScore = tbPaper.getPassScore();
         // 参考的考生数据
         List<TAExamCourseRecord> taExamCourseRecordList = taExamCourseRecordMapper.selectList(new QueryWrapper<TAExamCourseRecord>().lambda()
-                .eq(TAExamCourseRecord::getExamId,examId)
-                .eq(TAExamCourseRecord::getCourseCode,courseCode)
-                .eq(TAExamCourseRecord::getAbsent,false));
+                .eq(TAExamCourseRecord::getExamId, examId)
+                .eq(TAExamCourseRecord::getCourseCode, courseCode)
+                .eq(TAExamCourseRecord::getAbsent, false));
         for (TAExamCourseRecord taExamCourseRecord : taExamCourseRecordList) {
             BigDecimal paperScore = taExamCourseRecord.getTotalScore();
             BigDecimal assignScore = paperScore.add((fullScore.subtract(paperScore)).divide(coefficient, 4, BigDecimal.ROUND_HALF_UP));
-            assignScore = assignScore.setScale(0,BigDecimal.ROUND_HALF_UP);
+            assignScore = assignScore.setScale(0, BigDecimal.ROUND_HALF_UP);
             taExamCourseRecord.setAssignedScore(assignScore);
         }
         int totalCount = taExamCourseRecordList.size();

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

@@ -3,6 +3,8 @@ 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.util.ExcelUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import com.qmth.teachcloud.report.business.entity.TAExamCourse;
 import com.qmth.teachcloud.report.business.entity.TAExamTotal;
@@ -27,6 +29,9 @@ public class TAExamTotalServiceImpl extends ServiceImpl<TAExamTotalMapper, TAExa
     @Resource
     TAExamTotalMapper taExamTotalMapper;
 
+    @Resource
+    TAExamTotalService taExamTotalService;
+
     @Override
     public TAExamTotal getOverview(String semester, Long examId) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -42,8 +47,9 @@ public class TAExamTotalServiceImpl extends ServiceImpl<TAExamTotalMapper, TAExa
     }
 
     @Override
-    public void exportCourseSummary(String semester, Long examId, HttpServletResponse response) {
-
+    public void exportCourseSummary(String semester, Long examId, HttpServletResponse response) throws Exception {
+        IPage<TAExamCourse> taExamCourseIPage = taExamTotalService.getCourseSummary(semester, examId, SystemConstant.PAGE_NUMBER, SystemConstant.PAGE_SIZE);
+        ExcelUtil.excelExport("课程分析", TAExamCourse.class, taExamCourseIPage.getRecords(), response);
     }
 
     @Override

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

@@ -47,9 +47,13 @@
             round(convert(current_median,decimal(10,4)),2) AS median,
             round(convert(current_lower_quartile,decimal(10,4)),2) AS lowerQuartile,
             current_mode,
-            round(convert(current_standard_deviation,decimal(10,4)),2) AS standardDeviation
+            round(convert(current_standard_deviation,decimal(10,4)),2) AS standardDeviation,
+            tbe.exam_time as examTime,
+            tbe.exam_name as examName
         FROM
             t_a_exam_course taec
+            join t_b_exam tbe
+            on tbe.id = taec.exam_id
         <where>
             <if test="courseCode != null and courseCode != ''">
                 and taec.course_code = #{courseCode}

+ 2 - 1
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/CourseController.java

@@ -124,11 +124,12 @@ public class CourseController {
     @RequestMapping(value = "/survey_aspoints/list", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "考试科目信息", response = TAExamCourseResult.class)})
     public Result surveyAspointsList(@ApiParam(value = "学校id", required = false) @RequestParam(required = false) String schoolId,
+                                     @ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
                                      @ApiParam(value = "考试id", required = true) @RequestParam String examId,
                                      @ApiParam(value = "科目编码", required = false) @RequestParam(required = false) String courseCode,
                                      @ApiParam(value = "发布状态", required = false) @RequestParam(required = false) PublishStatusEnum publishStatus,
                                      @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
                                      @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
-        return ResultUtil.ok(taExamCourseService.surveyAspointsList(new Page<>(pageNumber, pageSize), Objects.isNull(schoolId) ? (Long) ServletUtil.getRequestHeaderSchoolId() : SystemConstant.convertIdToLong(schoolId), SystemConstant.convertIdToLong(examId), courseCode, publishStatus));
+        return ResultUtil.ok(taExamCourseService.surveyAspointsList(new Page<>(pageNumber, pageSize), Objects.isNull(schoolId) ? (Long) ServletUtil.getRequestHeaderSchoolId() : SystemConstant.convertIdToLong(schoolId), SystemConstant.convertIdToLong(examId), courseCode, publishStatus, semester));
     }
 }

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

@@ -57,7 +57,7 @@ public class DataDriveController {
     @RequestMapping(value = "/exam/export_course_summary", method = RequestMethod.POST)
     public void exportCourseSummary(@ApiParam(value = "学期", required = true) @RequestParam String semester,
                                     @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
-                                    HttpServletResponse response) {
+                                    HttpServletResponse response) throws Exception {
         taExamTotalService.exportCourseSummary(semester, examId, response);
     }
 

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

@@ -50,11 +50,10 @@ public class TAExamCourseCollegeTeacherController {
     public Result listMyClassRank(
             @ApiParam(value = "学期", required = true) @RequestParam String semester,
             @ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
-            @ApiParam(value = "教师ID", required = true) @RequestParam Long teacherId,
             @ApiParam(value = "课程代码", required = false) @RequestParam(required = false) String courseCode,
             @ApiParam(value = "考查学院ID", required = false) @RequestParam(required = false) Long inspectCollegeId,
             @ApiParam(value = "分页页码", required = true) @RequestParam Integer pageNumber,
             @ApiParam(value = "分页数量", required = true) @RequestParam Integer pageSize) {
-        return ResultUtil.ok(taExamCourseCollegeTeacherService.listMyClassRank(semester, examId, teacherId, courseCode, inspectCollegeId, pageNumber, pageSize));
+        return ResultUtil.ok(taExamCourseCollegeTeacherService.listMyClassRank(semester, examId, courseCode, inspectCollegeId, pageNumber, pageSize));
     }
 }

+ 5 - 5
teachcloud-report/src/main/resources/application-dev.properties

@@ -10,19 +10,19 @@ server.tomcat.uri-encoding=UTF-8
 spring.application.name=teachcloud-report
 
 #\u6570\u636E\u6E90\u914D\u7F6E
-#db.host=192.168.10.136
-db.host=localhost
+db.host=192.168.10.136
+#db.host=localhost
 db.port=3306
 db.name=teachcloud-report
 db.username=root
-#db.password=Qmth87863577!
-db.password=123456789
+db.password=Qmth87863577!
+#db.password=123456789
 
 #redis\u6570\u636E\u6E90\u914D\u7F6E
 com.qmth.redis.host=${db.host}
 com.qmth.redis.port=6379
 com.qmth.redis.db=1
-#com.qmth.redis.password=123456
+com.qmth.redis.password=123456
 
 #mysql\u914D\u7F6E
 com.qmth.mysql.url=jdbc:mysql://${db.host}:${db.port}/${db.name}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8

+ 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