isDirty('reset_traffic_method')) { return; } $trafficResetService = app(TrafficResetService::class); User::where('plan_id', $plan->id) ->where('banned', 0) ->where(function ($query) { $query->where('expired_at', '>', time()) ->orWhereNull('expired_at'); }) ->lazyById(500) ->each(function (User $user) use ($trafficResetService) { $nextResetTime = $trafficResetService->calculateNextResetTime($user); $user->update([ 'next_reset_at' => $nextResetTime?->timestamp, ]); }); } }