|
@@ -153,7 +153,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
throw ExceptionResultEnum.ERROR.exception("成绩数据异常,平时成绩与期末成绩里考生名单不一致,请检查");
|
|
|
}
|
|
|
|
|
|
-// Map<String, Map<Long, Map<Long, DimensionDto>>> finalScoreExamStudentDimensionMap = new LinkedHashMap<>();//汇总考生课程目标-知识点卷面分(知识点得分用)
|
|
|
Map<String, Map<Long, BigDecimal>> finalScoreExamStudentTargetMap = new LinkedHashMap<>();//汇总考生课程目标-课程目标卷面分
|
|
|
Map<Long, Map<Long, DimensionDto>> targetDimensionMap = new LinkedHashMap<>();//课程目标-知识点-卷面分(word报表用)
|
|
|
|
|
@@ -184,7 +183,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
if (!CollectionUtils.isEmpty(courseWeightDetailDtoList)) {
|
|
|
List<ReportEvaluationDto> reportEvaluationDtoList = new ArrayList<>(courseWeightDetailDtoList.size());
|
|
|
List<ReportEvaluationDto> usualScoreDetailList = new ArrayList<>(courseWeightDetailDtoList.size());
|
|
|
-// UsualScoreWordDto usualScoreWordDto = new UsualScoreWordDto(courseWeightResult.getCustomRate());
|
|
|
UsualScoreWordDto usualScoreWordDto = new UsualScoreWordDto();
|
|
|
usualScoreWordDto.setUsualScoreDetailList(usualScoreDetailList);
|
|
|
BigDecimal usualScoreTargetSumScore = new BigDecimal(0);//平常作业目标总分
|
|
@@ -197,8 +195,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
reportEvaluationDtoList.add(reportEvaluationDto);
|
|
|
}//非期末考试
|
|
|
else if (courseWeightDetailDto.getEnable() && !Objects.equals(courseWeightDetailDto.getEvaluationName(), SystemConstant.FINAL_SCORE_STR)) {
|
|
|
-// BigDecimal usualScoreRealityWeight = usualScoreWordDto.getUsualScoreTargetSumWeight().divide(SystemConstant.PERCENT, 2, BigDecimal.ROUND_HALF_UP).multiply(courseWeightDetailDto.getWeight()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-// Double originalTargetScore = courseWeightDto.getTotalWeight().multiply(courseWeightDetailDto.getWeight()).divide(SystemConstant.PERCENT, 2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
|
ReportEvaluationDto reportEvaluationDto = new ReportEvaluationDto(courseWeightDto.getCourseTargetId(), courseWeightDetailDto, new BigDecimal(0));
|
|
|
usualScoreTargetSumScore = usualScoreTargetSumScore.add(reportEvaluationDto.getTargetScore());
|
|
|
usualScoreDetailList.add(reportEvaluationDto);
|
|
@@ -234,9 +230,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
//知识点-期末考试明细分
|
|
|
List<DimensionDto> dimensionDtoList = courseTargetDto.getDimensionList();
|
|
|
for (DimensionDto dimensionDto : dimensionDtoList) {
|
|
|
- //考生知识点
|
|
|
-// this.calculateFinalScoreByDimensionExamStudent(finalScoreExamStudentDimensionMap,
|
|
|
-// finalScoreResult, courseTargetDto, dimensionDto, score);
|
|
|
if (i == 0) {//计算各知识点原始卷面分总和
|
|
|
BigDecimal paperScore = paperStructDimensionResult.getScore();
|
|
|
//目标-考生知识点去重
|
|
@@ -278,13 +271,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
finalTargetWebMap.get(k).setDimensionScoreSum(new BigDecimal(dimensionScoreSum));
|
|
|
finalTargetWebMap.get(k).setDimensionPoint(String.join(",", dimensionDtoNameList));
|
|
|
}
|
|
|
-// Map<Long, Map<Long, DimensionDto>> mapExamStudent1 = finalScoreExamStudentDimensionMap.get(finalScoreResult.getStudentCode());
|
|
|
-// Map<Long, DimensionDto> mapExamStudent2 = mapExamStudent1.get(k);
|
|
|
-// List<DimensionDto> list = new ArrayList<>(mapExamStudent2.values());
|
|
|
-// Double score = list.stream().mapToDouble(DimensionDto::getDimensionScore).sum();
|
|
|
-// Map<Long, Double> mapDimension = finalScoreResult.getFinalScoreDimension();
|
|
|
-// mapDimension.put(k, score);
|
|
|
-
|
|
|
Map<Long, BigDecimal> doubleMap = finalScoreExamStudentTargetMap.get(finalScoreResult.getStudentCode());
|
|
|
Map<Long, BigDecimal> mapTarget = finalScoreResult.getFinalScoreTarget();
|
|
|
mapTarget.put(k, doubleMap.get(k));
|
|
@@ -299,7 +285,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
|
|
|
paramsMap.put("finalScoreResultList", finalScoreResultList);
|
|
|
paramsMap.put("usualScoreMap", usualScoreMap);
|
|
|
-// paramsMap.put("finalScoreExamStudentDimensionMap", finalScoreExamStudentDimensionMap);
|
|
|
paramsMap.put("finalScoreExamStudentTargetMap", finalScoreExamStudentTargetMap);
|
|
|
paramsMap.put("examStudentList", examStudentList);
|
|
|
paramsMap.put("finalScoreResultMap", finalScoreResultMap);
|
|
@@ -359,7 +344,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
for (ReportExamStudentTargetDto r : reportExamStudentTargetAvgDtoList) {
|
|
|
BigDecimal targetAvgSumScore = new BigDecimal(0);//平均分总和
|
|
|
BigDecimal targetSumScore = new BigDecimal(0);//目标分总和
|
|
|
-// BigDecimal targetEvaluationValue = new BigDecimal(0);
|
|
|
if (targetWebMap.containsKey(r.getTargetId())) {
|
|
|
CourseTargetWebDto courseTargetWebDto = targetWebMap.get(r.getTargetId());
|
|
|
CourseTargetWordDto courseTargetWordDto = targetWordMap.get(r.getTargetId());
|
|
@@ -377,9 +361,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
reportEvaluationDto.setTargetAvgScore(reportExamStudentFinalScoreDto.getMatrixAvgScore());
|
|
|
targetAvgSumScore = targetAvgSumScore.add(reportEvaluationDto.getTargetAvgScore());
|
|
|
targetSumScore = targetSumScore.add(reportEvaluationDto.getTargetScore());
|
|
|
-// BigDecimal bigDecimal = new BigDecimal(reportExamStudentFinalScoreDto.getTargetScoreSum()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-// BigDecimal targetEvaluationValueTemp = bigDecimal.divide(reportEvaluationDto.getTargetScore(), 2, BigDecimal.ROUND_HALF_UP).multiply(reportEvaluationDto.getTargetWeight().divide(courseTargetWebDto.getTargetSumWeight(), 2, BigDecimal.ROUND_HALF_UP)).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-// targetEvaluationValue = targetEvaluationValue.add(targetEvaluationValueTemp);
|
|
|
}
|
|
|
|
|
|
//平时作业换算
|
|
@@ -390,9 +371,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
reportEvaluationDto.setTargetAvgScore(reportExamStudentUsualScoreObjDto.getMatrixAvgScore());
|
|
|
targetAvgSumScore = targetAvgSumScore.add(reportEvaluationDto.getTargetAvgScore());
|
|
|
targetSumScore = targetSumScore.add(reportEvaluationDto.getTargetScore());
|
|
|
-// BigDecimal bigDecimal = new BigDecimal(reportExamStudentUsualScoreObjDto.getScore()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-// BigDecimal targetEvaluationValueTemp = bigDecimal.divide(reportEvaluationDto.getTargetScore(), 2, BigDecimal.ROUND_HALF_UP).multiply(reportEvaluationDto.getTargetWeight().divide(courseTargetWebDto.getTargetSumWeight(), 2, BigDecimal.ROUND_HALF_UP)).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-// targetEvaluationValue = targetEvaluationValue.add(targetEvaluationValueTemp);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -402,7 +380,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
if (targetEvaluationValueMap.containsKey(r.getTargetId())) {
|
|
|
targetEvaluationValue = targetEvaluationValueMap.get(r.getTargetId()).divide(new BigDecimal(targetEvaluationValueSizeMap.get(r.getTargetId())), 4, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
-// BigDecimal targetEvaluationValue = new BigDecimal(targetAvgSumScore).divide(targetSumScore, 2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
courseTargetWebDto.setEvaluationValue(targetEvaluationValue);
|
|
|
if (targetEvaluationSumValue.compareTo(new BigDecimal(0)) == 0 || targetEvaluationSumValue.compareTo(targetEvaluationValue) == 1) {
|
|
|
targetEvaluationSumValue = targetEvaluationValue;
|
|
@@ -660,102 +637,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
return tableBuilder2.mergeRule(mergeCellRule2).left().create();
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- // * 构建word动态表格3
|
|
|
- // *
|
|
|
- // * @param courseTargetWordDtoList
|
|
|
- // * @return
|
|
|
- // */
|
|
|
-// @Override
|
|
|
-// public TableRenderData buildWordTable3(List<CourseTargetWordDto> courseTargetWordDtoList) {
|
|
|
-// RowRenderData header3_1 = Rows.of("序号", "项目", "考核内容及要求", "目标分值", "对应的课程目标").rowStyle(this.getHeadRowStyle()).create();
|
|
|
-//// String tableFootTitle3 = "合计${usualScoreSum}分,占课程总评成绩的${usualScoreSumWeight}%";
|
|
|
-// String tableFootTitle3 = "合计${usualScoreSum}分";
|
|
|
-// List<CourseTargetTableBean3> courseTargetTableBean3List = new ArrayList<>();
|
|
|
-// BigDecimal usualScoreSum3 = new BigDecimal(0);
|
|
|
-//// usualScoreTargetSumWeight3 = new BigDecimal(0);
|
|
|
-// Integer seq3 = 1;
|
|
|
-// for (CourseTargetWordDto courseTargetWordDto : courseTargetWordDtoList) {
|
|
|
-// UsualScoreWordDto usualScoreWordDto = courseTargetWordDto.getUsualScoreDto();
|
|
|
-// List<ReportEvaluationDto> reportEvaluationDtoList = usualScoreWordDto.getUsualScoreDetailList();
|
|
|
-// for (int i = 0; i < reportEvaluationDtoList.size(); i++) {
|
|
|
-// ReportEvaluationDto reportEvaluationDto = reportEvaluationDtoList.get(i);
|
|
|
-// CourseTargetTableBean3 courseTargetTableBean3 = new CourseTargetTableBean3(seq3++, reportEvaluationDto.getEvaluation(), reportEvaluationDto.getEvaluationDesc(), new BigDecimal(SystemConstant.df.format(reportEvaluationDto.getOriginalTargetScore())), courseTargetWordDto.getTargetName());
|
|
|
-// courseTargetTableBean3List.add(courseTargetTableBean3);
|
|
|
-// usualScoreSum3 = usualScoreSum3.add(new BigDecimal(reportEvaluationDto.getOriginalTargetScore()));
|
|
|
-// }
|
|
|
-//// usualScoreTargetSumWeight3 = usualScoreTargetSumWeight3.add(usualScoreWordDto.getUsualScoreTargetSumWeight());
|
|
|
-// }
|
|
|
-//// usualScoreTargetSumWeight3 = usualScoreTargetSumWeight3.divide(new BigDecimal(courseTargetWordDtoList.size()), 2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-// tableFootTitle3 = tableFootTitle3.replace("${usualScoreSum}", SystemConstant.df.format(usualScoreSum3));
|
|
|
-//// tableFootTitle3 = tableFootTitle3.replace("${usualScoreSumWeight}", SystemConstant.df.format(usualScoreTargetSumWeight3));
|
|
|
-//
|
|
|
-// RowRenderData[] rowRenderData3 = new RowRenderData[courseTargetTableBean3List.size() + 2];
|
|
|
-// for (int i = 0; i < courseTargetTableBean3List.size(); i++) {
|
|
|
-// CourseTargetTableBean3 courseTargetTableBean3 = courseTargetTableBean3List.get(i);
|
|
|
-// rowRenderData3[i + 1] = Rows.of(courseTargetTableBean3.getNum().toString(), courseTargetTableBean3.getProject(), courseTargetTableBean3.getContent(), SystemConstant.df.format(courseTargetTableBean3.getTarget()), courseTargetTableBean3.getCourseTarget()).rowStyle(this.getRowStyle()).create();
|
|
|
-// }
|
|
|
-// rowRenderData3[0] = header3_1;
|
|
|
-// RowRenderData header3_foot = Rows.of(tableFootTitle3, "", "", "", "").center().create();
|
|
|
-// rowRenderData3[rowRenderData3.length - 1] = header3_foot;
|
|
|
-//
|
|
|
-// //表格合并,根据坐标
|
|
|
-// MergeCellRule mergeCellRule3 = MergeCellRule.builder().map(MergeCellRule.Grid.of(rowRenderData3.length - 1, 0), MergeCellRule.Grid.of(rowRenderData3.length - 1, 4)).
|
|
|
-// build();
|
|
|
-//
|
|
|
-// Tables.TableBuilder tableBuilder3 = Tables.ofPercentWidth(tbPercentWidth, new int[]{8, 20, 37, 14, 21});
|
|
|
-// for (int i = 0; i < rowRenderData3.length; i++) {
|
|
|
-// tableBuilder3.addRow(rowRenderData3[i]);
|
|
|
-// }
|
|
|
-// return tableBuilder3.mergeRule(mergeCellRule3).left().create();
|
|
|
-// }
|
|
|
-
|
|
|
-// /**
|
|
|
-// * 构建word动态表格4
|
|
|
-// *
|
|
|
-// * @param courseTargetWordDtoList
|
|
|
-// * @return
|
|
|
-// */
|
|
|
-// @Override
|
|
|
-// public TableRenderData buildWordTable4(List<CourseTargetWordDto> courseTargetWordDtoList) {
|
|
|
-// RowRenderData header4_1 = Rows.of("序号", "考核项目", "考核内容所涵盖的知识单元", "目标分值", "对应的课程目标").rowStyle(this.getHeadRowStyle()).create();
|
|
|
-// List<CourseTargetTableBean4> courseTargetTableBean4List = new ArrayList<>();
|
|
|
-// BigDecimal finalScoreSum4 = new BigDecimal(0);
|
|
|
-//// finalScoreTargetSumWeight4 = new BigDecimal(0);
|
|
|
-// for (int i = 0; i < courseTargetWordDtoList.size(); i++) {
|
|
|
-// CourseTargetWordDto courseTargetWordDto = courseTargetWordDtoList.get(i);
|
|
|
-//// FinalScoreWordDto finalScoreWordDto = courseTargetWordDto.getFinalScoreDto();
|
|
|
-// finalScoreSum4 = finalScoreSum4.add(courseTargetWordDto.getTargetSumScore());
|
|
|
-//// finalScoreTargetSumWeight4 = finalScoreTargetSumWeight4.add(finalScoreWordDto.getFinalScoreSumWeight());
|
|
|
-// CourseTargetTableBean4 courseTargetTableBean4 = new CourseTargetTableBean4((i + 1), courseTargetWordDto.getGraduationRequirement(), courseTargetWordDto.getDimensionPoint(), Double.parseDouble(SystemConstant.df.format(courseTargetWordDto.getTargetSumScore())), courseTargetWordDto.getTargetName());
|
|
|
-// courseTargetTableBean4List.add(courseTargetTableBean4);
|
|
|
-// }
|
|
|
-//// finalScoreTargetSumWeight4 = finalScoreTargetSumWeight4.divide(new BigDecimal(courseTargetWordDtoList.size()), 2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-//// String tableFootTitle4 = "合计${dimensionScoreSum}分,占课程总评成绩的${dimensionSumWeight}%";
|
|
|
-// String tableFootTitle4 = "合计${dimensionScoreSum}分";
|
|
|
-// tableFootTitle4 = tableFootTitle4.replace("${dimensionScoreSum}", SystemConstant.df.format(finalScoreSum4));
|
|
|
-//// tableFootTitle4 = tableFootTitle4.replace("${dimensionSumWeight}", SystemConstant.df.format(finalScoreTargetSumWeight4));
|
|
|
-//
|
|
|
-// RowRenderData[] rowRenderData4 = new RowRenderData[courseTargetTableBean4List.size() + 2];
|
|
|
-// for (int i = 0; i < courseTargetTableBean4List.size(); i++) {
|
|
|
-// CourseTargetTableBean4 courseTargetTableBean4 = courseTargetTableBean4List.get(i);
|
|
|
-// rowRenderData4[i + 1] = Rows.of(courseTargetTableBean4.getNum().toString(), courseTargetTableBean4.getProject(), courseTargetTableBean4.getContent(), SystemConstant.df.format(courseTargetTableBean4.getTargetScore()), courseTargetTableBean4.getCourseTarget()).rowStyle(this.getRowStyle()).create();
|
|
|
-// }
|
|
|
-// rowRenderData4[0] = header4_1;
|
|
|
-// RowRenderData header4_foot = Rows.of(tableFootTitle4, "", "", "", "").center().create();
|
|
|
-// rowRenderData4[rowRenderData4.length - 1] = header4_foot;
|
|
|
-//
|
|
|
-// //表格合并,根据坐标
|
|
|
-// MergeCellRule mergeCellRule4 = MergeCellRule.builder().map(MergeCellRule.Grid.of(rowRenderData4.length - 1, 0), MergeCellRule.Grid.of(rowRenderData4.length - 1, 4)).
|
|
|
-// build();
|
|
|
-//
|
|
|
-// Tables.TableBuilder tableBuilder4 = Tables.ofPercentWidth(tbPercentWidth, new int[]{8, 20, 37, 14, 21});
|
|
|
-// for (int i = 0; i < rowRenderData4.length; i++) {
|
|
|
-// tableBuilder4.addRow(rowRenderData4[i]);
|
|
|
-// }
|
|
|
-// return tableBuilder4.mergeRule(mergeCellRule4).left().create();
|
|
|
-// }
|
|
|
-
|
|
|
/**
|
|
|
* 构建word动态表格5
|
|
|
*
|
|
@@ -767,9 +648,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
public TableRenderData buildWordTable5(TRBasicInfo trBasicInfo, CourseReportBean courseReportBean) {
|
|
|
TableRenderData tableRenderDataExamStudent = null;
|
|
|
List<TRExamStudent> trExamStudentList = trExamStudentService.list(new QueryWrapper<TRExamStudent>().lambda()
|
|
|
- .eq(TRExamStudent::getrBasicInfoId, trBasicInfo.getId()).and(w -> w.ne(TRExamStudent::getStudentCode, "目标分")
|
|
|
-// .ne(TRExamStudent::getStudentCode, "各课程目标平均分")
|
|
|
- ));
|
|
|
+ .eq(TRExamStudent::getrBasicInfoId, trBasicInfo.getId()).and(w -> w.ne(TRExamStudent::getStudentCode, "目标分")));
|
|
|
if (!CollectionUtils.isEmpty(trExamStudentList)) {
|
|
|
List<CellRenderData> examStudent_cells_1 = new ArrayList<>(), examStudent_cells_2 = new ArrayList<>();
|
|
|
examStudent_cells_1.add(Cells.of("序号").center().create());
|
|
@@ -847,11 +726,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
RowRenderData examStudent_row = new RowRenderData();
|
|
|
List<CellRenderData> examStudent_cells = new ArrayList<>();
|
|
|
switch (trExamStudent.getName()) {
|
|
|
-// case "目标分":
|
|
|
-// examStudent_cells.add(Cells.of("课程目标考核要素的目标分").create());
|
|
|
-// examStudent_cells.add(Cells.of("课程目标考核要素的目标分").create());
|
|
|
-// examStudent_cells.add(Cells.of("课程目标考核要素的目标分").create());
|
|
|
-// break;
|
|
|
case "平均分":
|
|
|
examStudent_cells.add(Cells.of("平均分").create());
|
|
|
examStudent_cells.add(Cells.of("平均分").create());
|
|
@@ -870,7 +744,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
}
|
|
|
examStudent_cells.add(Cells.of(trExamStudent.getAdministrativeClass()).create());
|
|
|
|
|
|
-// BigDecimal targetSumScore = new BigDecimal(0),
|
|
|
BigDecimal targetAvgScore = new BigDecimal(0);
|
|
|
if (Objects.nonNull(trExamStudent.getResultDetail())) {
|
|
|
List<ReportExamStudentTargetDto> reportExamStudentTargetDtoList = JSONArray.parseArray(trExamStudent.getResultDetail(), ReportExamStudentTargetDto.class);
|
|
@@ -879,14 +752,9 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
ReportExamStudentUsualScoreDto reportExamStudentUsualScoreDto = reportExamStudentTargetDto.getUsualScore();
|
|
|
//平常作业
|
|
|
if (Objects.nonNull(reportExamStudentUsualScoreDto) && !CollectionUtils.isEmpty(reportExamStudentUsualScoreDto.getScoreList())) {
|
|
|
-// courseReportBean.getCourseBasicBean().setUsualScoreWeight(reportExamStudentUsualScoreDto.getTargetWeight());
|
|
|
List<ReportExamStudentUsualScoreObjDto> reportExamStudentUsualScoreObjDtoList = reportExamStudentUsualScoreDto.getScoreList();
|
|
|
for (ReportExamStudentUsualScoreObjDto reportExamStudentUsualScoreObjDto : reportExamStudentUsualScoreObjDtoList) {
|
|
|
switch (trExamStudent.getName()) {
|
|
|
-// case "目标分":
|
|
|
-// examStudent_cells.add(Cells.of(SystemConstant.df.format(reportExamStudentUsualScoreObjDto.getTargetScore())).create());
|
|
|
-// targetSumScore = targetSumScore.add(reportExamStudentUsualScoreObjDto.getTargetScore());
|
|
|
-// break;
|
|
|
case "平均分":
|
|
|
examStudent_cells.add(Cells.of(SystemConstant.df.format(reportExamStudentUsualScoreObjDto.getMatrixAvgScore())).create());
|
|
|
targetAvgScore = targetAvgScore.add(reportExamStudentUsualScoreObjDto.getMatrixAvgScore());
|
|
@@ -905,10 +773,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
if (Objects.nonNull(reportExamStudentFinalScoreDto) && Objects.equals(reportExamStudentFinalScoreDto.getEvaluation(), SystemConstant.FINAL_SCORE_STR)) {
|
|
|
courseReportBean.getCourseBasicBean().setFinalScoreWeight(reportExamStudentFinalScoreDto.getTargetWeight());
|
|
|
switch (trExamStudent.getName()) {
|
|
|
-// case "目标分":
|
|
|
-// examStudent_cells.add(Cells.of(SystemConstant.df.format(reportExamStudentFinalScoreDto.getTargetScore())).create());
|
|
|
-// targetSumScore = targetSumScore.add(reportExamStudentFinalScoreDto.getTargetScore());
|
|
|
-// break;
|
|
|
case "平均分":
|
|
|
examStudent_cells.add(Cells.of(SystemConstant.df.format(reportExamStudentFinalScoreDto.getMatrixAvgScore())).create());
|
|
|
targetAvgScore = targetAvgScore.add(reportExamStudentFinalScoreDto.getMatrixAvgScore());
|
|
@@ -925,9 +789,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
}
|
|
|
}
|
|
|
switch (trExamStudent.getName()) {
|
|
|
-// case "目标分":
|
|
|
-// examStudent_cells.add(Cells.of(SystemConstant.df.format(targetSumScore.setScale(2, BigDecimal.ROUND_HALF_UP))).create());
|
|
|
-// break;
|
|
|
case "平均分":
|
|
|
examStudent_cells.add(Cells.of(SystemConstant.df.format(targetAvgScore.setScale(2, BigDecimal.ROUND_HALF_UP))).create());
|
|
|
break;
|
|
@@ -958,13 +819,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
examStudent_last_row.setRowStyle(this.getRowStyle());
|
|
|
rowRenderDataExamStudent[rowRenderDataExamStudent.length - 1] = examStudent_last_row;
|
|
|
|
|
|
-// String title = Objects.nonNull(trBasicInfo.getTeachingObject()) ? trBasicInfo.getTeachingObject() : "";
|
|
|
-// String sumTitle = "学生共${examStudentSum}名";
|
|
|
-// sumTitle = sumTitle.replace("${examStudentSum}", trExamStudentList.size() - 3 + "");
|
|
|
-
|
|
|
-// courseReportBean.setExamStudentTitle1(title + sumTitle);
|
|
|
-// courseReportBean.setExamStudentTitle2(title + "《" + courseReportBean.getCourseBasicBean().getCourseName() + "》");
|
|
|
-
|
|
|
//表格合并,根据坐标
|
|
|
MergeCellRule mergeCellRuleExamStudent = MergeCellRule.builder().build();
|
|
|
mergeCellRuleExamStudent.getMapping().add(new MergeCellRule.GridRule(MergeCellRule.Grid.of(0, 0), MergeCellRule.Grid.of(1, 0)));
|
|
@@ -989,7 +843,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
mergeCellRuleExamStudent.getMapping().add(new MergeCellRule.GridRule(MergeCellRule.Grid.of(rowRenderDataExamStudent.length - 1, 4), MergeCellRule.Grid.of(rowRenderDataExamStudent.length - 1, cellSize - 1)));
|
|
|
mergeCellRuleExamStudent.getMapping().add(new MergeCellRule.GridRule(MergeCellRule.Grid.of(0, rowRenderDataExamStudent[rowRenderDataExamStudent.length - 1].getCells().size() - 1), MergeCellRule.Grid.of(1, rowRenderDataExamStudent[rowRenderDataExamStudent.length - 1].getCells().size() - 1)));
|
|
|
|
|
|
-// Tables.TableBuilder tableBuilderExamStudent = Tables.ofPercentWidth(tbPercentWidth, new int[]{6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 16});
|
|
|
Tables.TableBuilder tableBuilderExamStudent = Tables.ofPercentWidth(tbPercentWidth);
|
|
|
for (int i = 0; i < rowRenderDataExamStudent.length; i++) {
|
|
|
tableBuilderExamStudent.addRow(rowRenderDataExamStudent[i]);
|
|
@@ -1159,9 +1012,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
public ObeCourseWeightResult findCourseWeightResultRmi(Long obeCourseOutlineId) {
|
|
|
ObeCourseWeightResult obeCourseWeightResult = obeCourseWeightService.findCourseWeight(obeCourseOutlineId);
|
|
|
Objects.requireNonNull(obeCourseWeightResult, "未设置课程目标数据");
|
|
|
-// Objects.requireNonNull(obeCourseWeightResult.getCustomRate(), "未设置平时成绩权重");
|
|
|
-// Objects.requireNonNull(obeCourseWeightResult.getDefaultRate(), "未设置期末考试权重");
|
|
|
-
|
|
|
Objects.requireNonNull(obeCourseWeightResult.getWeightSettingSign(), "课程权重变化id为空");
|
|
|
Objects.requireNonNull(obeCourseWeightResult.getDimensionSign(), "知识点变化id为空");
|
|
|
List<CourseWeightDto> courseWeightDtoList = obeCourseWeightResult.getSubmitForm();
|
|
@@ -1178,11 +1028,6 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
Double score = paperStructDimensionResultList.stream().filter(s -> Objects.equals(s.getCourseTargetName(), c.getCourseTargetName()))
|
|
|
.mapToDouble(s -> s.getScore().doubleValue()).sum();
|
|
|
Objects.requireNonNull(c.getTotalWeight(), "[" + c.getCourseTargetName() + "]未设置权重");
|
|
|
- //// Objects.requireNonNull(c.getTotalScore(), "[" + c.getCourseTargetName() + "]未设置目标分值");
|
|
|
- // if (new BigDecimal(score).compareTo(c.getTotalWeight()) == 1) {
|
|
|
- // trBasicInfoService.clearReportData(examId, courseCode, paperNumber, teachCourseId, false);
|
|
|
- // throw ExceptionResultEnum.ERROR.exception("[" + c.getCourseTargetName() + "]包含的小题总分与权重设置不一致,请到期末成绩--试卷蓝图设置里调整");
|
|
|
- // }
|
|
|
List<CourseWeightDetailDto> courseWeightDetailDtoList = c.getEvaluationList();
|
|
|
for (CourseWeightDetailDto courseWeightDetailDto : courseWeightDetailDtoList) {
|
|
|
if (Objects.equals(courseWeightDetailDto.getEvaluationName(), SystemConstant.FINAL_SCORE_STR)) {
|
|
@@ -1394,8 +1239,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
|
|
|
BigDecimal score = Objects.nonNull(t.getScore()) ? new BigDecimal(t.getScore()) : new BigDecimal(0);
|
|
|
CourseTargetWordDto courseTargetWordDto = targetWordMap.get(reportEvaluationDto.getTargetId());
|
|
|
UsualScoreWordDto usualScoreWordDto = courseTargetWordDto.getUsualScoreDto();
|
|
|
- //old平时作业换算:分数/100*作业目标分
|
|
|
- //new平时作业换算:分数/作业目标分
|
|
|
+ //卷面分/目标卷面总分*权重
|
|
|
BigDecimal matrixScore = score.divide(reportEvaluationDto.getTargetScore(), 4, BigDecimal.ROUND_HALF_UP).multiply(reportEvaluationDto.getTargetWeight()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
reportExamStudentUsualScoreObjDtoList.add(new ReportExamStudentUsualScoreObjDto(reportEvaluationDto.getTargetId(), reportEvaluationDto, score, matrixScore, usualScoreWordDto.getUsualScoreTargetSumScore()));
|
|
|
scoreListMap.put(reportEvaluationDto.getTargetId(), reportExamStudentUsualScoreObjDtoList);
|