ssvfdn 3 hónapja
szülő
commit
f036671de4

+ 3 - 1
app/controller/GameStatis.php

@@ -4,6 +4,8 @@ declare (strict_types = 1);
 namespace app\controller;
 
 use app\BaseController;
+use app\model\GameBetGameModel;
+use app\model\GameBetOrderModel;
 use app\model\GameStatisModel;
 use app\common\CommonUtils;
 use app\model\GameModel;
@@ -66,7 +68,7 @@ class GameStatis extends BaseController
                 $item['bet_amount'] = CommonUtils::convertBalance($item['bet_amount'], false);
                 $item['commission_amount'] = CommonUtils::convertBalance($item['game_profit'] * 0.08, false);
                 $item['platform_fee'] = CommonUtils::convertBalance($item['bet_amount'] * 0.08, false);
-                $item['buy_free_bet'] = 0;
+                $item['buy_free_bet'] = $item['buy_free_bet_count'] ?? 0;
             }
             
             return json_success($result, '获取成功');

+ 6 - 4
app/controller/MerchantStatis.php

@@ -4,6 +4,8 @@ declare (strict_types = 1);
 namespace app\controller;
 
 use app\BaseController;
+use app\model\GameBetGameModel;
+use app\model\GameBetOrderModel;
 use app\model\MerchantStatisModel;
 use app\common\CommonUtils;
 use think\facade\Request;
@@ -36,14 +38,14 @@ class MerchantStatis extends BaseController
                 $limit,
                 $filters,                
             );
-            
+
             // 格式化数据
             foreach ($result['list'] as &$item) {
                 $item['game_profit'] = CommonUtils::convertBalance($item['game_profit'], false);
                 $item['bet_amount'] = CommonUtils::convertBalance($item['bet_amount'], false);
                 $item['commission_amount'] = CommonUtils::convertBalance($item['game_profit'] * 0.08, false);
                 $item['platform_fee'] = CommonUtils::convertBalance($item['bet_amount'] * 0.08, false);
-                $item['buy_free_bet'] = 0;
+                $item['buy_free_bet'] = $item['buy_free_bet_count'] ?? 0;
             }
             
             return json_success($result, '获取成功');
@@ -77,7 +79,7 @@ class MerchantStatis extends BaseController
             $result['bet_amount'] = CommonUtils::convertBalance($result['bet_amount'], false);
             $result['commission_amount'] = CommonUtils::convertBalance($result['game_profit'] * 0.08, false);
             $result['platform_fee'] = CommonUtils::convertBalance($result['bet_amount'] * 0.08, false);
-            $result['buy_free_bet'] = 0;
+            $result['buy_free_bet'] = $result['buy_free_bet_count'] ?? 0;
             
             return json_success($result, '获取成功');
         } catch (\Exception $e) {
@@ -101,7 +103,7 @@ class MerchantStatis extends BaseController
             $result['bet_amount'] = CommonUtils::convertBalance($result['bet_amount'], false);
             $result['commission_amount'] = CommonUtils::convertBalance($result['game_profit'] * 0.08, false);
             $result['platform_fee'] = CommonUtils::convertBalance($result['bet_amount'] * 0.08, false);
-            $result['buy_free_bet'] = 0;
+            $result['buy_free_bet'] = $result['buy_free_bet_count'] ?? 0;
             
             return json_success($result, '获取成功');
         } catch (\Exception $e) {

+ 20 - 5
app/model/GameBetGameModel.php

@@ -129,7 +129,7 @@ class GameBetGameModel extends Model
             ->page($page, $limit)
             ->select()
             ->toArray();
-         
+
         // 获取用户ID列表
         $userIds = array_column($list, 'user_id');
         
@@ -306,18 +306,19 @@ class GameBetGameModel extends Model
     public static function getGameDailySummary($merchantId, $filters = [])
     {
         $where = [
-            ['app_id', '=', $merchantId]
+            ['app_id', '=', $merchantId],
+            ['action_type', '=', 1],
         ];
         
         // 时间筛选
         if (!empty($filters['start_time'])) {
             $startTime = strtotime($filters['start_time']);
-            $where[] = ['create_time', '>=', $startTime];
+            $where[] = ['create_time', '>=', $startTime . ' 00:00:00'];
         }
         
         if (!empty($filters['end_time'])) {
             $endTime = strtotime($filters['end_time']);
-            $where[] = ['create_time', '<=', $endTime];
+            $where[] = ['create_time', '<=', $endTime . ' 23:59:59'];
         }
 
         if (!empty($filters['game_id'])) {
@@ -331,6 +332,7 @@ class GameBetGameModel extends Model
                 'COUNT(id) as bet_count',  // 注单数
                 'SUM(bet) as bet_amount',  // 注单金额(下注分数)
                 'SUM(total_win_amount) as game_profit',  // 游戏输赢(金额变化)
+                'SUM(is_buy_game) as buy_free_bet_count'
         ])
         ->where($where)
         ->group('date')
@@ -338,5 +340,18 @@ class GameBetGameModel extends Model
         ->toArray();
 
         return $list;
-    }    
+    }
+
+
+
+    public static function getBuyBetGameList($appId, $filters = []) {
+        $where = [
+            ['app_id', '=', $appId],
+            ['is_buy_game', '=' , 1],
+            ['action_type', '=' , 1]
+        ];
+        $where = array_merge($where, $filters);
+        $query = self::where($where);
+        return $query;
+    }
 }

