|
@@ -886,22 +886,21 @@ public class ExamServiceImpl implements ExamService {
|
|
DynamicEnum ipTotalLimit = manager.getByName("IP_TOTAL_LIMIT");
|
|
DynamicEnum ipTotalLimit = manager.getByName("IP_TOTAL_LIMIT");
|
|
Boolean totalLimit = getExamLimitProperty(examId, ipTotalLimit.getId(), false);
|
|
Boolean totalLimit = getExamLimitProperty(examId, ipTotalLimit.getId(), false);
|
|
if (totalLimit) {
|
|
if (totalLimit) {
|
|
- //在白名单中
|
|
|
|
|
|
+ //全部白名单模式:不在白名单中,才限制访问
|
|
int count = examIpLimitRepo.countByExamIdAndLimitTypeAndIp(examId, IpLimitType.HAS_ACCESS.name(), realIp);
|
|
int count = examIpLimitRepo.countByExamIdAndLimitTypeAndIp(examId, IpLimitType.HAS_ACCESS.name(), realIp);
|
|
if (count == 0) {
|
|
if (count == 0) {
|
|
return true;
|
|
return true;
|
|
} else {
|
|
} else {
|
|
- return getCenterLimit(manager, examId, accessUser.getUserId(), realIp);
|
|
|
|
|
|
+ // return getCenterLimit(manager, examId, accessUser.getUserId(), realIp);
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- //在黑名单中
|
|
|
|
|
|
+ //全部黑名单模式:在黑名单中,才限制访问
|
|
int count = examIpLimitRepo.countByExamIdAndLimitTypeAndIp(examId, IpLimitType.NO_ACCESS.name(), realIp);
|
|
int count = examIpLimitRepo.countByExamIdAndLimitTypeAndIp(examId, IpLimitType.NO_ACCESS.name(), realIp);
|
|
if (count > 0) {
|
|
if (count > 0) {
|
|
return true;
|
|
return true;
|
|
} else {
|
|
} else {
|
|
- return getCenterLimit(manager, examId, accessUser.getUserId(), realIp);
|
|
|
|
|
|
+ // return getCenterLimit(manager, examId, accessUser.getUserId(), realIp);
|
|
}
|
|
}
|
|
-
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return false;
|
|
return false;
|