Browse Source

成绩管理1对多

wangliang 8 months ago
parent
commit
cb45738227

+ 1 - 2
distributed-print/src/main/java/com/qmth/distributed/print/api/obe/TCFinalScoreController.java

@@ -234,13 +234,12 @@ public class TCFinalScoreController {
     @RequestMapping(value = "/final_score/list", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "分页查询", response = TCFinalScore.class)})
     public Result finalScoreList(@ApiParam(value = "考试id") @RequestParam(required = false) Long examId,
-                                 @ApiParam(value = "科目编码") @RequestParam(required = false) String courseCode,
                                  @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                                  @ApiParam(value = "培养方案id", required = true) @RequestParam Long cultureProgramId,
                                  @ApiParam(value = "课程id", required = true) @RequestParam Long courseId,
                                  @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                                  @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) throws IOException {
-        return ResultUtil.ok(tcFinalScoreService.finalScoreList(new Page<>(pageNumber, pageSize), examId, courseCode, paperNumber, cultureProgramId, courseId));
+        return ResultUtil.ok(tcFinalScoreService.finalScoreList(new Page<>(pageNumber, pageSize), examId, paperNumber, cultureProgramId, courseId));
     }
 
     @ApiOperation(value = "期末成绩编辑")

+ 0 - 2
distributed-print/src/main/java/com/qmth/distributed/print/api/obe/TCPaperStructController.java

@@ -119,7 +119,6 @@ public class TCPaperStructController {
     @Aac(rateLimit = @RateLimit(count = 1, period = 1000L))
     public Result finalScorePaperStructDimensionSync(@ApiParam(value = "考试id") @RequestParam(required = false) Long examId,
                                                      @ApiParam(value = "课程id", required = true) @RequestParam Long courseId,
-                                                     @ApiParam(value = "科目编码") @RequestParam(required = false) String courseCode,
                                                      @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                                                      @ApiParam(value = "培养方案id", required = true) @RequestParam Long cultureProgramId) {
         Objects.requireNonNull(paperNumber, "未查询到题和知识点对应关系请手动关联");
@@ -201,7 +200,6 @@ public class TCPaperStructController {
     @ApiResponses({@ApiResponse(code = 200, message = "试卷蓝图查询", response = PaperStructDimensionResult.class)})
     public Result finalScorePaperStructQuery(@ApiParam(value = "考试id") @RequestParam(required = false) Long examId,
                                              @ApiParam(value = "科目id", required = true) @RequestParam Long courseId,
-                                             @ApiParam(value = "科目编码") @RequestParam(required = false) String courseCode,
                                              @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                                              @ApiParam(value = "培养方案id", required = true) @RequestParam Long cultureProgramId) {
         ObeCourseOutline obeCourseOutline = obeCourseOutlineService.findByCultureProgramIdAndCourseId(cultureProgramId, courseId);

+ 4 - 8
teachcloud-obe/src/main/java/com/qmth/teachcloud/obe/service/TCFinalScoreService.java

@@ -40,19 +40,17 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      *
      * @param iPage
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
      * @return
      */
-    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId);
+    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String paperNumber, Long cultureProgramId, Long courseId);
 
     /**
      * 查找期末成绩分数图
      *
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -60,13 +58,12 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param userId
      * @return
      */
-    public FinalScoreDto finalScoreScoreOverView(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId);
+    public FinalScoreDto finalScoreScoreOverView(Long examId, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId);
 
     /**
      * 查找期末成绩分数区间
      *
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -76,13 +73,12 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param userId
      * @return
      */
-    public int getCountByScoreRange(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end, String teachClassName, Long userId);
+    public int getCountByScoreRange(Long examId, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end, String teachClassName, Long userId);
 
     /**
      * 查找考生成绩
      *
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -90,7 +86,7 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param userId
      * @return
      */
-    public List<FinalScoreResult> examStudentOverview(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId);
+    public List<FinalScoreResult> examStudentOverview(Long examId, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId);
 
     /**
      * 同步期末成绩

+ 4 - 8
teachcloud-obe/src/main/java/com/qmth/teachcloud/obe/service/impl/TCFinalScoreServiceImpl.java

@@ -274,14 +274,13 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      *
      * @param iPage
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
      * @return
      */
     @Override
-    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId) {
+    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String paperNumber, Long cultureProgramId, Long courseId) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), ServletUtil.getRequest().getServletPath());
         return this.baseMapper.finalScoreList(iPage, cultureProgramId, courseId, examId, paperNumber, dpr);
@@ -291,7 +290,6 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * 查找期末成绩分数图
      *
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -300,7 +298,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @return
      */
     @Override
-    public FinalScoreDto finalScoreScoreOverView(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId) {
+    public FinalScoreDto finalScoreScoreOverView(Long examId, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), ServletUtil.getRequest().getServletPath());
         return this.baseMapper.finalScoreScoreOverView(cultureProgramId, courseId, examId, paperNumber, teachClassName, dpr);
@@ -310,7 +308,6 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * 查找期末成绩分数区间
      *
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -321,7 +318,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @return
      */
     @Override
-    public int getCountByScoreRange(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end, String teachClassName, Long userId) {
+    public int getCountByScoreRange(Long examId, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end, String teachClassName, Long userId) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), ServletUtil.getRequest().getServletPath());
         return this.baseMapper.getCountByScoreRange(cultureProgramId, courseId, start, end, examId, paperNumber, teachClassName, dpr);
@@ -331,7 +328,6 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * 查找考生成绩
      *
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -340,7 +336,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @return
      */
     @Override
