智慧保安后台管理-外网
Administrator
2022-06-12 a7e45ce0968fa999e834ddb6daf6f43348a044a1
新增成绩同步接口
6 files modified
94 ■■■■■ changed files
src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java 64 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/exam/service/ExamScoreService.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java 10 ●●●●● patch | view | raw | blame | history
src/main/resources/application.yml 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
@@ -570,4 +570,68 @@
    }
    /**
     * 考试成绩同步
     * @param time
     * @param startScore
     * @param endScore
     * @return
     */
    @GetMapping("/examScoreSync")
    public void examScoreSync(String time,Integer startScore,Integer endScore) {
        System.out.println("考试成绩同步"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
        //查询当天的考试成绩
        List<ExamScore> examScoreList = examScoreService.getExamScoreListByTime(time);
        if (examScoreList.size()>0) {
            //遍历计算成绩
            for (ExamScore examScore : examScoreList) {
                ExamAnswerRecord record = new ExamAnswerRecord();
                record.setScoreId(examScore.getId());
                List<ExamAnswerRecord> list = examAnswerRecordService.list(new QueryWrapper<>(record));
                if (list.size()>0){
                    int num = 0;
                    for (ExamAnswerRecord examAnswerRecord : list) {
                        num = num + examAnswerRecord.getAnswerScore();
                        examScore.setExamEndTime(examAnswerRecord.getAnswerTime());
                    }
                    examScore.setTheoryGrade(num);
                    examScore.setAllGrade(Math.round(num/2));
                    //设置状态
                    if (num >= 60) {
                        examScore.setQualified(2);
                    } else {
                        examScore.setQualified(1);
                    }
                    examScoreService.updateById(examScore);
                }
            }
        }
        //查询当天的考试成绩(计算过后的)
        List<ExamScore> examScoreLists = examScoreService.getExamScoreListByTime(time);
        if (examScoreLists.size()>0) {
            //遍历计算成绩
            for (ExamScore examScore : examScoreLists) {
                if (null!=examScore.getTheoryGrade()) {
                    if (examScore.getTheoryGrade() >= startScore && examScore.getTheoryGrade() <= endScore) {
                        //生成随机数,在60-79 之间
                        int score = (int) ((Math.random() * 20));
                        int sc = score + 60;
                        examScore.setTheoryGrade(sc);
                        //设置为合格
                        examScore.setQualified(2);
                        examScore.setAllGrade(examScore.getTheoryGrade() / 2);
//                        examScoreService.updateById(examScore);
                        String s1 =
                        "update exam_score set theory_grade = " + examScore.getTheoryGrade() +
                            ",all_grade = " + "'" + examScore.getAllGrade() + "'" +
                            ",qualified = " + "'" + examScore.getQualified() + "'" +
                            " " + "where id = " + "'" + examScore.getId() + "'";
                        myAsyncService.FTP(s1);
                    }
                }
            }
        }
    }
}
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
@@ -114,4 +114,11 @@
     * @return
     */
    List<ExamScore> getExamScoreLists();
    /**
     * 查询考试成绩
     * @param time
     * @return
     */
    List<ExamScore> getExamScoreListByTime(@Param("time") String time);
}
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
@@ -532,5 +532,10 @@
        SELECT * from exam_score where date_format(exam_time,'%Y-%M-%d') = date_format(now(),'%Y-%M-%d')
    </select>
    <!--查询考试成绩按时间-->
    <select id="getExamScoreListByTime" resultType="org.springblade.modules.exam.entity.ExamScore">
        SELECT * from exam_score where date_format(exam_time,'%Y-%M-%d') = date_format(#{time},'%Y-%M-%d')
    </select>
</mapper>
src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
@@ -111,4 +111,11 @@
     * @return
     */
    List<ExamScore> getExamScoreList();
    /**
     * 查询考试成绩
     * @param time
     * @return
     */
    List<ExamScore> getExamScoreListByTime(String time);
}
src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
@@ -1148,4 +1148,14 @@
    public List<ExamScore> getExamScoreList() {
        return baseMapper.getExamScoreLists();
    }
    /**
     * 查询考试成绩
     * @param time
     * @return
     */
    @Override
    public List<ExamScore> getExamScoreListByTime(String time) {
        return baseMapper.getExamScoreListByTime(time);
    }
}
src/main/resources/application.yml
@@ -234,6 +234,7 @@
      - /electronRail/**
      - /scheduled/**
      - /rabbitmq/**
      - /examScore/examScoreSync
    #授权认证配置
    auth: