12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- <?php
- namespace App\Console\Commands;
- use App\Log;
- use App\Models\SunnyTask;
- use App\Services\HttpService;
- use App\Services\SunService;
- use Illuminate\Console\Command;
- class SunnyAccount extends Command
- {
- protected $signature = 'SunnyAccount';
- protected $description = '阳光平台账号信息获取';
- public function handle()
- {
- \DB::connection()->disableQueryLog();
- $this->info(date('m-d H:i:s') . ' 开始整理');
- $this->getAccountList();
- $this->info(date('m-d H:i:s') . ' 整理结束');
- }
- public function getAccountList()
- {
- $params = [
- 'vip_id' => SunService::VIP_ID,
- ];
- # 签名
- $params = SunService::sign($params);
- $requestUri = SunService::API_BASE_URL . SunService::CHANNEL_LIST;
- # 获取响应数据
- $response = HttpService::httpPost($requestUri, $params);
- if($response === false)
- Log::logError('阳光公众账号数据获取失败' . $requestUri, $params, 'SunAccountData');
- $responseData = json_decode($response, true);
- if(isset($responseData['error_code']) && $responseData['error_code']==0) {
- # 记录任务信息
- $taskId = isset($responseData['data']['task_id']) ? $responseData['data']['task_id'] : null;
- if(empty($taskId)) {
- Log::logError('账号列表获取任务创建失败', $responseData, 'SunAccount');
- $this->info('获取账号列表任务设置失败');
- return false;
- }
- $result = SunnyTask::setTask($taskId, SunnyTask::CHANNEL_TYPE);
- if(!$result) {
- Log::logError('账号列表获取任务失败', [
- 'task_id' => $taskId,
- 'type' => SunnyTask::CHANNEL_TYPE
- ], 'SunAccount');
- return false;
- }
- } else {
- Log::logError('账号列表获取任务失败', $responseData, 'SunAccount');
- return false;
- }
- return true;
- }
- }
|