-    public List<FinalScoreResult> examStudentOverview(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId) {
+    public List<FinalScoreResult> examStudentOverview(Long examId, String paperNumber, Long cultureProgramId, Long courseId, String teachClassName, Long userId) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), ServletUtil.getRequest().getServletPath());
         return this.baseMapper.examStudentOverview(cultureProgramId, courseId, examId, paperNumber, teachClassName, dpr);

+ 9 - 10
teachcloud-obe/src/main/java/com/qmth/teachcloud/obe/service/impl/TRBasicInfoServiceImpl.java

@@ -147,7 +147,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      */
     @Override
     public ReportScoreViewDto getScoreList(TRBasicInfo trBasicInfo, MarkPaper markPaper) {
-        FinalScoreDto finalScoreDto = tcFinalScoreService.finalScoreScoreOverView(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), trBasicInfo.getTeachClassName(), trBasicInfo.getCreateId());
+        FinalScoreDto finalScoreDto = tcFinalScoreService.finalScoreScoreOverView(trBasicInfo.getExamId(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), trBasicInfo.getTeachClassName(), trBasicInfo.getCreateId());
         Objects.requireNonNull(finalScoreDto, "未找到期末成绩分数信息");
 
         if (finalScoreDto.getStudentCount() == 0) {
@@ -186,7 +186,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
     public Map<String, Object> getReportCalculateParams(TRBasicInfo trBasicInfo, List<PaperStructDimensionResult> paperStructDimensionResultList, ObeCourseWeightResult obeCourseWeightResult) {
         Map<String, Object> paramsMap = new HashMap<>();
         //查询考生数据
-        List<FinalScoreResult> finalScoreResultList = tcFinalScoreService.examStudentOverview(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), trBasicInfo.getTeachClassName(), trBasicInfo.getCreateId());//考生成绩
+        List<FinalScoreResult> finalScoreResultList = tcFinalScoreService.examStudentOverview(trBasicInfo.getExamId(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), trBasicInfo.getTeachClassName(), trBasicInfo.getCreateId());//考生成绩
         if (CollectionUtils.isEmpty(finalScoreResultList)) {
             throw ExceptionResultEnum.ERROR.exception("成绩数据异常,平时成绩与期末成绩里考生名单不一致,请检查");
         }
@@ -470,7 +470,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
         BasicSemester basicSemester = basicSemesterService.getById(obeCourseOutline.getSemesterId());
         Objects.requireNonNull(basicSemester, "未找到学期信息");
 
-        List<FinalScoreResult> finalScoreResultList = tcFinalScoreService.examStudentOverview(Objects.nonNull(examId) ? examId : markPaper.getExamId(), markPaper.getCourseCode(), Objects.nonNull(paperNumber) ? paperNumber : markPaper.getPaperNumber(), cultureProgramId, courseId, null, null);//考生成绩
+        List<FinalScoreResult> finalScoreResultList = tcFinalScoreService.examStudentOverview(Objects.nonNull(examId) ? examId : markPaper.getExamId(), Objects.nonNull(paperNumber) ? paperNumber : markPaper.getPaperNumber(), cultureProgramId, courseId, null, null);//考生成绩
         if (CollectionUtils.isEmpty(finalScoreResultList)) {
             throw ExceptionResultEnum.ERROR.exception("成绩数据异常,平时成绩与期末成绩里考生名单不一致,请检查");
         }
@@ -1087,20 +1087,20 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
         //开始、结束分数区间
         Double startInterval = 0.5d, endInterval = 9.5d, increaseStartScore = passScore - startInterval,
                 increaseEndScore = increaseStartScore + startInterval + endInterval;
-        scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, 1.0d, increaseStartScore, teachClassName, userId));
+        scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, paperNumber, cultureProgramId, courseId, 1.0d, increaseStartScore, teachClassName, userId));
         increaseStartScore = increaseStartScore + startInterval;
         increaseEndScore = increaseStartScore + endInterval;
         if (totalScore.doubleValue() - increaseEndScore.doubleValue() == startInterval || increaseEndScore.doubleValue() >= totalScore.doubleValue()) {
             increaseEndScore = totalScore;
-            scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore, teachClassName, userId));
+            scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore, teachClassName, userId));
         } else {
             while (increaseEndScore.doubleValue() < totalScore.doubleValue()) {
-                scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore, teachClassName, userId));
+                scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore, teachClassName, userId));
                 increaseStartScore = increaseEndScore + startInterval;
                 increaseEndScore = increaseStartScore + endInterval;
                 if (totalScore.doubleValue() - increaseEndScore.doubleValue() == startInterval || increaseEndScore.doubleValue() >= totalScore.doubleValue()) {
                     increaseEndScore = totalScore;
-                    scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore, teachClassName, userId));
+                    scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore, teachClassName, userId));
                 }
             }
         }
@@ -1232,7 +1232,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      *
      * @param toltal
      * @param examId
-     * @param courseCode
      * @param paperNumber
      * @param cultureProgramId
      * @param courseId
@@ -1242,8 +1241,8 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      * @param userId
      * @return
      */
-    protected ScoreRangeVo getScoreRangeVo(int toltal, Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end, String teachClassName, Long userId) {
-        int count = tcFinalScoreService.getCountByScoreRange(examId, courseCode, paperNumber, cultureProgramId, courseId, start, end, teachClassName, userId);
+    protected ScoreRangeVo getScoreRangeVo(int toltal, Long examId, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end, String teachClassName, Long userId) {
+        int count = tcFinalScoreService.getCountByScoreRange(examId, paperNumber, cultureProgramId, courseId, start, end, teachClassName, userId);
         Double rate = null;
         if (toltal != 0) {
             rate = new BigDecimal(count).divide(new BigDecimal(toltal), 4, BigDecimal.ROUND_HALF_UP).multiply(SystemConstant.PERCENT).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();