Merge remote-tracking branch 'refs/remotes/origin/php8' into php8

This commit is contained in:
xiaomlove
2024-05-18 14:53:44 +08:00
2 changed files with 18 additions and 12 deletions

View File

@@ -338,7 +338,13 @@ class ExamRepository extends BaseRepository
return false;
}
return true;
try {
$user->checkIsNormal();
return true;
} catch (\Throwable $throwable) {
do_log("$logPrefix, user is not normal: " . $throwable->getMessage());
return false;
}
}
@@ -1115,6 +1121,16 @@ class ExamRepository extends BaseRepository
do_log("$currentLogPrefix, [is_done]");
$subjectTransKey = 'exam.checkout_pass_message_subject';
$msgTransKey = 'exam.checkout_pass_message_content';
if (!empty($exam->recurring) && $this->isExamMatchUser($exam, $examUser->user)) {
$examUserToInsert[] = [
'uid' => $examUser->user->id,
'exam_id' => $exam->id,
'begin' => $exam->getBeginForUser(),
'end' => $exam->getEndForUser(),
'created_at' => $now,
'updated_at' => $now,
];
}
} else {
do_log("$currentLogPrefix, [will be banned]");
clear_user_cache($examUser->user->id, $examUser->user->passkey);
@@ -1152,16 +1168,6 @@ class ExamRepository extends BaseRepository
'subject' => $subject,
'msg' => $msg
];
if (!empty($exam->recurring) && $this->isExamMatchUser($exam, $examUser->user)) {
$examUserToInsert[] = [
'uid' => $examUser->user->id,
'exam_id' => $exam->id,
'begin' => $exam->getBeginForUser(),
'end' => $exam->getEndForUser(),
'created_at' => $now,
'updated_at' => $now,
];
}
}
DB::transaction(function () use ($uidToDisable, $messageToSend, $examUserIdArr, $examUserToInsert, $userBanLog, $userModcommentUpdate, $userTable, $logPrefix) {
ExamUser::query()->whereIn('id', $examUserIdArr)->update(['status' => ExamUser::STATUS_FINISHED]);