update 调整学生评价相关得逻辑代码

develop
hhb@hotmail.com 3 months ago
parent ab6b726b9c
commit 4a8bf051e9

@ -31,6 +31,8 @@ public class StudentReportVo {
@ApiModelProperty("学生表扬总数") @ApiModelProperty("学生表扬总数")
private Integer praiseCount; private Integer praiseCount;
@ApiModelProperty("学生批评总数")
private Integer criticizeCount;
@ApiModelProperty("学生总分") @ApiModelProperty("学生总分")
private Integer score; private Integer score;

@ -401,7 +401,7 @@ public class EvaluationServiceImpl implements EvaluationService {
record.setAcademicYearId(academicYearId); record.setAcademicYearId(academicYearId);
record.setPraiseCount(appraiseTreeNode.isPraise() ? 1 : 0); record.setPraiseCount(appraiseTreeNode.isPraise() ? 1 : 0);
record.setCriticizeCount(appraiseTreeNode.isPraise() ? 0 : 1); record.setCriticizeCount(appraiseTreeNode.isPraise() ? 0 : 1);
record.setScore(ObjectUtils.isEmpty(appraiseTreeNode.getScore()) ? 0 : appraiseTreeNode.getScore()); record.setScore(appraiseTreeNode.isPraise() ? 1 : 0);
record.setNodes(items); record.setNodes(items);
record.setCode(String.format(PK.PK_APPRAISE_RECORD, schoolId)); record.setCode(String.format(PK.PK_APPRAISE_RECORD, schoolId));
appraiseRecordRepository.save(record); appraiseRecordRepository.save(record);
@ -486,8 +486,8 @@ public class EvaluationServiceImpl implements EvaluationService {
public List<StudentReportVo> Reports(ReportDto reportDto) { public List<StudentReportVo> Reports(ReportDto reportDto) {
// 获取当前登录用户和学校信息 // 获取当前登录用户和学校信息
User user = SecurityUtil.getLoginUser(); //User user = SecurityUtil.getLoginUser();
String schoolId = user.getSchoolId(); String schoolId = "hbcn";
// 获取学生 ID 列表 // 获取学生 ID 列表
List<String> studentIds = reportDto.getIds(); List<String> studentIds = reportDto.getIds();
@ -577,6 +577,8 @@ public class EvaluationServiceImpl implements EvaluationService {
Map<String, Integer> criticalDistribution = StudentReportVo.ofFiveEducation(); Map<String, Integer> criticalDistribution = StudentReportVo.ofFiveEducation();
List<AppraiseRecordItem> records = Collections.emptyList(); List<AppraiseRecordItem> records = Collections.emptyList();
int praiseCount = 0; int praiseCount = 0;
int criticizeCount = 0;
int score = 0;
float beyondPercent = 0.0f; float beyondPercent = 0.0f;
AchievementRule curAchievement = rules.get(rules.size() - 1); // 默认使用最低成就规则 AchievementRule curAchievement = rules.get(rules.size() - 1); // 默认使用最低成就规则
int n = 1; int n = 1;
@ -608,6 +610,8 @@ public class EvaluationServiceImpl implements EvaluationService {
// 计算学生排名 // 计算学生排名
praiseCount = appraiseRecord.getPraiseCount(); praiseCount = appraiseRecord.getPraiseCount();
criticizeCount = appraiseRecord.getCriticizeCount();
score = appraiseRecord.getScore();
int greaterCount = appraiseRecordRepository.findClassRecord(String.format(PK.PK_APPRAISE_RECORD, schoolId), academicYearId, classId, praiseCount); int greaterCount = appraiseRecordRepository.findClassRecord(String.format(PK.PK_APPRAISE_RECORD, schoolId), academicYearId, classId, praiseCount);
int stuInClassCount = classStudentCountMap.get(classId); int stuInClassCount = classStudentCountMap.get(classId);
beyondPercent = (float) (stuInClassCount - greaterCount) / stuInClassCount; beyondPercent = (float) (stuInClassCount - greaterCount) / stuInClassCount;
@ -653,7 +657,8 @@ public class EvaluationServiceImpl implements EvaluationService {
.studentId(studentId) .studentId(studentId)
.className(student.getClassId()) // 假设班级名可以从学生信息中获取 .className(student.getClassId()) // 假设班级名可以从学生信息中获取
.praiseCount(praiseCount) .praiseCount(praiseCount)
.score(appraiseRecordOpt.isPresent() ? appraiseRecordOpt.get().getScore() : 0) // 默认分数为 0 .criticizeCount(criticizeCount)
.score(score) // 默认分数为 0
.beyondPercent(beyondPercent) .beyondPercent(beyondPercent)
.topPraiseTeacher(new StudentReportVo.Teacher(null, null)) // 默认值为 null .topPraiseTeacher(new StudentReportVo.Teacher(null, null)) // 默认值为 null
.topCriticalTeacher(new StudentReportVo.Teacher(null, null)) // 默认值为 null .topCriticalTeacher(new StudentReportVo.Teacher(null, null)) // 默认值为 null

Loading…
Cancel
Save