浏览代码

新增entity

wangliang 3 年之前
父节点
当前提交
6c1aee59a0

+ 13 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/mapper/TAExamCourseCollegeTeacherMapper.java

@@ -3,6 +3,7 @@ package com.qmth.teachcloud.report.business.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.teachcloud.report.business.bean.result.SurveyTeacherViewResult;
 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;
@@ -39,4 +40,16 @@ public interface TAExamCourseCollegeTeacherMapper extends BaseMapper<TAExamCours
     List<TAExamCourseTeacherResult> findTeacherInfo(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("collegeId") Long collegeId);
 
     IPage<TeacherClassRankResult> listTeacherClassRank(@Param("page") Page<TeacherClassRankResult> page, @Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("column") String column, @Param("order") String order);
+
+    /**
+     * 我的课堂考试分析图表接口
+     *
+     * @param schoolId
+     * @param semester
+     * @param examId
+     * @param courseCode
+     * @param inspectCollegeId
+     * @return
+     */
+    SurveyTeacherViewResult teacherView(@Param("schoolId") Long schoolId, @Param("semester") String semester, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("inspectCollegeId") Long inspectCollegeId);
 }

+ 11 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/ReportCommonService.java

@@ -2,6 +2,7 @@ package com.qmth.teachcloud.report.business.service;
 
 import com.qmth.teachcloud.report.business.bean.result.*;
 import com.qmth.teachcloud.report.business.entity.TAExamCourse;
+import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
@@ -104,4 +105,14 @@ public interface ReportCommonService {
      * 武汉大学退出
      */
     public void whuLogout() throws IOException;
+
+    /**
+     * 获取开课课程考试课程总览
+     *
+     * @param semester
+     * @param examId
+     * @param courseCode
+     * @return
+     */
+    TeachCourseSurveyResult getTeachCourseSurveyInfo(SemesterEnum semester, Long examId, String courseCode);
 }

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

@@ -2,6 +2,7 @@ package com.qmth.teachcloud.report.business.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.qmth.teachcloud.report.business.bean.result.SurveyTeacherViewResult;
 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;
@@ -38,4 +39,16 @@ public interface TAExamCourseCollegeTeacherService extends IService<TAExamCourse
     List<TAExamCourseTeacherResult> findTeacherInfo(Long examId, String courseCode, Long collegeId);
 
     IPage<TeacherClassRankResult> listTeacherClassRank(SemesterEnum semester, Long examId, String courseCode, Integer pageNumber, Integer pageSize, String column, OrderEnum order);
+
+    /**
+     * 我的课堂考试分析图表接口
+     *
+     * @param schoolId
+     * @param semester
+     * @param examId
+     * @param courseCode
+     * @param inspectCollegeId
+     * @return
+     */
+    SurveyTeacherViewResult teacherView(Long schoolId, SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId);
 }

+ 31 - 8
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/ReportCommonServiceImpl.java

@@ -7,14 +7,8 @@ import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.util.JacksonUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import com.qmth.teachcloud.report.business.bean.result.*;
-import com.qmth.teachcloud.report.business.entity.TAExamCourse;
-import com.qmth.teachcloud.report.business.entity.TBDimension;
-import com.qmth.teachcloud.report.business.entity.TBExamCourse;
-import com.qmth.teachcloud.report.business.entity.TBPaper;
-import com.qmth.teachcloud.report.business.enums.GradeScopeEnum;
-import com.qmth.teachcloud.report.business.enums.PaperStructJudgeEnum;
-import com.qmth.teachcloud.report.business.enums.PiecewiseScopeEnum;
-import com.qmth.teachcloud.report.business.enums.PublishStatusEnum;
+import com.qmth.teachcloud.report.business.entity.*;
+import com.qmth.teachcloud.report.business.enums.*;
 import com.qmth.teachcloud.report.business.service.*;
 import com.qmth.teachcloud.report.business.utils.AnalyzeScopeUtil;
 import com.qmth.teachcloud.report.business.utils.MathUtil;
