| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- <?php
- namespace App\Jobs;
- use App\OrderPackage;
- use App\Services\LogisticAliJiSuApiService;
- use App\Services\LogService;
- use App\Services\OrderPackageReceivedSyncService;
- use Illuminate\Bus\Queueable;
- use Illuminate\Contracts\Queue\ShouldQueue;
- use Illuminate\Foundation\Bus\Dispatchable;
- use Illuminate\Queue\InteractsWithQueue;
- use Illuminate\Queue\SerializesModels;
- /**
- * @Deprecated 快递路由-阿里极速
- */
- class LogisticAliJiSuSync implements ShouldQueue
- {
- public $tries = 2;
- public $timeout = 10;
- use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
- /** @var $logistic_number string */
- protected $logistic_number;
- /** @var $logisticAliJiSuApiService LogisticAliJiSuApiService */
- protected $logisticAliJiSuApiService;
- /** @var $orderPackageReceivedSyncService OrderPackageReceivedSyncService */
- protected $orderPackageReceivedSyncService;
- /**
- * Create a new job instance.
- *
- * @param $logistic_number
- */
- public function __construct($logistic_number)
- {
- $this->logistic_number = $logistic_number;
- }
- /**
- * Execute the job.
- *
- * @return void
- */
- public function handle()
- {
- LogService::log(LogisticAliJiSuSync::class, "{$this->logistic_number}-JOB-AliJiSu", '');
- //标记上有同步的操作
- OrderPackage::query()->where('logistic_number', $this->logistic_number)->update(['sync_routes_flag'=> true]);
- $this->logisticAliJiSuApiService = app('LogisticAliJiSuApiService');
- $response = $this->logisticAliJiSuApiService->query($this->logistic_number);
- $format = $this->logisticAliJiSuApiService->format($response,$this->logistic_number);
- try {
- $this->orderPackageReceivedSyncService = app('OrderPackageReceivedSyncService');
- if (count($format) > 0 && $format['logistic_number'] ?? false) $this->orderPackageReceivedSyncService->update([$format]);
- } catch (\Exception $e) {
- app('LogService')->log(__METHOD__, __FUNCTION__, "阿里极速数据同步快递数据 ERROR " . ' || ' . json_encode($this->logistic_number) . ' || ' . json_encode($e->getMessage()) . ' || ' . json_encode($e->getTraceAsString()));
- }
- }
- }
|