From f4ea4fd472a722fd2bf2e0dba65a959a5e16ae96 Mon Sep 17 00:00:00 2001 From: denghy Date: Wed, 16 Jan 2019 11:40:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Domains/Real/Commands/Sync/MongoSync.php | 4 +++- app/Domains/Real/Jobs/MongoSyncJob.php | 8 +------- app/Domains/Virtual/Commands/Sync/CardSync.php | 5 ++++- app/Domains/Virtual/Commands/Sync/LogSync.php | 5 ++++- app/Domains/Virtual/Jobs/CardSyncJob.php | 7 +------ app/Domains/Virtual/Jobs/LogSyncJob.php | 2 -- 6 files changed, 13 insertions(+), 18 deletions(-) diff --git a/app/Domains/Real/Commands/Sync/MongoSync.php b/app/Domains/Real/Commands/Sync/MongoSync.php index 25182dd2..0211b901 100644 --- a/app/Domains/Real/Commands/Sync/MongoSync.php +++ b/app/Domains/Real/Commands/Sync/MongoSync.php @@ -52,6 +52,8 @@ class MongoSync extends Command app(ConfigService::class)->set(self::CURSOR_KEY, intval($nextMicrotime)); - MongoSyncJob::onQueue('sync')->withChain($jobs->toArray())->dispatch(1, $this->limit, $utcDateTime); + if ($total) { + MongoSyncJob::onQueue('sync')->withChain($jobs->toArray())->dispatch(1, $this->limit, $utcDateTime); + } } } diff --git a/app/Domains/Real/Jobs/MongoSyncJob.php b/app/Domains/Real/Jobs/MongoSyncJob.php index 3dde2387..c36a6dc5 100644 --- a/app/Domains/Real/Jobs/MongoSyncJob.php +++ b/app/Domains/Real/Jobs/MongoSyncJob.php @@ -93,13 +93,7 @@ class MongoSyncJob implements ShouldQueue virtual_activated_at=COALESCE(cards.virtual_activated_at, excluded.activated_at), order_status=excluded.order_status'; - try { - $builder->connection->insert($sql, Arr::flatten($values, 1)); - } catch (\Exception $e) { - $nextMicrotime = intval($res->first()->oRDate->toDateTime()->format('U.u') * 1000) - 1; - app(ConfigService::class)->set(MongoSync::CURSOR_KEY, intval($nextMicrotime)); - } - + $builder->connection->insert($sql, Arr::flatten($values, 1)); app(CardRepository::class)->forgetCached(); } diff --git a/app/Domains/Virtual/Commands/Sync/CardSync.php b/app/Domains/Virtual/Commands/Sync/CardSync.php index d38e48bc..0822a9de 100644 --- a/app/Domains/Virtual/Commands/Sync/CardSync.php +++ b/app/Domains/Virtual/Commands/Sync/CardSync.php @@ -55,6 +55,9 @@ class CardSync extends Command app(ConfigService::class)->set(self::CURSOR_KEY, $nextId); - CardSyncJob::onQueue('sync')->withChain($jobs->toArray())->dispatch(1, $this->limit, $maxId); + + if ($total) { + CardSyncJob::onQueue('sync')->withChain($jobs->toArray())->dispatch(1, $this->limit, $maxId); + } } } diff --git a/app/Domains/Virtual/Commands/Sync/LogSync.php b/app/Domains/Virtual/Commands/Sync/LogSync.php index 0b554111..03a0ac35 100644 --- a/app/Domains/Virtual/Commands/Sync/LogSync.php +++ b/app/Domains/Virtual/Commands/Sync/LogSync.php @@ -5,6 +5,7 @@ namespace App\Domains\Virtual\Commands\Sync; use Carbon\Carbon; use App\Models\Card\Card; use App\Models\Virtual\Order; +use Illuminate\Support\Collection; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Artisan; use App\Domains\Virtual\Jobs\LogSyncJob; @@ -60,6 +61,8 @@ class LogSync extends Command app(ConfigService::class)->set(self::CURSOR_KEY, $nextId); - LogSyncJob::onQueue('sync')->withChain($jobs->toArray())->dispatch(1, $this->limit, $maxId); + if ($total) { + LogSyncJob::onQueue('sync')->withChain($jobs->toArray())->dispatch(1, $this->limit, $maxId); + } } } diff --git a/app/Domains/Virtual/Jobs/CardSyncJob.php b/app/Domains/Virtual/Jobs/CardSyncJob.php index edc4fb86..b3df8010 100644 --- a/app/Domains/Virtual/Jobs/CardSyncJob.php +++ b/app/Domains/Virtual/Jobs/CardSyncJob.php @@ -96,12 +96,7 @@ class CardSyncJob implements ShouldQueue virtual_activated_at=excluded.virtual_activated_at, cancelled_at=excluded.cancelled_at'; - try { - $builder->connection->insert($sql, Arr::flatten($array, 1)); - } catch (\Exception $e) { - $nextId = $res->first()->id - 1; - app(ConfigService::class)->set(CardSync::CURSOR_KEY, $nextId); - } + $builder->connection->insert($sql, Arr::flatten($array, 1)); app(CardRepository::class)->forgetCached(); } diff --git a/app/Domains/Virtual/Jobs/LogSyncJob.php b/app/Domains/Virtual/Jobs/LogSyncJob.php index 3f4e5d07..0d462c95 100644 --- a/app/Domains/Virtual/Jobs/LogSyncJob.php +++ b/app/Domains/Virtual/Jobs/LogSyncJob.php @@ -150,8 +150,6 @@ class LogSyncJob implements ShouldQueue } } catch (\Exception $e) { DB::rollback(); - $nextId = $res->first()->id - 1; - app(ConfigService::class)->set(LogSync::CURSOR_KEY, $nextId); throw $e; } }