@@ -74,6 +68,9 @@ public class ReportCommonServiceImpl implements ReportCommonService {
     @Resource
     TBExamCourseService tbExamCourseService;
 
+    @Resource
+    TBExamService tbExamService;
+
     /**
      * 学院学科报表查询科目信息
      *
@@ -566,4 +563,30 @@ public class ReportCommonServiceImpl implements ReportCommonService {
         response.setHeader("Access-Control-Allow-Origin", "*");
         response.sendRedirect(redirectURL);
     }
+
+    /**
+     * 获取开课课程考试课程总览
+     *
+     * @param semester
+     * @param examId
+     * @param courseCode
+     * @return
+     */
+    @Override
+    public TeachCourseSurveyResult getTeachCourseSurveyInfo(SemesterEnum semester, Long examId, String courseCode) {
+        TBExam tbExam = tbExamService.getById(examId);
+        TAExamCourse taExamCourse = taExamCourseService.getOne(new QueryWrapper<TAExamCourse>().lambda().eq(TAExamCourse::getExamId, examId).eq(TAExamCourse::getCourseCode, courseCode));
+        TeachCourseSurveyResult teachCourseSurveyResult = new TeachCourseSurveyResult();
+        teachCourseSurveyResult.setExamTime(tbExam.getExamTime());
+        teachCourseSurveyResult.setCourseCode(taExamCourse.getCourseCode());
+        teachCourseSurveyResult.setCourseName(taExamCourse.getCourseName());
+        teachCourseSurveyResult.setFullScore(taExamCourse.getTotalScore());
+        teachCourseSurveyResult.setRealityCount(taExamCourse.getRealityCount());
+        teachCourseSurveyResult.setInspectCollegeCount(taExamCourse.getInspectCollegeCount());
+        teachCourseSurveyResult.setAbsentCount(taExamCourse.getAbsentCount());
+        teachCourseSurveyResult.setCoefficient(taExamCourse.getCoefficient());
+        teachCourseSurveyResult.setTeachCollegeName(taExamCourse.getTeachCollegeName());
+        teachCourseSurveyResult.setInspectCollegeNames(taExamCourse.getInspectCollegeNames());
+        return teachCourseSurveyResult;
+    }
 }

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

@@ -6,13 +6,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.service.SysOrgService;
 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;
-import com.qmth.teachcloud.report.business.bean.result.TeacherMyClassRankResult;
+import com.qmth.teachcloud.report.business.bean.result.*;
 import com.qmth.teachcloud.report.business.entity.TAExamCourseCollegeTeacher;
 import com.qmth.teachcloud.report.business.enums.OrderEnum;
 import com.qmth.teachcloud.report.business.enums.SemesterEnum;
 import com.qmth.teachcloud.report.business.mapper.TAExamCourseCollegeTeacherMapper;
+import com.qmth.teachcloud.report.business.service.ReportCommonService;
 import com.qmth.teachcloud.report.business.service.TAExamCourseCollegeTeacherService;
 import org.springframework.stereotype.Service;
 
@@ -38,6 +37,9 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
     @Resource
     SysOrgService sysOrgService;
 
+    @Resource
+    ReportCommonService reportCommonService;
+
     @Override
     public IPage<TeacherClassRankResult> listClassRank(SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId, Integer pageNumber, Integer pageSize, String column, OrderEnum order) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -92,4 +94,25 @@ public class TAExamCourseCollegeTeacherServiceImpl extends ServiceImpl<TAExamCou
         Page<TeacherClassRankResult> page = new Page<>(pageNumber, pageSize);
         return taExamCourseCollegeTeacherMapper.listTeacherClassRank(page, schoolId, Objects.nonNull(semester) ? semester.name() : null, examId, courseCode, column, Objects.nonNull(order) ? order.name() : null);
     }
+
+    /**
+     * 我的课堂考试分析图表接口
+     *
+     * @param schoolId
+     * @param semester
+     * @param examId
+     * @param courseCode
+     * @param inspectCollegeId
+     * @return
+     */
+    @Override
+    public SurveyTeacherViewResult teacherView(Long schoolId, SemesterEnum semester, Long examId, String courseCode, Long inspectCollegeId) {
+        // 考试概况
+        TeachCourseSurveyResult teachCourseSurveyResult = reportCommonService.getTeachCourseSurveyInfo(semester, examId, courseCode);
+        //取总体和应届平均分
+        SurveyTeacherExamCourseResult surveyTeacherExamCourseResult = reportCommonService.findAvgScore(schoolId, courseCode, examId, false);
+        //查找题目信息
+        QuestionListResult questionListResult = reportCommonService.findQuestionInfo(examId, courseCode, inspectCollegeId);
+        return new SurveyTeacherViewResult(null, questionListResult, surveyTeacherExamCourseResult, teachCourseSurveyResult);
+    }
 }

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

@@ -181,7 +181,7 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
     @Cacheable(value = SystemConstant.SURVEY_TEACHER_VIEW_REPORT, key = "#schoolId + '-' + #semester + '-' + #examId + '-' + #courseCode + '-' + #collegeId")
     public SurveyTeacherViewResult surveyTeacherView(Long schoolId, SemesterEnum semester, Long examId, String courseCode, Long collegeId) {
         // 考试概况
-        TeachCourseSurveyResult teachCourseSurveyResult = this.getTeachCourseSurveyInfo(semester, examId, courseCode);
+        TeachCourseSurveyResult teachCourseSurveyResult = reportCommonService.getTeachCourseSurveyInfo(semester, examId, courseCode);
 
         //取总体和应届平均分
         SurveyTeacherExamCourseResult surveyTeacherExamCourseResult = reportCommonService.findAvgScore(schoolId, courseCode, examId, false);
@@ -373,31 +373,4 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
         List<Collection<?>> collectionList = Arrays.asList(teachCollegeResultIPage.getRecords(), gradeDistributeFinalResult.getPaperGrades(), gradeDistributeFinalResult.getGrades(), gradeDistributeFinalResult.getCurrentAssignedGrades(), teacherClassRankResultIPage.getRecords());
         ExcelUtil.excelExportBatchSheet("课程分析", sheetList, classList, collectionList, ServletUtil.getResponse());
     }
