diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java index 788fe79..ac03c43 100644 --- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java +++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java @@ -91,7 +91,7 @@ public class TrainingScoreController { } for (int i = 0; i < trainingScoreList.size(); i++) { SysTrainingScore sysTrainingScore = trainingScoreList.get(i); - if (sysTrainingScore.getReportContent() == null || "".equals(sysTrainingScore.getReportContent())) { + if (sysTrainingScore.getReportContent() == null || "".equals(sysTrainingScore.getReportContent()) || sysTrainingScore.getTrainingReportScore() != null) { continue; } String reportContent = sysTrainingScore.getReportContent(); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java index a5b1601..a220398 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java @@ -149,13 +149,20 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { if (sysTrainingScore.getTotalscore() != null && sysTrainingScore.getTrainingReportScore() != null && sysTrainingScore.getTrainingOperationScore() != null) { + if (reportWeight==null){ + reportWeight=0.1; + }if (operatorWeight==null){ + operatorWeight=0.9; + } + double reportScore = (sysTrainingScore.getTrainingReportScore().doubleValue() )* reportWeight; + double operatorScore = (sysTrainingScore.getTrainingOperationScore().doubleValue()) * operatorWeight; // 使用数据库中的分数创建ReportDto ReportDto reportDto = new ReportDto( user.getStuClass(), user.getStudentNumber(), user.getUserName(), - sysTrainingScore.getTrainingReportScore().doubleValue(), - sysTrainingScore.getTrainingOperationScore().doubleValue(), + reportScore, + operatorScore, sysTrainingScore.getTotalscore(), sysTrainingScore.getReportFilename() ); @@ -182,13 +189,20 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { if (sysTrainingScore.getTotalscore() != null && sysTrainingScore.getTrainingReportScore() != null && sysTrainingScore.getTrainingOperationScore() != null) { + if (reportWeight==null){ + reportWeight=0.1; + }if (operatorWeight==null){ + operatorWeight=0.9; + } + double reportScore = (sysTrainingScore.getTrainingReportScore().doubleValue() )* reportWeight; + double operatorScore = (sysTrainingScore.getTrainingOperationScore().doubleValue()) * operatorWeight; // 使用数据库中的分数创建ReportDto ReportDto reportDto = new ReportDto( sysUser.getStuClass(), sysUser.getStudentNumber(), sysUser.getUserName(), - sysTrainingScore.getTrainingReportScore().doubleValue(), - sysTrainingScore.getTrainingOperationScore().doubleValue(), + reportScore, + operatorScore, sysTrainingScore.getTotalscore(), sysTrainingScore.getReportFilename() ); @@ -250,8 +264,8 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { reportDto.setTrainingOperationScore(resultOperationScore); reportDto.setScoreTotal(totalScore); sysTrainingScore.setTotalscore(totalScore); - sysTrainingScore.setTrainingReportScore(resultReportScore.intValue()); - sysTrainingScore.setTrainingOperationScore(resultOperationScore.intValue()); +// sysTrainingScore.setTrainingReportScore(resultReportScore.intValue()); +// sysTrainingScore.setTrainingOperationScore(resultOperationScore.intValue()); sysTrainingScore.setPreTrainingReportScore(reportScore); trainingScoreMapper.updateByPrimaryKeySelective(sysTrainingScore); gradeWeightMapper.updateByPrimaryKeySelective(sysGradeWeight); @@ -277,7 +291,7 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { String filePath = fileUtil.upload(file); SysTrainingScoreExample sysTrainingScoreExample = new SysTrainingScoreExample(); sysTrainingScoreExample.createCriteria().andUseridEqualTo(id); - List sysTrainingScores = trainingScoreMapper.selectByExample(sysTrainingScoreExample); + List sysTrainingScores = trainingScoreMapper.selectByExampleWithBLOBs(sysTrainingScoreExample); if (!sysTrainingScores.isEmpty()) { SysTrainingScore sysTrainingScore = sysTrainingScores.get(0); if (sysTrainingScore != null && sysTrainingScore.getReportContent() != null && !sysTrainingScore.getReportContent().isEmpty()) { diff --git a/ruoyi-system/src/main/resources/mapper/system/SysTrainingScoreMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysTrainingScoreMapper.xml index a296ca8..01545b5 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysTrainingScoreMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysTrainingScoreMapper.xml @@ -1613,7 +1613,7 @@ where id = #{id,jdbcType=VARCHAR}