Explorar o código

Merge branch 'dev' of http://git.range8.cn/youyou/dms-api into dev

PC-202304251453\Administrator hai 6 meses
pai
achega
0b2df0d24b

+ 22 - 0
app/v1/controller/advert/AgentSiteController.php

@@ -10,6 +10,7 @@ use app\v1\logic\advert\AgentListLogic;
 use plugin\saiadmin\basic\BaseController;
 use app\v1\logic\advert\AgentSiteLogic;
 use app\v1\logic\advert\MediaListLogic;
+use app\v1\logic\center\GameLogic;
 use app\v1\validate\advert\AgentSiteValidate;
 use plugin\saiadmin\app\logic\system\SystemUserLogic;
 use support\Request;
@@ -23,6 +24,7 @@ class AgentSiteController extends BaseController
     protected $systemUserLogic;
     protected $agentListLogic;
     protected $mediaListLogic;
+    protected $gameLogic;
     /**
      * 构造函数
      */
@@ -34,6 +36,7 @@ class AgentSiteController extends BaseController
         $this->systemUserLogic = new SystemUserLogic();
         $this->agentListLogic = new AgentListLogic();
         $this->mediaListLogic = new MediaListLogic();
+        $this->gameLogic = new GameLogic();
     }
 
     /**
@@ -96,5 +99,24 @@ class AgentSiteController extends BaseController
         return $this->success($result);
     }
 
+    /**
+     * 联调生成参数
+     */
+    public function linkDebugGenerateParams(Request $request): Response
+    {
+        $data = $request->more([
+            ['game_id', ''],
+            ['agent_id', ''],
+            ['site_id', ''],
+            ['media_id', ''],
+        ]);
+        // 请求平台游戏详情
+        $game = $this->gameLogic->read($data['game_id']);
+        $result = $this->logic->linkDebugGenerateParams($game,$data);
+        return $this->success($result);
+
+    }
+
+
 
 }

+ 48 - 0
app/v1/logic/advert/AgentSiteLogic.php

@@ -23,12 +23,14 @@ use support\think\Db;
  */
 class AgentSiteLogic extends BaseLogic
 {
+    protected $mediaListLogic;
     /**
      * 构造函数
      */
     public function __construct()
     {
         $this->model = new AgentSite();
+        $this->mediaListLogic = new MediaListLogic();
     }
 
     /**
@@ -292,4 +294,50 @@ class AgentSiteLogic extends BaseLogic
             } 
         return ['message' => "分包推送".$succ.",转化推送成功".$succ2.",失败".$fail2];
     }
+
+    /**
+     * 联调生成参数
+     */
+    public function linkDebugGenerateParams($game,$data)
+    {
+
+        $base_url = 'https://tj.yunfanyouxi.com/api/';
+
+        // 广告位信息:游戏ID_渠道ID_广告位ID
+        $site_info = $game['id'].'_'.$data['agent_id'].'_'.$data['site_id'];
+
+        // appid
+        $appid = $game['ios_appid'];
+
+        // 包名
+        $package_name = $game['package_name'];
+
+        // 点击监测链接
+        $click_url = '';
+
+        // 根据媒体ID读取监测链接
+        $media_info = $this->mediaListLogic->read($data['media_id']);
+        if($media_info && $game['os'] ==1){
+            $click_url = $media_info['andurl'];
+            $click_url = str_replace('__SITE__', $site_info, $click_url);
+        } else if($media_info && $game['os'] ==2){
+            $click_url = $media_info['iosurl'];
+            $click_url = str_replace('__SITE__', $site_info, $click_url);
+        } else if($media_info && ($game['os'] ==3 || $game['os'] ==4)){
+            $click_url = $media_info['xyxurl'];
+            $click_url = str_replace('__YFINFO__', $site_info, $click_url);
+        }
+
+        // 小游戏路径参数
+        $wxgamepro ="?media_id=".$site_info."&ext_channel=".$media_info['channel_name'].$media_info['appleturl'];
+
+
+        return [
+            'site_info' => $site_info,
+            'appid' => $appid,
+            'package_name' => $package_name,
+            'click_url' => $base_url.$click_url,
+            'wxgamepro' => $wxgamepro,
+        ];
+    }
 }