|
|
|
|
@ -53,7 +53,7 @@ public class ScoreRankServiceImpl implements ScoreRankService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@Scheduled(cron = "0 0 1 * * ?")
|
|
|
|
|
public Boolean doRank() {
|
|
|
|
|
public synchronized Boolean doRank() {
|
|
|
|
|
ensureStuRankIndexes();
|
|
|
|
|
if (schoolClassMapper != null) {
|
|
|
|
|
SchoolClassExample teachingClassExample = new SchoolClassExample();
|
|
|
|
|
@ -176,7 +176,7 @@ public class ScoreRankServiceImpl implements ScoreRankService {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Boolean doRankOne(String schoolId) {
|
|
|
|
|
public synchronized Boolean doRankOne(String schoolId) {
|
|
|
|
|
ensureStuRankIndexes();
|
|
|
|
|
StuRankExample stuRankExample = new StuRankExample();
|
|
|
|
|
stuRankExample.createCriteria().andUpdateTimeEqualTo(getNowDate()).andSchoolIdEqualTo(schoolId);
|
|
|
|
|
@ -198,7 +198,7 @@ public class ScoreRankServiceImpl implements ScoreRankService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Boolean doRankTeachingClass(String schoolId, String teachingClassId) {
|
|
|
|
|
public synchronized Boolean doRankTeachingClass(String schoolId, String teachingClassId) {
|
|
|
|
|
ensureStuRankIndexes();
|
|
|
|
|
SchoolClass teachingClass = schoolClassMapper.selectByPrimaryKey(teachingClassId);
|
|
|
|
|
if (teachingClass == null || !"TEACHING".equals(teachingClass.getClassType())) {
|
|
|
|
|
@ -439,6 +439,7 @@ public class ScoreRankServiceImpl implements ScoreRankService {
|
|
|
|
|
}
|
|
|
|
|
addIndexIfMissing("idx_stu_rank_update_school", "ALTER TABLE stu_rank ADD INDEX idx_stu_rank_update_school (update_time, school_id)");
|
|
|
|
|
addIndexIfMissing("idx_stu_rank_update_class", "ALTER TABLE stu_rank ADD INDEX idx_stu_rank_update_class (update_time, school_class_id)");
|
|
|
|
|
addIndexIfMissing("uq_stu_rank_update_class_user", "ALTER TABLE stu_rank ADD UNIQUE INDEX uq_stu_rank_update_class_user (update_time, school_class_id, user_id)");
|
|
|
|
|
stuRankIndexesChecked = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|