Kaynağa Gözat

提交统计

lip 4 gün önce
ebeveyn
işleme
29a0ec5afd

+ 157 - 22
app/Http/Controllers/admin/Home.php

@@ -7,7 +7,7 @@ use App\Http\Controllers\Controller;
 use App\Models\PaymentOrder;
 use App\Models\Recharge;
 use App\Models\User;
-use App\Services\PaymentOrderService;
+use App\Models\BalanceLog;
 use Illuminate\Validation\ValidationException;
 use Exception;
 use Carbon\Carbon;
@@ -29,88 +29,223 @@ class Home extends Controller
             if (empty($end)) $end = date('Y-m-d');
             if (empty($start)) $start = date('Y-m-d');
             $end = Carbon::createFromFormat('Y-m-d', $end)->addDay()->format('Y-m-d');
+            $today = date('Y-m-d');
+
+            //投注统计
+            $query = BalanceLog::query();
+            $query->where('type', 1)->where('change_type', 'like', '%投注');
+            $query1 = clone $query;
+            $bet['amount'] = (float)$query1->whereBetween('created_at', [$start, $end])->sum('amount');//投注金额
+            $query1 = clone $query;
+            $bet['today_amount'] = (float)$query1->whereBetween('created_at', [$today, $end])->sum('amount');//今日投注金额
+
+            //投注退款统计
+            $query = BalanceLog::query();
+            $query->where('type', 1)->where('change_type', 'like', '%退款');
+            $query1 = clone $query;
+            $bet['refund_amount'] = (float)$query1->whereBetween('created_at', [$start, $end])->sum('amount');//投注退款金额
+            $query1 = clone $query;
+            $bet['today_refund_amount'] = (float)$query1->whereBetween('created_at', [$today, $end])->sum('amount');//今日投注退款金额
+
+            //投注中奖统计
+            $query = BalanceLog::query();
+            $query->where('type', 1)->where('change_type', 'like', '%中奖');
+            $query1 = clone $query;
+            $bet['win_amount'] = (float)$query1->whereBetween('created_at', [$start, $end])->sum('amount');//投注中奖金额
+            $query1 = clone $query;
+            $bet['today_win_amount'] = (float)$query1->whereBetween('created_at', [$today, $end])->sum('amount');//今日投注中奖金额
+
+            //余额宝统计
+            $query = BalanceLog::query();
+            $yuebao['in_amount'] = (float)$query->where('change_type', '余额宝转入')->whereBetween('created_at', [$start, $end])->sum('amount');//余额宝转入金额
+            $yuebao['today_in_amount'] = (float)$query->where('change_type', '余额宝转入')->whereBetween('created_at', [$today, $end])->sum('amount');//今日余额宝转入金额
+
+            $yuebao['out_amount'] = (float)$query->where('change_type', '余额宝转出')->whereBetween('created_at', [$start, $end])->sum('amount');//余额宝转出金额
+            $yuebao['today_out_amount'] = (float)$query->where('change_type', '余额宝转出')->whereBetween('created_at', [$today, $end])->sum('amount');//今日余额宝转出金额
+            
+            $yuebao['interest_amount'] = (float)$query->where('change_type', '余额宝利息')->whereBetween('created_at', [$start, $end])->sum('amount');//余额宝利息
+            $yuebao['today_interest_amount'] = (float)$query->where('change_type', '余额宝利息')->whereBetween('created_at', [$today, $end])->sum('amount');//今日余额宝利息
+
+            //老用户回归返彩金额
+            $activity['user_return'] = (float)$query->where('change_type', '老用户回归')->whereBetween('created_at', [$start, $end])->sum('amount');//老用户回归返彩金额
+            $activity['today_user_return'] = (float)$query->where('change_type', '老用户回归')->whereBetween('created_at', [$today, $end])->sum('amount');//今日老用户回归返彩金额
+
+            //即充即送返彩金额
+            $activity['recharge_frozen'] = (float)$query->where('change_type', '即充即送')->whereBetween('created_at', [$start, $end])->sum('amount');//即充即送返彩金额
+            $activity['today_recharge_frozen'] = (float)$query->where('change_type', '即充即送')->whereBetween('created_at', [$today, $end])->sum('amount');//今日即充即送返彩金额
+
+            //充值返现金额
+            $activity['recharge_amount'] = (float)$query->where('change_type', '充值返现')->whereBetween('created_at', [$start, $end])->sum('amount');//充值返现金额
+            $activity['today_recharge_amount'] = (float)$query->where('change_type', '充值返现')->whereBetween('created_at', [$today, $end])->sum('amount');//今日充值返现金额
+
+            //流水解冻金额
+            $activity['unfreeze_amount'] = (float)$query->where('change_type', '流水解冻')->whereBetween('created_at', [$start, $end])->sum('amount');//流水解冻金额
+            $activity['today_unfreeze_amount'] = (float)$query->where('change_type', '流水解冻')->whereBetween('created_at', [$today, $end])->sum('amount');//今日流水解冻金额
 
             //新增会员统计
