where('status', OtcOrder::status_wait_pay)->where(function ($query) { $query->where('overed_at', '<', Carbon::now()->toDateTimeString()); })->cursor(); foreach ($orders as $order) { try { $user_id = $order['user_id']; $params = ['order_id' => $order['id']]; (new OtcService())->cancelOrder($user_id, $params); } catch (\Exception $exception) { info($exception); continue; } } } }