-
-
-    /**
-     * 获取开课课程考试课程总览
-     *
-     * @param semester   学期
-     * @param examId     考试id
-     * @param courseCode 课程编号
-     * @return 结果
-     */
-    private TeachCourseSurveyResult getTeachCourseSurveyInfo(SemesterEnum semester, Long examId, String courseCode) {
-        TBExam tbExam = tbExamService.getById(examId);
-
-        TAExamCourse taExamCourse = this.getOne(new QueryWrapper<TAExamCourse>().lambda().eq(TAExamCourse::getExamId, examId).eq(TAExamCourse::getCourseCode, courseCode));
-        TeachCourseSurveyResult teachCourseSurveyResult = new TeachCourseSurveyResult();
-        teachCourseSurveyResult.setExamTime(tbExam.getExamTime());
-        teachCourseSurveyResult.setCourseCode(taExamCourse.getCourseCode());
-        teachCourseSurveyResult.setCourseName(taExamCourse.getCourseName());
-        teachCourseSurveyResult.setFullScore(taExamCourse.getTotalScore());
-        teachCourseSurveyResult.setRealityCount(taExamCourse.getRealityCount());
-        teachCourseSurveyResult.setInspectCollegeCount(taExamCourse.getInspectCollegeCount());
-        teachCourseSurveyResult.setAbsentCount(taExamCourse.getAbsentCount());
-        teachCourseSurveyResult.setCoefficient(taExamCourse.getCoefficient());
-        teachCourseSurveyResult.setTeachCollegeName(taExamCourse.getTeachCollegeName());
-        teachCourseSurveyResult.setInspectCollegeNames(taExamCourse.getInspectCollegeNames());
-        return teachCourseSurveyResult;
-    }
 }

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

@@ -227,4 +227,8 @@
             </choose>
         </if>
     </select>
+
+    <select id="teacherView" resultType="com.qmth.teachcloud.report.business.bean.result.SurveyTeacherViewResult">
+
+    </select>
 </mapper>

+ 18 - 0
teachcloud-report/src/main/java/com/qmth/teachcloud/report/api/TAExamCourseCollegeTeacherController.java

@@ -2,8 +2,13 @@ package com.qmth.teachcloud.report.api;
 
 
 import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.entity.SysUser;
+import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.util.Result;
 import com.qmth.teachcloud.common.util.ResultUtil;
+import com.qmth.teachcloud.common.util.ServletUtil;
+import com.qmth.teachcloud.report.business.bean.result.SurveyTeacherViewResult;
 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;
@@ -17,6 +22,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.Objects;
+
 /**
  * <p>
  * 参考课程学院下授课教师维度分析表 前端控制器
@@ -62,4 +69,15 @@ public class TAExamCourseCollegeTeacherController {
             @ApiParam(value = "排序规则", required = false) @RequestParam(required = false) OrderEnum order) {
         return ResultUtil.ok(taExamCourseCollegeTeacherService.listMyClassRank(semester, examId, courseCode, inspectCollegeId, pageNumber, pageSize, column, order));
     }
+
+    @ApiOperation(value = "我的课堂考试分析图表接口")
+    @RequestMapping(value = "/teacher/view", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "考试科目信息", response = SurveyTeacherViewResult.class)})
+    public Result surveyTeacherView(@ApiParam(value = "考试id", required = true) @RequestParam String examId,
+                                    @ApiParam(value = "学期", required = true) @RequestParam SemesterEnum semester,
+                                    @ApiParam(value = "学校id", required = false) @RequestParam(required = false) String schoolId,
+                                    @ApiParam(value = "科目编码", required = true) @RequestParam String courseCode,
+                                    @ApiParam(value = "考查学院id", required = true) @RequestParam String inspectCollegeId) {
+        return ResultUtil.ok(taExamCourseCollegeTeacherService.teacherView(Objects.isNull(schoolId) ? SystemConstant.convertIdToLong(String.valueOf(ServletUtil.getRequestHeaderSchoolId())) : SystemConstant.convertIdToLong(schoolId), semester, SystemConstant.convertIdToLong(examId), courseCode, Objects.nonNull(inspectCollegeId) ? SystemConstant.convertIdToLong(inspectCollegeId) : null));
+    }
 }

+ 6 - 6
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-617
+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