-            $query = User::query();
-            $query->where('from','<>',2)->whereBetween('created_at', [$start, $end]);
-            $totalUser = (float)$query->count('id');
+            $query = User::where('from','<>',2);
+            $totalUser = (float)$query->whereBetween('created_at', [$start, $end])->count('id');
+            $todayUser = (float)$query->whereBetween('created_at', [$today, $end])->count('id');//今日新增会员
             
+            //第三方提现统计(RMB)
             $query = PaymentOrder::query();
             $query->whereBetween('created_at', [$start, $end]);
             $query1 = clone $query;
             $totalAmount = (float)$query1->where('type', 2)->sum('amount');
+            $query1 = clone $query;
+            $totalPending = (float)$query1->where('type', 2)->where('status', 0)->sum('amount');//待处理
+            $query1 = clone $query;
+            $totalProcessing = (float)$query1->where('type', 2)->where('status', 1)->sum('amount');//处理中
+            $query1 = clone $query;
+            $totalSuccess = (float)$query1->where('type', 2)->where('status', 2)->sum('amount');//成功
+            $query1 = clone $query;
+            $totalFail = (float)$query1->where('type', 2)->where('status', 3)->sum('amount'); //  失败
 
-
+            
+            //第三方提现统计(RMB)今日
+            $query = PaymentOrder::query();
+            $query->whereBetween('created_at', [$today, $end]);
+            $query1 = clone $query;
+            $todayAmount = (float)$query1->where('type', 2)->sum('amount');
             $query1 = clone $query;
-            $totalPending = (float)$query1->where('type', 2)->where('status', 0)->sum('amount');
+            $todayPending = (float)$query1->where('type', 2)->where('status', 0)->sum('amount');//待处理
             $query1 = clone $query;
-            $totalProcessing = (float)$query1->where('type', 2)->where('status', 1)->sum('amount');
+            $todayProcessing = (float)$query1->where('type', 2)->where('status', 1)->sum('amount');//处理中
             $query1 = clone $query;
-            $totalSuccess = (float)$query1->where('type', 2)->where('status', 2)->sum('amount');
+            $todaySuccess = (float)$query1->where('type', 2)->where('status', 2)->sum('amount');//成功
             $query1 = clone $query;
-            $totalFail = (float)$query1->where('type', 2)->where('status', 3)->sum('amount');
+            $todayFail = (float)$query1->where('type', 2)->where('status', 3)->sum('amount'); //  失败
 
 
+            //第三方充值统计(RMB)
             $query1 = clone $query;
-            $rechargeRmbTotalAmount = (float)$query1->where('type', 1)->sum('amount');
+            $rechargeRmbTotalAmount = (float)$query1->where('type', 1)->sum('amount');//总金额
             $query1 = clone $query;
-            $rechargeRmbTotalPending = (float)$query1->where('type', 1)->where('status', 0)->sum('amount');
+            $rechargeRmbTotalPending = (float)$query1->where('type', 1)->where('status', 0)->sum('amount');//待处理
             $query1 = clone $query;
-            $rechargeRmbTotalProcessing = (float)$query1->where('type', 1)->where('status', 1)->sum('amount');
+            $rechargeRmbTotalProcessing = (float)$query1->where('type', 1)->where('status', 1)->sum('amount');//处理中
             $query1 = clone $query;
