uid = $uid; $this->type = $type; } /** * Execute the job. * * @return void */ public function handle() { $user = User::find($this->uid); $user_env = UserEnv::where('uid', $this->uid)->first(); if ($user && $user_env) { if ($this->type == self::charge) { $order = Order::where('uid', $this->uid)->where('status', 'PAID')->orderBy('id', 'desc')->first(); $current_day_register = date('Y-m-d', strtotime($order->created_at)) == date('Y-m-d', strtotime($user->created_at)); if ($order && $current_day_register && $order->price >= 30) { $time = (string) $order->created_at; $ip = $order->create_ip; $count = Order::where('uid', $this->uid)->where('status', 'PAID')->where('price', '>=', '30')->count(); if ($count == 1) { $amount = $order->price; } else { return; } } else { return; } } else { $time = (string) $user->created_at; $ip = $user->register_ip; } $wechat = OfficialAccount::where('distribution_channel_id', $user->distribution_channel_id)->orderBy('id', 'desc')->first(); if ($wechat) { $params = [ 'ip' => trim($ip), 'ua' => trim($user_env->ua), 'open_id' => trim($user->openid), 'account_id' => trim($wechat->alias), 'app_id' => trim($wechat->appid), 'source' => 'wdy', 'amount' => isset($amount) ? $amount : '', 'type' => $this->type, 'time' => $time, ]; $params['sign'] = _sign($params, SysConsts::TIKTOK_KEY); $client = new Client(['timeout' => 4]); $url = 'https://newtrackapi.zhuishuyun.com/api/tiktokPushInfo'; try { $response = $client->post($url, ['form_params' => $params]); $code = $response->getStatusCode(); $res = $code == 200 ? 'success' : 'fail'; Log::info('TikTokUser .' . $this->type . '. result : ' . $res . ' request params :' . json_encode($params) . ' http code: ' . $response->getStatusCode() . ' return content:' . $response->getBody()->getContents()); } catch (ConnectException $e) { Log::error($e->getMessage()); } } } } }