Преглед изворни кода

Merge branch 'rcht' into raccount

xiaoyu пре 2 година
родитељ
комит
23d26ad37c
3 измењених фајлова са 57 додато и 1 уклоњено
  1. 1 0
      docker/compose/xiaoyu/admin/docker-compose.yml
  2. 6 1
      vapi/control/retail.php
  3. 50 0
      vapi/control/sapi.php

+ 1 - 0
docker/compose/xiaoyu/admin/docker-compose.yml

@@ -10,6 +10,7 @@ services:
       - ../conf/etc/localtime:/etc/localtime:ro
       - ../conf/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
       - ../../../../data/upload:/var/www/html/data/upload
+      - ../../../../chinatelecom:/var/www/html/chinatelecom
     container_name: "panda-nginx"
     command: [nginx,'-g','daemon off;']
 

+ 6 - 1
vapi/control/retail.php

@@ -1,4 +1,5 @@
 <?php
+require_once(BASE_ROOT_PATH . '/vapi/control/sapi.php');
 
 class retailControl extends vbaseControl
 {
@@ -51,6 +52,10 @@ class retailControl extends vbaseControl
 
         $resp = Model('')->table('retail')->insert($params);
         if ($resp) {
+            $sapi = new sapi();
+            $body = ['pageId' => $_POST['pageId'], 'tid' => $_POST['tid'], 'lbid' => $_POST['lbid']];
+            $resp = $sapi->send($body);
+            Log::record("sapi result {$resp}", Log::DEBUG);
             return self::outsuccess([]);
         } else {
             return self::outerr(301, "录入信息失败.");
@@ -63,4 +68,4 @@ class retailControl extends vbaseControl
             . sprintf('%010d', time())
             . sprintf('%06d', (float)microtime() * 1000000);
     }
-}
+}

+ 50 - 0
vapi/control/sapi.php

@@ -0,0 +1,50 @@
+<?php
+
+require_once(BASE_CORE_PATH . '/framework/function/http.php');
+
+class sapi
+{
+    private $url = 'https://sapi.ads.oppomobile.com/v1/clue/sendData';
+    private $ownerId = '1000178033';
+    private $API_ID = 'cbbf0a225cd44cba81b9b6e093ded0a2';
+    private $APIKEY = '0d10124566ff41c393c0c418a3ae147a';
+
+    private function create_token()
+    {
+        $time = time();
+        $sign = sha1($this->API_ID .$this->APIKEY . $time);
+        return base64_encode($this->ownerId. ','. $this->API_ID. ',' .$time. ',' . $sign);
+    }
+
+    public function send($body)
+    {
+        $params['pageId'] = $body['pageId'];
+        $params['ownerId'] = $this->ownerId;
+        $params['ip'] = $_SERVER['REMOTE_ADDR'];
+        $params['tid'] = $body['tid'];
+        $params['lbid'] = $body['lbid'];
+        $params['transformType'] = 101;
+
+        $token = $this->create_token();
+        $header = [
+            'Content-Type: application/json',
+            "Authorization:Bearer {$token}"
+        ];
+        $params = json_encode($params);
+
+        $resp = http_post_data($this->url, $params, $header, $net_errno);
+        if (empty($resp)) {
+            Log::record("sapi send neterr {$net_errno}", Log::ERR);
+            return false;
+        } else {
+            Log::record($resp, Log::DEBUG);
+            $resp = json_decode($resp, true);
+            if ($resp['code'] === 0) {
+                return true;
+            } else {
+                Log::record("sapi send err {$resp['msg']}", Log::ERR);
+                return false;
+            }
+        }
+    }
+}