-            $rechargeRmbTotalSuccess = (float)$query1->where('type', 1)->where('status', 2)->sum('amount');
+            $rechargeRmbTotalSuccess = (float)$query1->where('type', 1)->where('status', 2)->sum('amount');//成功
             $query1 = clone $query;
-            $rechargeRmbTotalFail = (float)$query1->where('type', 1)->where('status', 3)->sum('amount');
+            $rechargeRmbTotalFail = (float)$query1->where('type', 1)->where('status', 3)->sum('amount');//失败
 
+            
+            //第三方充值统计(RMB)今日
+            $query1 = clone $query;
+            $rechargeRmbTodayAmount = (float)$query1->where('type', 1)->sum('amount');//总金额
+            $query1 = clone $query;
+            $rechargeRmbTodayPending = (float)$query1->where('type', 1)->where('status', 0)->sum('amount');//待处理
+            $query1 = clone $query;
+            $rechargeRmbTodayProcessing = (float)$query1->where('type', 1)->where('status', 1)->sum('amount');//处理中
+            $query1 = clone $query;
+            $rechargeRmbTodaySuccess = (float)$query1->where('type', 1)->where('status', 2)->sum('amount');//成功
+            $query1 = clone $query;
+            $rechargeRmbTodayFail = (float)$query1->where('type', 1)->where('status', 3)->sum('amount');//失败
 
+            //USDT提现统计
             $query = Withdraw::query();
             $query->whereBetween('created_at', [$start, $end]);
             $query1 = clone $query;
-            $usdTotalAmount = (float)$query1->sum('amount');
+            $usdTotalAmount = (float)$query1->sum('amount');//总金额
+            $query1 = clone $query;
+            $usdTotalSuccess = (float)$query1->where('status', 1)->sum('amount');//成功
+            $query1 = clone $query;
+            $usdTotalFail = (float)$query1->where('status', 2)->sum('amount');//失败
+            
+            //USDT提现统计(今日)
+            $query = Withdraw::query();
+            $query->whereBetween('created_at', [$today, $end]);
+            $query1 = clone $query;
+            $usdTodayAmount = (float)$query1->sum('amount');//总金额
+            $query1 = clone $query;
+            $usdTodaySuccess = (float)$query1->where('status', 1)->sum('amount');//成功
+            $query1 = clone $query;
+            $usdTodayFail = (float)$query1->where('status', 2)->sum('amount');//失败
+            
+            //USDT提现统计(今日)
+            $query = Withdraw::query();
+            $query->whereBetween('created_at', [$today, $end]);
+            $query1 = clone $query;
+            $usdTodayAmount = (float)$query1->sum('amount');//总金额
             $query1 = clone $query;
-            $usdTotalSuccess = (float)$query1->where('status', 1)->sum('amount');
+            $usdTodaySuccess = (float)$query1->where('status', 1)->sum('amount');//成功
             $query1 = clone $query;
-            $usdTotalFail = (float)$query1->where('status', 2)->sum('amount');
+            $usdTodayFail = (float)$query1->where('status', 2)->sum('amount');//失败
 
 
+            //USDT充值统计
             $query = Recharge::query();
             $query->whereBetween('created_at', [$start, $end]);
             $query1 = clone $query;
-            $rechargeTotalAmount = (float)$query1->sum('amount');
+            $rechargeTotalAmount = (float)$query1->sum('amount');//总充值
+            $query1 = clone $query;
+            $rechargeTotalSuccess = (float)$query1->where('status', 1)->sum('amount');//成功
+            $query1 = clone $query;
+            $rechargeTotalFail = (float)$query1->where('status', 2)->sum('amount');//失败
+
+            //USDT充值(今日)
+            $query = Recharge::query();
+            $query->whereBetween('created_at', [$today, $end]);
+            $query1 = clone $query;
+            $rechargeTodayAmount = (float)$query1->sum('amount');//总充值
             $query1 = clone $query;
-            $rechargeTotalSuccess = (float)$query1->where('status', 1)->sum('amount');
+            $rechargeTodaySuccess = (float)$query1->where('status', 1)->sum('amount');//成功
             $query1 = clone $query;
