修改老师端 实训报告回显接口

master
xiaoCJ 2 years ago
parent 8c75e2292d
commit ba7c18f659

@ -231,10 +231,10 @@ public class TrainingScoreController {
// }
// 老师端报告评分
@PostMapping("/reportGrade")
public Map<Long, Integer> reportGrade(@RequestBody JSONObject jsonObject) {
public void reportGrade(@RequestBody JSONObject jsonObject) {
Integer reportScore = jsonObject.getInteger("reportScore");
Long userId = jsonObject.getLong("userId");
return trainingScoreService.reportGrade(reportScore, userId);
trainingScoreService.reportGrade(reportScore, userId);
}
@ -264,7 +264,7 @@ public class TrainingScoreController {
if (!sysTrainingScores.isEmpty()) {
for (SysTrainingScore sysTrainingScore : sysTrainingScores) {
if (sysTrainingScore.getTrainingReportScore() != null) {
Integer trainingReportScore = sysTrainingScore.getTrainingReportScore();
Integer trainingReportScore = sysTrainingScore.getPreTrainingReportScore();
Long userid = sysTrainingScore.getUserid();
resultScores.put(userid, trainingReportScore);
}

@ -35,5 +35,5 @@ public interface ISysTrainingScoreService {
AjaxResult downloadReport(HttpServletResponse response, Long id);
Map<Long,Integer> reportGrade(Integer reportScore, Long userId);
void reportGrade(Integer reportScore, Long userId);
}

@ -241,12 +241,14 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService {
sysTrainingScore.setTotalscore(totalScore);
sysTrainingScore.setTrainingReportScore(resultReportScore.intValue());
sysTrainingScore.setTrainingOperationScore(resultOperationScore.intValue());
sysTrainingScore.setPreTrainingReportScore(reportScore);
trainingScoreMapper.updateByPrimaryKeySelective(sysTrainingScore);
gradeWeightMapper.updateByPrimaryKeySelective(sysGradeWeight);
return reportDto;
} //当两个成绩有一个时,也需要查询返回已有的 (不能算权重) 只有一个时不计算权重 否则查询一次就会算一次哦
else if (reportScore != null) { // 当只有报告成绩可用时
reportDto.setTrainingReportScore(reportScore.doubleValue() * reportWeight);
sysTrainingScore.setPreTrainingReportScore(reportScore);
trainingScoreMapper.updateByPrimaryKeySelective(sysTrainingScore);
return reportDto;
} else if (trainingOperationScore != null) { // 当只有操作成绩可用时
@ -368,14 +370,14 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService {
//修改实训报告分数,并重新算分
@Override
public Map<Long,Integer> reportGrade(Integer reportScore, Long userId) {
Map<Long,Integer> resultMap = new HashMap<>();
public void reportGrade(Integer reportScore, Long userId) {
SysTrainingScoreExample trainingScoreExample = new SysTrainingScoreExample();
trainingScoreExample.createCriteria().andUseridEqualTo(userId);
List<SysTrainingScore> sysTrainingScores = trainingScoreMapper.selectByExample(trainingScoreExample);
if (!sysTrainingScores.isEmpty()) {
SysTrainingScore sysTrainingScore = sysTrainingScores.get(0);
sysTrainingScore.setTrainingReportScore(reportScore);
sysTrainingScore.setPreTrainingReportScore(reportScore);
trainingScoreMapper.updateByPrimaryKeySelective(sysTrainingScore);
// 调用重新计算分数和总成绩的逻辑
SysUser user = sysUserMapper.selectUserById(userId);
@ -384,9 +386,6 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService {
Double reportWeight = sysGradeWeight.getReportWeight();
//修改完调用算分方法重新算分
createReportDto(sysTrainingScore, user, reportWeight, operatorWeight);
resultMap.put(userId,reportScore);
return resultMap;
}
return null;
}
}

Loading…
Cancel
Save