setName('PushDataToSupplier')->setDescription('推送数据到供应商api'); } protected function execute(Input $input, Output $output) { $da = Cache::store('redis')->handler()->rpop($this->key); // $da = json_encode([ // 'supplierNo' => 'QS2203150147019298', // 'type' => 'cgd',//cgd销售订单,online上线结果 // 'data' => ['name' => '张三'], // ], JSON_UNESCAPED_UNICODE); if ($da) { $da = json_decode($da, true); //有推送地址 $res = Db::name('development') ->field('id,push_url') ->where('supplierNo', $da['supplierNo']) ->where('push_url', '<>', '') ->withAttr('push_url', function ($val) { return explode(',', $val); }) ->findOrEmpty(); if ($res) { $insert = []; foreach ($res['push_url'] as $url){ $response = curl_request($url,$da); $insert[]=[ 'supplierNo'=>$da['supplierNo'], 'push_url'=>$url, 'type'=>$da['type'], 'data'=>json_encode($da,JSON_UNESCAPED_UNICODE), 'response'=>$response ]; } if($insert) Db::name('push_log')->insertAll($insert); } } // return parent::execute($input, $output); // TODO: Change the autogenerated stub //订阅? //哪些数据? //订单 //产品上线的状态 //数据格式 } }