PC-202304251453\Administrator 5 månader sedan
förälder
incheckning
28c0eb04ad

+ 1 - 2
app/v1/controller/WelcomeController.php

@@ -1,11 +1,10 @@
 <?php
 namespace app\v1\controller;
 
-use app\v1\logic\WelcomeLogic;
+use app\v1\logic\dataReport\WelcomeLogic;
 use plugin\saiadmin\app\cache\UserInfoCache;
 use plugin\saiadmin\basic\BaseController;
 use support\Request;
-use support\Response;
 
 /**
  * wellcome接口管理控制器

+ 1 - 1
app/v1/controller/customer/ReconciliationController.php

@@ -38,7 +38,7 @@ class ReconciliationController extends BaseController
         ['agent_id', ''],
         ['site_id', ''],
         ['auth_id', ''],
-        ['reg_date', ''],
+        ['tdate', ''],
         ['group', ''],
         ['filter', '']
     ]);

+ 7 - 7
app/v1/controller/dataReport/AnalyseController.php

@@ -22,7 +22,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', '']
+            ['tdate', '']
         ]);
         $data = $this->logic->getRegDayDataList($where);
         $data['data'] = $this->logic->trandformListColumn($data['data'], ['game']);
@@ -34,7 +34,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', '']
+            ['tdate', '']
         ]);
         $data = $this->logic->getRegHourDataList($where);
         $data['data'] = $this->logic->trandformListColumn($data['data'], ['game']);
@@ -46,7 +46,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['days', '']
         ]);
         $data = $this->logic->getRetentionDayDataList($where);
@@ -59,7 +59,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['auth_id', ''],
             ['media_id', '']
         ]);
@@ -72,7 +72,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['auth_id', ''],
             ['media_id', '']
         ]);
@@ -85,7 +85,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', '']
+            ['tdate', '']
         ]);
         $data = $this->logic->getIncomeAnalysis($where);
         $data['data'] = $this->logic->trandformListColumn($data['data'], ['game']);
@@ -97,7 +97,7 @@ class AnalyseController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['auth_id', ''],
             ['media_id', ''],
             ['show_type', '1']

+ 7 - 7
app/v1/controller/dataReport/ChannelAnalysisController.php

@@ -23,7 +23,7 @@ class ChannelAnalysisController extends BaseController
             ['agent_id', ''],
             ['site_id', ''],
             ['auth_id', ''],
-            ['reg_date', '']
+            ['tdate', '']
         ]);
         $data = $this->logic->getHourDataList($where);
         $data = $this->logic->trandformListColumn($data, ['agent']);
@@ -40,7 +40,7 @@ class ChannelAnalysisController extends BaseController
             ['agent_id', ''],
             ['site_id', ''],
             ['auth_id', ''],
-            ['reg_date', '']
+            ['tdate', '']
         ]);
         $data = $this->logic->getActiveDataList($where);
         return $this->success($data);
@@ -55,7 +55,7 @@ class ChannelAnalysisController extends BaseController
             ['agent_id', ''],
             ['site_id', ''],
             ['auth_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['group', ''],
             ['filter', '']
         ]);
@@ -68,7 +68,7 @@ class ChannelAnalysisController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['media_id', ''],
             ['agent_id', ''],
             ['agent_name', ''],
@@ -87,7 +87,7 @@ class ChannelAnalysisController extends BaseController
     {
         $where = $request->more([
             ['game_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['media_id', ''],
             ['agent_id', ''],
             ['agent_name', ''],
@@ -108,7 +108,7 @@ class ChannelAnalysisController extends BaseController
             ['auth_id', ''],
             ['agent_id', ''],
             ['site_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['data_type', '']
         ]);
         $resultData = $this->logic->getLtvDataList($where);
@@ -124,7 +124,7 @@ class ChannelAnalysisController extends BaseController
             ['auth_id', ''],
             ['agent_id', ''],
             ['site_id', ''],
-            ['reg_date', ''],
+            ['tdate', ''],
             ['data_type', '']
         ]);
         $resultData = $this->logic->getLtvmDataList($where);

+ 57 - 70
app/v1/logic/dataReport/AnalyseLogic.php

@@ -15,7 +15,7 @@ class AnalyseLogic extends BaseLogic
         $params = $this->searchByAuth($params);
         $whereRaw = $this->getCommonWhereRaw($params);
         $field = "SUM(reg_total) AS reg_total, tdate, game_id";
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $field, 'game_id,tdate');
 
         $data = [];
@@ -40,7 +40,7 @@ class AnalyseLogic extends BaseLogic
         }
 
         // 获取两个注册日期之间的日期列表
-        $dateList = getDateRange($params['reg_date'][0], $params['reg_date'][1]);
+        $dateList = getDateRange($params['tdate'][0], $params['tdate'][1]);
         $columnsData = [
             [
                 'title' => '游戏ID',
@@ -73,29 +73,20 @@ class AnalyseLogic extends BaseLogic
         return $result;
     }
 
-    /*
-     数据总览
-    */
-
-    public function getRegHourDataList($where)
+    // 注册分时
+    public function getRegHourDataList($params)
     {
-        $params = $this->searchByAuth($where);
-
+        $params = $this->searchByAuth($params);
+        $regDate = $params['tdate'];
+        $params['tdate'] = [$params['tdate'], $params['tdate']];
         $field = "SUM(role_create_user) AS role_create_user, tdate,game_id,thour";
-        $regDate = $where['reg_date'];
+
         // 将$regDate转化为年月格式,如202509
         $ym = date('Ym', strtotime($regDate));
-
         $tableName = 'base_total_hour_' . $ym;
-
-        $whereRaw = 'WHERE 1=1';
-        if (!empty($params['game_id'])) {
-            $whereRaw .= " AND game_id IN(" . implode(',', $params['game_id']) . ")";
-        }
-        if (!empty($params['reg_date'])) {
-            $whereRaw .= " AND tdate = '" . $params['reg_date'] . "'";
-        }
+        $whereRaw = $this->getCommonWhereRaw($params);
         $sql = "SELECT {$field} FROM {$tableName} {$whereRaw}  GROUP BY game_id,thour,tdate";
+
         $baseData = Db::connect('db_data_report')->query($sql);
         $data = [];
         foreach ($baseData as &$row) {
@@ -127,28 +118,21 @@ class AnalyseLogic extends BaseLogic
     /*
      数据总览(按月)
     */
-
     public function getRetentionDayDataList($where)
     {
         $params = $this->searchByAuth($where);
         // 构建whereSql
-        $whereRaw = '';
-        if (!empty($params['game_id'])) {
-            $whereRaw .= " AND game_id IN(" . implode(',', $params['game_id']) . ")";
-        }
-        if (!empty($params['reg_date'])) {
-            $whereRaw .= " AND tdate BETWEEN '{$params['reg_date'][0]}' AND '{$params['reg_date'][1]}'";
-        }
+        $whereRaw = $this->getCommonWhereRaw($params);
 
         $data = [];
         $totalRow = ['game_id' => '合计'];
 
 
         $baseField = "SUM(reg_total) AS reg_total, tdate,game_id";
-        $activeField = "SUM(active_total) AS active_total, reg_date,game_id,days";
+        $activeField = "SUM(active_total) AS active_total, reg_date, game_id, days";
 
         // 1. 查询每天的注册数,根据注册时间,游戏
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $baseField, 'game_id,tdate');
         $baseData = array_column($baseData, null, 'tdate');
 
@@ -159,7 +143,7 @@ class AnalyseLogic extends BaseLogic
             $activeWhereSql .= " AND days = {$params['days']}";
         }
 
-        $activeData = $this->generateUnionList('game_active_day', $yearRange, $activeWhereSql, $activeField, 'game_id,reg_date');
+        $activeData = $this->generateUnionList('game_active_day', $yearRange, $activeWhereSql, $activeField, 'game_id, reg_date');
         $activeData = array_column($activeData, null, 'reg_date');
 
         foreach ($baseData as $row) {
@@ -207,7 +191,7 @@ class AnalyseLogic extends BaseLogic
         $totalRow['total'] = getPercent($totalRow['total_active_total'] ?? 0, $totalRow['total_reg_total'] ?? 0);
 
         // 获取两个注册日期之间的日期列表
-        $dateList = getDateRange($where['reg_date'][0], $where['reg_date'][1]);
+        $dateList = getDateRange($where['tdate'][0], $where['tdate'][1]);
         $columnsData = [
             [
                 'title' => '游戏ID',
@@ -257,7 +241,7 @@ class AnalyseLogic extends BaseLogic
       SUM(reg_pay_total) AS reg_pay_total, 
       SUM(old_login_total) AS old_login_total, 
       tdate";
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
 
         $baseData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $field, 'tdate');
 
@@ -270,7 +254,7 @@ class AnalyseLogic extends BaseLogic
 
         $actWhereSql = str_replace("tdate", "reg_date", $whereRaw);
         $actWhereSql .= " AND days = 1";
-        $actData = $this->generateUnionList('game_active_day', $yearRange, $actWhereSql, 'SUM(active_total) AS active_total,reg_date', 'reg_date');
+        $actData = $this->generateUnionList('game_active_day', $yearRange, $actWhereSql, 'SUM(active_total) AS active_total, reg_date', 'reg_date');
         $actData = array_column($actData, null, 'reg_date');
 
         $totalRow = [
@@ -342,7 +326,7 @@ class AnalyseLogic extends BaseLogic
       SUM(reg_pay_total) AS reg_pay_total,
       SUM(old_login_total) AS old_login_total,
       date_format(`tdate`, '%Y-%m') AS mdate";
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
 
         $baseData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $field, 'mdate');
 
@@ -413,10 +397,10 @@ class AnalyseLogic extends BaseLogic
     public function getIncomeAnalysis($where)
     {
         $params = $this->searchByAuth($where);
-        $tdate = $params['reg_date'] ?? date('Y-m-d');
+        $tdate = $params['tdate'] ?? date('Y-m-d');
         $ldate = date('Y-m-d', strtotime($tdate . ' -1 days'));
         $wdate = date('Y-m-d', strtotime($tdate . ' -7 days'));
-        unset($params['reg_date']);
+        unset($params['tdate']);
         $whereRaw = $this->getCommonWhereRaw($params);
         $whereRaw .= " AND tdate IN ('{$tdate}','{$ldate}','{$wdate}')";
 
@@ -514,12 +498,12 @@ class AnalyseLogic extends BaseLogic
         $params = $this->searchByAuth($where);
 
         // 判断不能超过90天查询
-        $days = getDateNum($where['reg_date'][0], $where['reg_date'][1]);
+        $days = getDateNum($where['tdate'][0], $where['tdate'][1]);
         if ($days > 90) {
             throw new ApiException('时间查询范围请勿超过90天');
         }
         $whereParams = $params;
-        unset($whereParams['reg_date']);
+        unset($whereParams['tdate']);
         $whereRaw = $this->getCommonWhereRaw($whereParams);
 
         $whereRaw = str_replace('tdate', 'reg_date', $whereRaw);
@@ -530,45 +514,49 @@ class AnalyseLogic extends BaseLogic
             SUBSTRING(reg_date,1,10) as dimension, 
             COUNT(DISTINCT uid) as pay_num 
             FROM sdk_order_success
-            WHERE {$whereRaw} AND reg_date BETWEEN '{$params['reg_date'][0]} 00:00:00' AND '{$params['reg_date'][1]} 23:59:59'
+            WHERE {$whereRaw} AND reg_date BETWEEN '{$params['tdate'][0]} 00:00:00' AND '{$params['tdate'][1]} 23:59:59'
                 GROUP BY 
                 dimension
         ");
+
         $payDataMap = array_column($payData, null, 'dimension');
 
         // 2. 计算留存付费的人数
         $sqlArr = [];
-        $medate = date("Y-m-d", strtotime("+ 60 day", strtotime($params['reg_date'][1])));
-        $monthRange = getMonthRange($params['reg_date'][0], $medate);
+        $medate = date("Y-m-d", strtotime("+ 60 day", strtotime($params['tdate'][1])));
+        $monthRange = getMonthRange($params['tdate'][0], $medate);
+        $newMonth = date("Ym");
         foreach ($monthRange as $month) {
+            if($month>$newMonth){
+                break;
+            }
             $tableName = 'sdk_login_log_' . $month;
             $sqlArr[] = "
-          SELECT  
-            CONCAT(FROM_UNIXTIME(reg_time, '%Y-%m-%d'), '|', TIMESTAMPDIFF(DAY, FROM_UNIXTIME(reg_time), FROM_UNIXTIME(login_time))) AS dimension,
-            FROM_UNIXTIME(reg_time, '%Y-%m-%d') AS reg_date,
-            TIMESTAMPDIFF(DAY, FROM_UNIXTIME(reg_time), FROM_UNIXTIME(login_time)) AS day_num,
-            COUNT(DISTINCT a.user_name) AS remain_num
-          FROM {$tableName} AS a
-            INNER JOIN (
-              SELECT 
-                DISTINCT user_name
-              FROM sdk_order_success
-               WHERE 1=1
-                {$whereRaw} AND reg_date BETWEEN '{$params['reg_date'][0]} 00:00:00' AND '{$params['reg_date'][1]} 23:59:59'
-            )  AS b ON a.user_name = b.user_name
-           WHERE 1=1
-              {$whereRaw} AND reg_time BETWEEN " . strtotime($params['reg_date'][0] . " 00:00:00") . " AND " . strtotime($params['reg_date'][1] . " 23:59:59") . "
-          GROUP BY dimension
-        ";
+              SELECT  
+                CONCAT(FROM_UNIXTIME(reg_time, '%Y-%m-%d'), '|', TIMESTAMPDIFF(DAY, FROM_UNIXTIME(reg_time), FROM_UNIXTIME(login_time))) AS dimension,
+                FROM_UNIXTIME(reg_time, '%Y-%m-%d') AS reg_date,
+                TIMESTAMPDIFF(DAY, FROM_UNIXTIME(reg_time), FROM_UNIXTIME(login_time)) AS day_num,
+                COUNT(DISTINCT a.user_name) AS remain_num
+              FROM {$tableName} AS a
+                INNER JOIN (
+                  SELECT 
+                    DISTINCT user_name
+                  FROM sdk_order_success
+                   WHERE
+                    {$whereRaw} AND reg_date BETWEEN '{$params['tdate'][0]} 00:00:00' AND '{$params['tdate'][1]} 23:59:59'
+                )  AS b ON a.user_name = b.user_name
+               WHERE
+                  {$whereRaw} AND reg_time BETWEEN " . strtotime($params['tdate'][0] . " 00:00:00") . " AND " . strtotime($params['tdate'][1] . " 23:59:59") . "
+              GROUP BY dimension
+            ";
         }
 
         $sql = implode(" UNION ALL ", $sqlArr);
-
-
+        echo $sql . "\n";
         $remainData = Db::connect('db_game_log')->query($sql);
         $remainData = $remainData ? array_column($remainData, null, "dimension") : [];
 
-        $regDateRange = getDateRange($params['reg_date'][0], $params['reg_date'][1]);
+        $regDateRange = getDateRange($params['tdate'][0], $params['tdate'][1]);
         $remainRange = [];
         for ($i = 2; $i <= 30; $i++) {
             $remainRange[] = $i;
@@ -645,7 +633,7 @@ class AnalyseLogic extends BaseLogic
         ";
 
             // 获取对比日期1的数据, 注册、登录、充值
-            $params['reg_date'] = $params['compare_date1'];
+            $params['tdate'] = $params['compare_date1'];
             $whereRaw1 = $this->getCommonWhereRaw($params);
             $yearRange = getYearRange($params['compare_date1'][0], $params['compare_date1'][1]);
             $baseData1 = $this->generateUnionList('base_total_day', $yearRange, $whereRaw1, $field, 'tdate');
@@ -658,7 +646,7 @@ class AnalyseLogic extends BaseLogic
 
 
             // 获取对比日期2的数据, 注册、登录、充值
-            $params['reg_date'] = $params['compare_date2'];
+            $params['tdate'] = $params['compare_date2'];
             $whereRaw2 = $this->getCommonWhereRaw($params);
             $yearRange = getYearRange($params['compare_date2'][0], $params['compare_date2'][1]);
             $baseData2 = $this->generateUnionList('base_total_day', $yearRange, $whereRaw2, $field, 'tdate');
@@ -672,13 +660,13 @@ class AnalyseLogic extends BaseLogic
 
 
             // 获取消耗数据1
-            $params['reg_date'] = $params['compare_date1'];
+            $params['tdate'] = $params['compare_date1'];
             $costWhereSql1 = $this->getCommonWhereRaw($params);
 
             $costData1 = Db::connect('db_advert')->query("
           SELECT SUM(money) as money, tdate
           FROM media_cost
-          WHERE 1=1 {$costWhereSql1}
+          WHERE {$costWhereSql1}
           GROUP BY tdate
         ");
 
@@ -688,12 +676,12 @@ class AnalyseLogic extends BaseLogic
 
 
             // 获取消耗数据2
-            $params['reg_date'] = $params['compare_date2'];
+            $params['tdate'] = $params['compare_date2'];
             $costWhereSql2 = $this->getCommonWhereRaw($params);
             $costData2 = Db::connect('db_advert')->query("
           SELECT SUM(money) as money, tdate
           FROM media_cost
-          WHERE 1=1 {$costWhereSql2}
+          WHERE {$costWhereSql2}
           GROUP BY tdate
         ");
 
@@ -727,7 +715,6 @@ class AnalyseLogic extends BaseLogic
             }
 
             // 格式化x轴的时间
-            $forData = [];
             $days1 = [];
             $days2 = [];
             if (count($data1['days']) > count($data2['days'])) {
@@ -774,7 +761,7 @@ class AnalyseLogic extends BaseLogic
         ";
 
             // 获取对比日期1的数据, 注册、登录、充值
-            $params['reg_date'] = $params['compare_date1_date'];
+            $params['tdate'] = $params['compare_date1_date'];
             $whereRaw1 = $this->getCommonWhereRaw($params);
             $monthRange = getMonthRange($params['compare_date1'][0], $params['compare_date1'][1]);
             $baseData1 = $this->generateUnionList('base_total_hour', $monthRange, $whereRaw1, $field, 'thour');
@@ -787,7 +774,7 @@ class AnalyseLogic extends BaseLogic
             }
 
             // 获取对比日期2的数据, 注册、登录、充值
-            $params['reg_date'] = $params['compare_date2_date'];
+            $params['tdate'] = $params['compare_date2_date'];
             $whereRaw2 = $this->getCommonWhereRaw($params);
             $monthRange2 = getMonthRange($params['compare_date2'][0], $params['compare_date2'][1]);
             $baseData2 = $this->generateUnionList('base_total_hour', $monthRange2, $whereRaw2, $field, 'thour');

+ 19 - 21
app/v1/logic/dataReport/ChannelAnalysisLogic.php

@@ -29,7 +29,7 @@ class ChannelAnalysisLogic extends BaseLogic
         $whereRaw = $this->getCommonWhereRaw($params);
     
         // 根据日期,连表查询
-        $monthRange = getMonthRange($params['reg_date'][0], $params['reg_date'][1]);
+        $monthRange = getMonthRange($params['tdate'][0], $params['tdate'][1]);
         $sqlParts = [];
         foreach ($monthRange as $month) {
             $tableName = 'base_total_hour_' . $month;
@@ -115,7 +115,7 @@ class ChannelAnalysisLogic extends BaseLogic
         $whereRaw = $this->getCommonWhereRaw($params);
 
         // 1. 注册数据:$regData = 按照日期,获取每日的 注册数【reg_total】分组,base_total_day_2025
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseTotalDaySqlParts = [];
         foreach ($yearRange as $year) {
             $tableName = 'base_total_day_' . $year;
@@ -128,9 +128,7 @@ class ChannelAnalysisLogic extends BaseLogic
 
        
         // 2. 活跃数据:$actData = 按照日期,获取每日的 活跃数 SUM(【active_total】) 活跃天数 【days】, 分组 【reg_date,days】,game_active_day_2025
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
         $gameActiveDaySqlParts = [];
-
         foreach ($yearRange as $year) {
             $tableName = 'game_active_day_' . $year;
             $gameActiveDaySqlParts[] = "SELECT * FROM {$tableName} WHERE {$whereRaw}";
@@ -153,13 +151,13 @@ class ChannelAnalysisLogic extends BaseLogic
                 continue;
             }
             // 注册日期
-            $reg_date = $r['tdate'];
-            $list[$reg_date]['tdate'] = $reg_date;
+            $regDate = $r['tdate'];
+            $list[$regDate]['tdate'] = $regDate;
             // 注册数
-            $list[$reg_date]['reg'] = $r['reg_total'];
+            $list[$regDate]['reg'] = $r['reg_total'];
 
-            // 从注册日期 ($reg_date) 到当前日期的天数
-            $days = (strtotime($tdate) - strtotime($reg_date)) / 86400;
+            // 从注册日期 ($regDate) 到当前日期的天数
+            $days = (strtotime($tdate) - strtotime($regDate)) / 86400;
             for ($i = 1; $i <= $days; $i++) {
                 $dayKey = 'd' . $i;
                 // d1...dn的reg = 记录按日的注册数
@@ -171,9 +169,9 @@ class ChannelAnalysisLogic extends BaseLogic
         // 遍历每日的活跃数
         foreach ($actData as $r) {
             // 注册日期
-            $reg_date = $r['tdate'];
+            $regDate = $r['tdate'];
             // 如果日期,没有注册数/活跃数, 则跳过
-            if (!$list[$reg_date]['reg'] || !$r['active']) {
+            if (!$list[$regDate]['reg'] || !$r['active']) {
                 continue;
             }
             // 如果活跃天数超过30天,并且活跃数不在[45,60,90,119,120]数组里面, 则跳过
@@ -183,7 +181,7 @@ class ChannelAnalysisLogic extends BaseLogic
             // 活跃天数的key
             $dayKey = 'd' . $r['days'];
             // N日留存率 = 第N天活跃数 ÷ 注册日注册数 × 100%。
-            $list[$reg_date][$dayKey] = getPercent($r['active'], $list[$reg_date]['reg']);
+            $list[$regDate][$dayKey] = getPercent($r['active'], $list[$regDate]['reg']);
             // d1...dn的reg = 记录按日的活跃数
             $totalData[$dayKey]['active'] = !empty($totalData[$dayKey]['active']) ? $totalData[$dayKey]['active'] + $r['active'] : $r['active'];
         }
@@ -232,7 +230,7 @@ class ChannelAnalysisLogic extends BaseLogic
     {
         $params = $this->searchByAuth($where);
         // 忽略 0 投入
-        $igz = !empty($params['filter']) && is_array($params['filter']) && in_array('igz', $params['filter']);
+        $igz = !empty($params['igz']) ? $params['igz'] : '';
         $group = !empty($params['group']) ? $params['group'] : '';
 
         // 如果分组按照 游戏组ID||游戏组
@@ -274,7 +272,7 @@ class ChannelAnalysisLogic extends BaseLogic
             media_id
         ";
         // 2. 获取基础报表数据,兼容跨年
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $totalDayField, $type);
 
         // 3. 获取活跃数
@@ -457,7 +455,7 @@ class ChannelAnalysisLogic extends BaseLogic
     public function computedHb7days($where, $type)
     {
         $payDataAll = [];
-        $dateRange = getDateRange($where['reg_date'][0], $where['reg_date'][1]);
+        $dateRange = getDateRange($where['tdate'][0], $where['tdate'][1]);
         foreach ($dateRange as $regDate) {
 
             $field = "
@@ -470,7 +468,7 @@ class ChannelAnalysisLogic extends BaseLogic
             }
 
             $wherePay = $where;
-            unset($wherePay['reg_date']);
+            unset($wherePay['tdate']);
 
             $whereRaw = $this->getCommonWhereRaw($wherePay);
             $whereRaw = "{$whereRaw} AND reg_date = '{$regDate}' AND pay_date = '{$eDate}'";
@@ -501,7 +499,7 @@ class ChannelAnalysisLogic extends BaseLogic
 
         // 2. base_total_day_ 获取注册数(reg_total)、注册付费金额(reg_pay_total)、
         $baseTotalField = " SUM(reg_total) AS reg_total, SUM(reg_pay_total) AS reg_pay_total";
-        $yearRange = getYearRange($where['reg_date'][0], $where['reg_date'][1]);
+        $yearRange = getYearRange($where['tdate'][0], $where['tdate'][1]);
         $baseTotalDayData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $baseTotalField);
 
         $regTotal = $baseTotalDayData[0]['reg_total'] ?? 0;
@@ -576,7 +574,7 @@ class ChannelAnalysisLogic extends BaseLogic
             media_id,
             agent_id,
             auth_id";
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseTotalDayData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, $baseTotalField, $groupBy);
 
         // active 活跃数,次留人数
@@ -707,7 +705,7 @@ class ChannelAnalysisLogic extends BaseLogic
             SUM(pay_total) AS pay_total,
             tdate";
         $baseWhereRaw = $whereRaw;
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseTotalDayData = $this->generateUnionList('base_total_day', $yearRange, $baseWhereRaw, $baseTotalField, 'tdate');
         $baseTotalDayData = array_column($baseTotalDayData, null, 'tdate');
 
@@ -716,7 +714,7 @@ class ChannelAnalysisLogic extends BaseLogic
         $activeWhereRaw = str_replace('tdate', 'reg_date', $activeWhereRaw);
         $activeField = "
             sum(active_total) as active, 
-            reg_date astdate";
+            reg_date as tdate";
         $activeData = $this->generateUnionList('game_active_day', $yearRange, $activeWhereRaw, $activeField, 'reg_date');
         $activeData = array_column($activeData, 'active', 'tdate');
 
@@ -809,7 +807,7 @@ class ChannelAnalysisLogic extends BaseLogic
         $costData = array_column($costData, 'cost', 'tdate');
 
         // 2. 获取注册数
-        $yearRange = getYearRange($params['reg_date'][0], $params['reg_date'][1]);
+        $yearRange = getYearRange($params['tdate'][0], $params['tdate'][1]);
         $baseData = $this->generateUnionList('base_total_day', $yearRange, $whereRaw, "SUM(reg_total) as reg_total, tdate", 'tdate');
         $baseData = array_column($baseData, null, 'tdate');
 

+ 1 - 1
app/v1/logic/WelcomeLogic.php → app/v1/logic/dataReport/WelcomeLogic.php

@@ -1,6 +1,6 @@
 <?php
 
-namespace app\v1\logic;
+namespace app\v1\logic\dataReport;
 
 use plugin\saiadmin\basic\BaseLogic;
 use support\think\Db;