1111use App \Models \Torrent ;
1212use App \Models \User ;
1313use App \Models \UserBanLog ;
14+ use App \Models \UserModifyLog ;
1415use Carbon \Carbon ;
1516use Illuminate \Database \Eloquent \Builder ;
1617use Illuminate \Support \Arr ;
@@ -1137,9 +1138,10 @@ public function cronjobCheckout($ignoreTimeRange = false): int
11371138 }
11381139 $ result += $ examUsers ->count ();
11391140 $ now = Carbon::now ()->toDateTimeString ();
1140- $ examUserIdArr = $ uidToDisable = $ messageToSend = $ userBanLog = $ userModcommentUpdate = [];
1141+ $ examUserIdArr = $ uidToDisable = $ messageToSend = $ userBanLog = [];
11411142 $ bonusLog = $ userBonusUpdate = $ uidToUpdateBonus = [];
11421143 $ examUserToInsert = [];
1144+ $ userModifyLogs = [];
11431145 foreach ($ examUsers as $ examUser ) {
11441146 $ minId = $ examUser ->id ;
11451147 $ examUserIdArr [] = $ examUser ->id ;
@@ -1200,8 +1202,14 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12001202 'begin ' => $ examUser ->begin ,
12011203 'end ' => $ examUser ->end
12021204 ], $ locale );
1203- $ userModcomment = sprintf ('%s - %s ' , date ('Y-m-d ' ), $ userModcomment );
1204- $ userModcommentUpdate [] = sprintf ("when `id` = %s then concat_ws(' \n', '%s', modcomment) " , $ uid , $ userModcomment );
1205+ // $userModcomment = sprintf('%s - %s', date('Y-m-d'), $userModcomment);
1206+ // $userModcommentUpdate[] = sprintf("when `id` = %s then concat_ws('\n', '%s', modcomment)", $uid, $userModcomment);
1207+ $ userModifyLogs [] = [
1208+ 'user_id ' => $ uid ,
1209+ 'content ' => $ userModcomment ,
1210+ 'created_at ' => $ now ,
1211+ 'updated_at ' => $ now ,
1212+ ];
12051213 $ banLogReason = nexus_trans ('exam.ban_log_reason ' , [
12061214 'exam_name ' => $ exam ->name ,
12071215 'begin ' => $ examUser ->begin ,
@@ -1242,7 +1250,7 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12421250 'msg ' => $ msg
12431251 ];
12441252 }
1245- DB ::transaction (function () use ($ uidToDisable , $ messageToSend , $ examUserIdArr , $ examUserToInsert , $ userBanLog , $ userModcommentUpdate , $ userBonusUpdate , $ bonusLog , $ uidToUpdateBonus , $ userTable , $ logPrefix ) {
1253+ DB ::transaction (function () use ($ uidToDisable , $ messageToSend , $ examUserIdArr , $ examUserToInsert , $ userBanLog , $ userModifyLogs , $ userBonusUpdate , $ bonusLog , $ uidToUpdateBonus , $ userTable , $ logPrefix ) {
12461254 ExamUser::query ()->whereIn ('id ' , $ examUserIdArr )->update (['status ' => ExamUser::STATUS_FINISHED ]);
12471255 do {
12481256 $ deleted = ExamProgress::query ()->whereIn ('exam_user_id ' , $ examUserIdArr )->limit (10000 )->delete ();
@@ -1252,8 +1260,8 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12521260 if (!empty ($ uidToDisable )) {
12531261 $ uidStr = implode (', ' , $ uidToDisable );
12541262 $ sql = sprintf (
1255- "update %s set enabled = '%s', modcomment = case %s end where id in (%s) " ,
1256- $ userTable , User::ENABLED_NO , implode ( ' ' , $ userModcommentUpdate ), $ uidStr
1263+ "update %s set enabled = '%s' where id in (%s) " ,
1264+ $ userTable , User::ENABLED_NO , $ uidStr
12571265 );
12581266 $ updateResult = DB ::update ($ sql );
12591267 do_log (sprintf ("$ logPrefix, disable %s users: %s, sql: %s, updateResult: %s " , count ($ uidToDisable ), $ uidStr , $ sql , $ updateResult ));
@@ -1276,6 +1284,9 @@ public function cronjobCheckout($ignoreTimeRange = false): int
12761284 if (!empty ($ bonusLog )) {
12771285 BonusLogs::query ()->insert ($ bonusLog );
12781286 }
1287+ if (!empty ($ userModifyLogs )) {
1288+ UserModifyLog::query ()->insert ($ userModifyLogs );
1289+ }
12791290 });
12801291 }
12811292 return $ result ;
0 commit comments