+ 4 - 3
app/model/GameStatisModel.php

@@ -22,17 +22,18 @@ class GameStatisModel extends Model
     public static function getGameDailyList($merchantId, $page = 1, $limit = 20, $filters = [])
     {
         $where = [
-            ['app_id', '=', $merchantId]
+            ['app_id', '=', $merchantId],
+            ['action_type', '=', 1],
         ];
         
         // 时间筛选
         if (!empty($filters['start_time'])) {
-            $startTime = strtotime($filters['start_time']);
+            $startTime = strtotime($filters['start_time'] . ' 00:00:00');
             $where[] = ['create_time', '>=', $startTime];
         }
         
         if (!empty($filters['end_time'])) {
-            $endTime = strtotime($filters['end_time']);
+            $endTime = strtotime($filters['end_time']. ' 23:59:59');
             $where[] = ['create_time', '<=', $endTime];
         }
 

+ 15 - 11
app/model/MerchantStatisModel.php

@@ -26,20 +26,20 @@ class MerchantStatisModel extends Model
     public static function getMerchantDailyList($merchantId, $page = 1, $limit = 20, $filters = [])
     {
         $where = [
-            ['app_id', '=', $merchantId]
+            ['app_id', '=', $merchantId],
+            ['action_type', '=', 1],
         ];
         
         // 时间筛选
         if (!empty($filters['start_time'])) {
-            $startTime = strtotime($filters['start_time']);
+            $startTime = strtotime($filters['start_time'] . " 00:00:00");
             $where[] = ['create_time', '>=', $startTime];
         }
         
         if (!empty($filters['end_time'])) {
-            $endTime = strtotime($filters['end_time']);
+            $endTime = strtotime($filters['end_time']. " 23:59:59");
             $where[] = ['create_time', '<=', $endTime];
         }
-
         $query = self::where($where);
         // 统计总数
         $total = $query->count();
@@ -52,7 +52,8 @@ class MerchantStatisModel extends Model
                     'SUM(bet) as bet_amount',  // 注单金额(下注分数)
                     'SUM(total_win_amount) as game_profit',  // 游戏输赢(金额变化)
                     'COUNT(DISTINCT game_id) as game_count',  // 游戏数量
-            ])
+                    'SUM(is_buy_game) as buy_free_bet_count'
+        ])
             ->order('date', 'desc')
             ->group('date')
             ->page($page, $limit)
@@ -81,24 +82,26 @@ class MerchantStatisModel extends Model
     public static function getMerchantHistory($merchantId, $filters = [])
     {
         $where = [
-            ['app_id', '=', $merchantId]
+            ['app_id', '=', $merchantId],
         ];
 
         $getWhere = function(string $timeField) use ($where, $filters) {
             // 时间筛选
             if (!empty($filters['start_time'])) {
-                $startTime = strtotime($filters['start_time']);
+                $startTime = strtotime($filters['start_time'] . " 00:00:00");
                 $where[] = [$timeField, '>=', $startTime];
             }
             
             if (!empty($filters['end_time'])) {
-                $endTime = strtotime($filters['end_time']);
+                $endTime = strtotime($filters['end_time'] . " 23:59:59");
                 $where[] = [$timeField, '<=', $endTime];
             }            
             return $where;
         };
-        
-        $query = self::where($getWhere('create_time'));
+        $tempWhere = $getWhere('create_time');
+        $tempWhere[] = ['action_type', '=', 1];
+        $query = self::where($tempWhere);
+
         // 获取列表数据
         $data = $query->field([
                     'AVG(rtp) AS rtp', // 平均RTP
@@ -107,7 +110,8 @@ class MerchantStatisModel extends Model
                     'SUM(bet) as bet_amount',  // 注单金额(下注分数)
                     'SUM(total_win_amount) as game_profit',  // 游戏输赢(金额变化)
                     'COUNT(DISTINCT game_id) as game_count',  // 游戏数量
-            ])
+                    'SUM(is_buy_game) as buy_free_bet_count'
+        ])
             ->find()
             ->toArray();
         // 获取登录用户、注册用户