jingcai-php/app/Console/Commands/Zq/SyncBjdcResult.php

103 lines
3.7 KiB
PHP
Executable File

<?php
namespace App\Console\Commands\Zq;
use App\Enums\LottType;
use App\Jobs\RefreshOrderBjdcResult;
use App\Model\LotteryType;
use App\Model\Zq\BjdcOdds;
use App\Model\Zq\BjdcResult;
use App\Service\External\AlStatService;
use Illuminate\Console\Command;
use Illuminate\Support\Arr;
class SyncBjdcResult extends Command
{
/**
* 这个就是命令名称
*/
protected $signature = 'zq:sync_bjdc_result';
/**
* 命令的说明描述
* @var string
*/
protected $description = '';
/**
* 创建命令的构造方法。
* @param string $words 传入的字符参数
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* 命令的具体执行触发方法
* @return mixed
*/
public function handle()
{
/** @var AlStatService $alStatService */
$alStatService = app(AlStatService::class);
$odds = $alStatService->getZqBjdcResult();
if (!$odds) {
return;
}
foreach ($odds as $item) {
$id = $item['bjdcOddId'];
$result = BjdcResult::where('odds_id',$id)->first();
if ($result) {
continue;
}
$bjdcOdds = BjdcOdds::where('odds_id', $id)->first();
$result = new BjdcResult();
$result->bjdc_odds_id = $bjdcOdds ? $bjdcOdds->id : 0;
$result->odds_id = strval(Arr::get($item, 'bjdcOddId'));
$result->match_id = strval(Arr::get($item, 'matchId'));
$result->issue_num = strval(Arr::get($item, 'issueNum'));
$result->play_num = strval(Arr::get($item, 'playNum'));
$result->half_time_score = strval(Arr::get($item, 'halfTimeScore'));
$result->full_time_score = strval(Arr::get($item, 'fullTimeScore'));
$result->is_reverse = strval(Arr::get($item, 'isReverse'));
$result->lottery_state = strval(Arr::get($item, 'lottState'));
$result->lottery_time = strval(Arr::get($item, 'lotteryTime'));
$result->spf_odds = floatval(Arr::get($item, 'spfResult.resultOdds'));
$result->spf_name = strval(Arr::get($item, 'spfResult.resultName'));
$result->spf_field = strval(Arr::get($item, 'spfResult.resultField'));
$result->rq_odds = floatval(Arr::get($item, 'rqResult.resultOdds'));
$result->rq_name = strval(Arr::get($item, 'rqResult.resultName'));
$result->rq_field = strval(Arr::get($item, 'rqResult.resultField'));
$result->rq_handicap = intval(Arr::get($item, 'rqResult.resultHandicap'));
$result->sxpds_odds = floatval(Arr::get($item, 'sxpdsResult.resultOdds'));
$result->sxpds_field = strval(Arr::get($item, 'sxpdsResult.resultField'));
$result->sxpds_name = strval(Arr::get($item, 'sxpdsResult.resultName'));
$result->bf_odds = floatval(Arr::get($item, 'bfResult.resultOdds'));
$result->bf_field = strval(Arr::get($item, 'bfResult.resultField'));
$result->bf_name = strval(Arr::get($item, 'bfResult.resultName'));
$result->jq_odds = floatval(Arr::get($item, 'jqResult.resultOdds'));
$result->jq_field = strval(Arr::get($item, 'jqResult.resultField'));
$result->jq_name = strval(Arr::get($item, 'jqResult.resultName'));
$result->bqc_odds = floatval(Arr::get($item, 'bqcResult.resultOdds'));
$result->bqc_field = strval(Arr::get($item, 'bqcResult.resultField'));
$result->bqc_name = strval(Arr::get($item, 'bqcResult.resultName'));
$result->save();
RefreshOrderBjdcResult::dispatch($result->id);
}
}
}