-            $rechargeTotalFail = (float)$query1->where('status', 2)->sum('amount');
+            $rechargeTodayFail = (float)$query1->where('status', 2)->sum('amount');//失败
 
             $result = [
                 'start' => $start,
                 'end' => $end,
+                'bet' => $bet,//投注相关的
+                'activity' => $activity,//活动相关的
+                'yuebao' => $yuebao,//余额宝相关的
                 'recharge_usd' => [
                     'total_amount' => $rechargeTotalAmount,
                     'total_success' => $rechargeTotalSuccess,
                     'total_fail' => $rechargeTotalFail,
+
+                    'today_amount' => $rechargeTodayAmount,
+                    'today_success' => $rechargeTodaySuccess,
+                    'today_fail' => $rechargeTodayFail,
                 ],
                 'recharge_rmb' => [
                     'total_amount' => $rechargeRmbTotalAmount,
                     'total_success' => $rechargeRmbTotalSuccess,
                     'total_fail' => $rechargeRmbTotalFail,
                     'total_processing' => $rechargeRmbTotalProcessing,
-                    'total_pending' => $rechargeRmbTotalPending
+                    'total_pending' => $rechargeRmbTotalPending,
+
+                    'today_amount' => $rechargeRmbTodayAmount,
+                    'today_success' => $rechargeRmbTodaySuccess,
+                    'today_fail' => $rechargeRmbTodayFail,
+                    'today_processing' => $rechargeRmbTodayProcessing,
+                    'today_pending' => $rechargeRmbTodayPending,
                 ],
 
                 'withdraw_usdt' => [
                     'total_fail' => $usdTotalFail,
                     'total_success' => $usdTotalSuccess,
                     'total_amount' => $usdTotalAmount,
+
+                    'today_amount' => $usdTodayAmount,
+                    'today_success' => $usdTodaySuccess,
+                    'today_fail' => $usdTodayFail,
                 ],
                 'withdraw_rmb' => [
                     'total_fail' => $totalFail,
                     'total_success' => $totalSuccess,
                     'total_amount' => $totalAmount,
                     'total_processing' => $totalProcessing,
-                    'total_pending' => $totalPending
+                    'total_pending' => $totalPending,
+
+                    'today_amount' => $todayAmount,
+                    'today_success' => $todaySuccess,
+                    'today_fail' => $todayFail,
+                    'today_processing' => $todayProcessing,
+                    'today_pending' => $todayPending,
                 ],
                 'total_user' => $totalUser,
+                'today_user' => $todayUser,
 
             ];
         } catch (ValidationException $e) {

+ 3 - 3
app/Services/BalanceLogService.php

@@ -24,7 +24,7 @@ class BalanceLogService extends BaseService
     public static array $RW = [
         '充值', '人工充值', '三方充值', '注册赠送', '优惠活动',
         '提现', '人工扣款', '三方提现', 
-        '体彩投注','体彩退款','体彩和局退款','体彩中奖','体彩输半退款',
+        //'体彩投注','体彩退款','体彩和局退款','体彩中奖','体彩输半退款',
         '新澳门六合彩投注','新澳门六合彩退款','新澳门六合彩和局退款','新澳门六合彩中奖',
         '香港六合彩投注','香港六合彩退款','香港六合彩和局退款','香港六合彩中奖','加拿大28投注','极速28投注',
         '澳门六合彩投注','澳门六合彩退款','澳门六合彩和局退款','澳门六合彩中奖',
@@ -36,8 +36,8 @@ class BalanceLogService extends BaseService
         'SG时时彩投注','SG时时彩退款','SG时时彩中奖',
         'SG飞艇投注','SG飞艇退款','SG飞艇中奖',
         'SG快3投注','SG快3退款','SG快3中奖',
-        '足球游戏投注','足球游戏退款','足球游戏中奖',
-        '投注','中奖', '资产转移', '比比返', '返水', '回水', '笔笔返', '投注退分','充值返现','即充即送','老用户回归','余额宝转入','转出至余额宝','余额宝利息','流水解冻'
+        //'足球游戏投注','足球游戏退款','足球游戏中奖',
+        '资产转移', '比比返', '返水', '回水', '笔笔返', '投注退分','充值返现','即充即送','老用户回归','余额宝转入','转出至余额宝','余额宝利息','流水解冻'
     ];
 
     public static function init($telegram, $data, $chatId, $firstName, $messageId, $callbackId): void