@@ -1138,7 +1138,7 @@ public function cronjobCheckout($ignoreTimeRange = false): int
11381138 $result += $examUsers->count();
11391139 $now = Carbon::now()->toDateTimeString();
11401140 $examUserIdArr = $uidToDisable = $messageToSend = $userBanLog = $userModcommentUpdate = [];
1141- $bonusLog = $userBonusCommentUpdate = $ userBonusUpdate = $uidToUpdateBonus = [];
1141+ $bonusLog = $userBonusUpdate = $uidToUpdateBonus = [];
11421142 $examUserToInsert = [];
11431143 foreach ($examUsers as $examUser) {
11441144 $minId = $examUser->id;
@@ -1183,13 +1183,6 @@ public function cronjobCheckout($ignoreTimeRange = false): int
11831183 "new_total_value" => $examUser->user->seedbonus + $exam->success_reward_bonus,
11841184 "business_type" => BonusLogs::BUSINESS_TYPE_TASK_PASS_REWARD,
11851185 ];
1186- $userBonusComment = nexus_trans("exam.reward_bonus_comment", [
1187- 'exam_name' => $exam->name,
1188- 'begin' => $examUser->begin,
1189- 'end' => $examUser->end,
1190- 'success_reward_bonus' => $exam->success_reward_bonus,
1191- ], $locale);
1192- $userBonusCommentUpdate[] = sprintf("when `id` = %s then concat_ws('\n', '%s', bonuscomment)", $uid, addslashes($userBonusComment));
11931186 $userBonusUpdate[] = sprintf("when `id` = %s then seedbonus + %d", $uid, $exam->success_reward_bonus);
11941187 }
11951188 }
@@ -1230,13 +1223,6 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12301223 "new_total_value" => $examUser->user->seedbonus - $exam->fail_deduct_bonus,
12311224 "business_type" => BonusLogs::BUSINESS_TYPE_TASK_NOT_PASS_DEDUCT,
12321225 ];
1233- $userBonusComment = nexus_trans("exam.deduct_bonus_comment", [
1234- 'exam_name' => $exam->name,
1235- 'begin' => $examUser->begin,
1236- 'end' => $examUser->end,
1237- 'fail_deduct_bonus' => $exam->fail_deduct_bonus,
1238- ], $locale);
1239- $userBonusCommentUpdate[] = sprintf("when `id` = %s then concat_ws('\n', '%s', bonuscomment)", $uid, addslashes($userBonusComment));
12401226 $userBonusUpdate[] = sprintf("when `id` = %s then seedbonus - %d", $uid, $exam->fail_deduct_bonus);
12411227 }
12421228 }
@@ -1256,7 +1242,7 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12561242 'msg' => $msg
12571243 ];
12581244 }
1259- DB::transaction(function () use ($uidToDisable, $messageToSend, $examUserIdArr, $examUserToInsert, $userBanLog, $userModcommentUpdate, $userBonusUpdate, $userBonusCommentUpdate, $ bonusLog, $uidToUpdateBonus, $userTable, $logPrefix) {
1245+ DB::transaction(function () use ($uidToDisable, $messageToSend, $examUserIdArr, $examUserToInsert, $userBanLog, $userModcommentUpdate, $userBonusUpdate, $bonusLog, $uidToUpdateBonus, $userTable, $logPrefix) {
12601246 ExamUser::query()->whereIn('id', $examUserIdArr)->update(['status' => ExamUser::STATUS_FINISHED]);
12611247 do {
12621248 $deleted = ExamProgress::query()->whereIn('exam_user_id', $examUserIdArr)->limit(10000)->delete();
@@ -1281,8 +1267,8 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12811267 if (!empty($userBonusUpdate)) {
12821268 $uidStr = implode(', ', $uidToUpdateBonus);
12831269 $sql = sprintf(
1284- "update %s set seedbonus = case %s end, bonuscomment = case %s end where id in (%s)",
1285- $userTable, implode(' ', $userBonusUpdate), implode(' ', $userBonusCommentUpdate), $uidStr
1270+ "update %s set seedbonus = case %s end where id in (%s)",
1271+ $userTable, implode(' ', $userBonusUpdate), $uidStr
12861272 );
12871273 $updateResult = DB::update($sql);
12881274 do_log(sprintf("$logPrefix, update %s users: %s seedbonus, sql: %s, updateResult: %s", count($uidToUpdateBonus), $uidStr, $sql, $updateResult));
0 commit comments