|
@@ -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();
|