<?php
// 确保顶部没有任何空格或空行
require_once __DIR__ . '/../lib/config.php';
require_once __DIR__ . '/../lib/db_connect.php';

// 启动会话（如果尚未启动）
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}

// 设置数据库时区为东八区（北京时间）
$conn->query("SET time_zone = '+08:00'");

// 现在包含header.php
require_once __DIR__ . '/../includes/header.php';

if (isset($_SESSION['user_id'])) {
    // 获取用户积分余额和IP信息
    $user_id = $_SESSION['user_id'];
    $points_sql = "SELECT points, register_ip, last_login_ip, last_login_time FROM users WHERE id = $user_id";
    $points_result = $conn->query($points_sql);
    
    // 检查查询结果
    if ($points_result) {
        $user_data = $points_result->fetch_assoc();
        $user_points = $user_data['points'];
        $register_ip = $user_data['register_ip'];
        $last_login_ip = $user_data['last_login_ip'];
        $last_login_time = $user_data['last_login_time'];
    } else {
        $user_points = 0;
        $register_ip = '未知';
        $last_login_ip = '未知';
        $last_login_time = '从未登录';
        error_log("积分查询失败: " . $conn->error);
    }
    
    $points_value = number_format($user_points * POINT_TO_RMB_RATE, 2);
    
    // 新增：判断是否代理用户访问控制面板
    $isAgentViewingDashboard = ($_SESSION['role'] === 'agent' && basename($_SERVER['PHP_SELF']) === 'index.php');

    if ($_SESSION['role'] === 'admin') {
        // 待处理任务统计
        $sql = "SELECT COUNT(*) AS count FROM tasks WHERE status = 'pending'";
        $result = $conn->query($sql);
        $pending = $result->fetch_assoc()['count'];
        
        // ==== 修复用户统计查询 ====
        // 使用单个高效查询获取所有用户统计数据
        $sql = "SELECT 
                  COUNT(*) AS total,
                  SUM(CASE WHEN status = 'active' THEN 1 ELSE 0 END) AS active,
                  SUM(CASE WHEN status = 'banned' THEN 1 ELSE 0 END) AS banned,
                  SUM(CASE WHEN role = 'admin' THEN 1 ELSE 0 END) AS admin
                FROM users";
        $result = $conn->query($sql);
        $userStats = $result->fetch_assoc();
        
        // 确保即使没有结果也有默认值
        if (!$userStats) {
            $userStats = [
                'total' => 0,
                'active' => 0,
                'banned' => 0,
                'admin' => 0
            ];
        }
        
        // ==== 新增：全平台用户积分统计 ====
        $total_points_sql = "SELECT SUM(points) AS total_points FROM users WHERE status = 'active'";
        $total_points_result = $conn->query($total_points_sql);
        $platform_points = 0;
        if ($total_points_result) {
            $points_data = $total_points_result->fetch_assoc();
            $platform_points = $points_data['total_points'] ?? 0;
        }
        $platform_points_value = number_format($platform_points * POINT_TO_RMB_RATE, 2);
        // ==== 新增结束 ====
        
        echo '<div class="main-content">';
        echo '<h4 class="mb-4 fw-bold text-primary d-flex align-items-center">
                <i class="fas fa-tachometer-alt me-2"></i>管理员控制面板
              </h4>';
        
        // 管理员积分显示
        echo '<div class="card glass-panel mb-4 animate-fadeIn">';
        echo '<div class="card-body p-4">';
        echo '<div class="d-flex align-items-center justify-content-between">';
        echo '<div class="d-flex align-items-center">';
        echo '<div class="bg-primary bg-opacity-10 text-primary rounded-circle d-flex align-items-center justify-content-center me-3" style="width: 60px; height: 60px;">';
        echo '<i class="fas fa-wallet fs-3"></i>';
        echo '</div>';
        echo '<div>';
        echo '<h6 class="mb-0 text-muted">我的积分</h6>';
        echo '<h3 class="mb-0 fw-bold">' . $user_points . ' <small class="text-muted fs-6">积分</small></h3>';
        echo '</div>';
        echo '</div>';
        echo '<div class="text-end">';
        echo '<span class="badge bg-success fs-5 p-2">≈ ¥' . $points_value . '</span>';
        echo '<p class="mb-0 small text-muted mt-1">1积分 = ¥' . POINT_TO_RMB_RATE . '</p>';
        echo '</div>';
        echo '</div>';
        echo '</div>';
        echo '</div>';
        
        echo '<div class="row row-cols-1 row-cols-md-2 row-cols-xl-4 g-4 mb-4">';
        
        // ==== 新增：全平台用户积分统计卡片 ====
        echo '<div class="col">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-info text-white py-3 d-flex align-items-center">';
        echo '<i class="fas fa-coins me-2"></i>';
        echo '<h5 class="mb-0">平台总积分</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . number_format($platform_points) . '</p>';
        echo '<p class="text-muted mb-0">积分</p>';
        echo '<p class="mt-2 mb-0 small text-success fw-semibold">≈ ¥' . $platform_points_value . '</p>';
        echo '</div></div></div>';
        // ==== 新增结束 ====
        
        // 总用户数卡片
        echo '<div class="col">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-primary text-white py-3 d-flex align-items-center">';
        echo '<i class="fas fa-users me-2"></i>';
        echo '<h5 class="mb-0">总用户数</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $userStats['total'] . '</p>';
        echo '</div></div></div>';
        
        // 活跃用户卡片
        echo '<div class="col">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-success text-white py-3 d-flex align-items-center">';
        echo '<i class="fas fa-user-check me-2"></i>';
        echo '<h5 class="mb-0">活跃用户</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $userStats['active'] . '</p>';
        echo '</div></div></div>';
        
        // 管理员卡片
        echo '<div class="col">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-warning text-white py-3 d-flex align-items-center">';
        echo '<i class="fas fa-user-shield me-2"></i>';
        echo '<h5 class="mb-0">管理员</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $userStats['admin'] . '</p>';
        echo '</div></div></div>';
        
        // 待处理任务卡片
        echo '<div class="col">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-danger text-white py-3 d-flex align-items-center">';
        echo '<i class="fas fa-tasks me-2"></i>';
        echo '<h5 class="mb-0">待处理任务</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $pending . '</p>';
        echo '</div></div></div>';
        echo '</div>'; // 结束统计卡片行
        
        echo '<div class="d-flex gap-3 flex-wrap mb-4">';
     
        echo '</div>';
        echo '</div>';
    } elseif ($_SESSION['role'] === 'agent' && !$isAgentViewingDashboard) {
        // 代理用户视图 - 代理面板
        echo '<div class="main-content">';
        echo '<h4 class="mb-4 fw-bold text-primary d-flex align-items-center">
                <i class="fas fa-user-tie me-2"></i>代理用户控制面板
              </h4>';
        
        // 代理用户积分显示
        echo '<div class="card glass-panel mb-4 animate-fadeIn">';
        echo '<div class="card-body p-4">';
        echo '<div class="d-flex align-items-center justify-content-between">';
        echo '<div class="d-flex align-items-center">';
        echo '<div class="bg-primary bg-opacity-10 text-primary rounded-circle d-flex align-items-center justify-content-center me-3" style="width: 70px; height: 70px;">';
        echo '<i class="fas fa-coins fs-2"></i>';
        echo '</div>';
        echo '<div>';
        echo '<h6 class="mb-0 text-muted">积分余额</h6>';
        echo '<h2 class="mb-0 fw-bold">' . $user_points . ' <small class="text-muted fs-5">积分</small></h2>';
        echo '</div>';
        echo '</div>';
        echo '<div class="text-end">';
        echo '<span class="badge bg-success fs-5 p-2">≈ ¥' . $points_value . '</span>';
        echo '<p class="mb-0 small text-muted mt-1">1积分 = ¥' . POINT_TO_RMB_RATE . '</p>';
        echo '</div>';
        echo '</div>';
        echo '</div>';
        echo '</div>';

        // 代理用户功能卡片
        echo '<div class="row">';
        
        // 积分提现
        echo '<div class="col-md-6 mb-4">';
        echo '<div class="card h-100 glass-panel animate-fadeIn">';
        echo '<div class="card-body text-center p-4 d-flex flex-column">';
        echo '<div class="bg-primary bg-opacity-10 text-primary rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 80px; height: 80px; margin: 0 auto;">';
        echo '<i class="fas fa-wallet fs-2"></i>';
        echo '</div>';
        echo '<h5 class="card-title text-secondary fw-semibold mb-2">积分提现</h5>';
        echo '<p class="text-muted mb-3">将您的积分提现到微信或支付宝账户</p>';
        echo '<div class="mt-auto">';
        echo '<a href="withdraw.php" class="btn btn-primary px-4 py-2">立即提现</a>';
        echo '</div></div></div></div>';
        
        // 购买商品
        echo '<div class="col-md-6 mb-4">';
        echo '<div class="card h-100 glass-panel animate-fadeIn">';
        echo '<div class="card-body text-center p-4 d-flex flex-column">';
        echo '<div class="bg-success bg-opacity-10 text-success rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 80px; height: 80px; margin: 0 auto;">';
        echo '<i class="fas fa-shopping-cart fs-2"></i>';
        echo '</div>';
        echo '<h5 class="card-title text-secondary fw-semibold mb-2">购买商品</h5>';
        echo '<p class="text-muted mb-3">浏览并购买各种游戏商品</p>';
        echo '<div class="mt-auto">';
        echo '<a href="product_list.php" class="btn btn-success px-4 py-2">立即购买</a>';
        echo '</div></div></div></div>';
        
        // 积分充值（卡密充值）
        echo '<div class="col-md-6 mb-4">';
        echo '<div class="card h-100 glass-panel animate-fadeIn">';
        echo '<div class="card-body text-center p-4 d-flex flex-column">';
        echo '<div class="bg-info bg-opacity-10 text-info rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 80px; height: 80px; margin: 0 auto;">';
        echo '<i class="fas fa-credit-card fs-2"></i>';
        echo '</div>';
        echo '<h5 class="card-title text-secondary fw-semibold mb-2">积分充值</h5>';
        echo '<p class="text-muted mb-3">使用卡密为您的账户充值积分</p>';
        echo '<div class="mt-auto">';
        echo '<a href="recharge.php" class="btn btn-info px-4 py-2">立即充值</a>';
        echo '</div></div></div></div>';
        
        // 打号教程攻略（如果配置了）
        if (!empty(TUTORIAL_URL)) {
            echo '<div class="col-md-6 mb-4">';
            echo '<div class="card h-100 glass-panel animate-fadeIn">';
            echo '<div class="card-body text-center p-4 d-flex flex-column">';
            echo '<div class="bg-warning bg-opacity-10 text-warning rounded-circle d-inline-flex align-items-center justify-content-center mb-3" style="width: 80px; height: 80px; margin: 0 auto;">';
            echo '<i class="fas fa-book fs-2"></i>';
            echo '</div>';
            echo '<h5 class="card-title text-secondary fw-semibold mb-2">打号教程攻略</h5>';
            echo '<p class="text-muted mb-3">学习游戏打号技巧和策略</p>';
            echo '<div class="mt-auto">';
            echo '<a href="' . TUTORIAL_URL . '" class="btn btn-warning px-4 py-2">查看教程</a>';
            echo '</div></div></div></div>';
        }
        
        echo '</div>'; // 结束功能卡片行
        echo '</div>'; // 结束main-content
    } else {
        // 普通用户视图或代理用户查看控制面板
        echo '<div class="main-content">';
        echo '<h4 class="mb-4 fw-bold text-primary d-flex align-items-center">
                <i class="fas fa-user-circle me-2"></i>用户控制面板
              </h4>';
        echo '<div class="card glass-panel border-start border-4 border-primary mb-4 animate-fadeIn">
                <div class="card-body">
                    <div class="d-flex align-items-center">
                        <i class="fas fa-user-check me-3 fs-2 text-primary"></i>
                        <div>
                            <h5 class="fw-bold mb-1">欢迎回来，' . htmlspecialchars($_SESSION['name']) . '！</h5>
                            <p class="mb-0">您当前所属用户组: ' . htmlspecialchars($_SESSION['user_group'] ?? '默认') . '</p>
                        </div>
                    </div>
                </div>
              </div>';
        
        // 用户IP信息卡片
        echo '<div class="row g-4 mb-4">';
        echo '<div class="col-md-6">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-info text-white py-3">';
        echo '<h5 class="mb-0 text-center">注册信息</h5>';
        echo '</div>';
        echo '<div class="card-body p-4">';
        echo '<p class="mb-2"><i class="fas fa-sign-in-alt me-2"></i> 注册IP: ' . htmlspecialchars($register_ip) . '</p>';
        echo '<p class="mb-0"><i class="fas fa-calendar me-2"></i> 注册时间: ' . htmlspecialchars($last_login_time) . '</p>';
        echo '</div></div></div>';
        
        echo '<div class="col-md-6">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-success text-white py-3">';
        echo '<h5 class="mb-0 text-center">登录信息</h5>';
        echo '</div>';
        echo '<div class="card-body p-4">';
        echo '<p class="mb-2"><i class="fas fa-sign-in-alt me-2"></i> 最后登录IP: ' . htmlspecialchars($last_login_ip) . '</p>';
        echo '<p class="mb-0"><i class="fas fa-calendar me-2"></i> 最后登录时间: ' . htmlspecialchars($last_login_time) . '</p>';
        echo '</div></div></div>';
        echo '</div>'; // 结束IP信息行
        
        // 用户积分显示
        echo '<div class="card glass-panel mb-4 animate-fadeIn">';
        echo '<div class="card-body p-4">';
        echo '<div class="d-flex align-items-center justify-content-between">';
        echo '<div class="d-flex align-items-center">';
        echo '<div class="bg-primary bg-opacity-10 text-primary rounded-circle d-flex align-items-center justify-content-center me-3" style="width: 70px; height: 70px;">';
        echo '<i class="fas fa-coins fs-2"></i>';
        echo '</div>';
        echo '<div>';
        echo '<h6 class="mb-0 text-muted">积分余额</h6>';
        echo '<h2 class="mb-0 fw-bold">' . $user_points . ' <small class="text-muted fs-5">积分</small></h2>';
        echo '</div>';
        echo '</div>';
        echo '<div class="text-end">';
        echo '<span class="badge bg-success fs-5 p-2">≈ ¥' . $points_value . '</span>';
        echo '<p class="mb-0 small text-muted mt-1">1积分 = ¥' . POINT_TO_RMB_RATE . '</p>';
        echo '</div>';
        echo '</div>';
        echo '</div>';
        echo '</div>';

        // ===== 修复：今日收益和累计收益统计 =====
        // 今日收益：从积分变动记录中获取当日的净值
        $today = date('Y-m-d');
        $today_income_sql = "SELECT SUM(amount) AS today_income 
                             FROM point_transactions 
                             WHERE user_id = ? 
                             AND DATE(created_at) = ? 
                             AND (type IN ('task_reward', 'incentive_reward', 'task_deduct', 'bonus') OR description LIKE '%任务%')
                             AND status = 'completed'";
        $stmt_today_income = $conn->prepare($today_income_sql);
        $today_income = 0;
        if ($stmt_today_income) {
            $stmt_today_income->bind_param("is", $user_id, $today);
            $stmt_today_income->execute();
            $result_today_income = $stmt_today_income->get_result();
            $row_today = $result_today_income->fetch_assoc();
            $today_income = $row_today['today_income'] ?? 0;
            
            // 确保即使没有结果也有默认值
            if ($today_income === null) {
                $today_income = 0;
            }
        }

        // 查询累计收益（所有任务相关收益）
        $total_income_sql = "SELECT SUM(amount) AS total_income 
                             FROM point_transactions 
                             WHERE user_id = ? 
                             AND (type IN ('task_reward', 'incentive_reward', 'task_deduct', 'bonus') OR description LIKE '%任务%')
                             AND status = 'completed'";
        $stmt_total_income = $conn->prepare($total_income_sql);
        $total_income = 0;
        if ($stmt_total_income) {
            $stmt_total_income->bind_param("i", $user_id);
            $stmt_total_income->execute();
            $result_total_income = $stmt_total_income->get_result();
            $row_total = $result_total_income->fetch_assoc();
            $total_income = $row_total['total_income'] ?? 0;
            
            // 确保即使没有结果也有默认值
            if ($total_income === null) {
                $total_income = 0;
            }
        }
        // ===== 修复结束 =====
        
        // 显示收益卡片
        echo '<div class="row g-4 mb-4">';
        echo '<div class="col-md-6">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-success text-white py-3">';
        echo '<h5 class="mb-0 text-center">今日收益</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $today_income . '</p>';
        echo '<p class="text-muted mb-0">积分</p>';
        echo '</div></div></div>';
        
        echo '<div class="col-md-6">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-info text-white py-3">';
        echo '<h5 class="mb-0 text-center">累计收益</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $total_income . '</p>';
        echo '<p class="text-muted mb-0">积分</p>';
        echo '</div></div></div>';
        echo '</div>';
        
        // 用户任务统计
        $user_id = $_SESSION['user_id'];
        $sql = "SELECT 
                SUM(CASE WHEN status = 'pending' THEN 1 ELSE 0 END) AS pending,
                SUM(CASE WHEN status = 'approved' THEN 1 ELSE 0 END) AS approved,
                SUM(CASE WHEN status = 'rejected' THEN 1 ELSE 0 END) AS rejected
                FROM tasks WHERE user_id = $user_id";
        $result = $conn->query($sql);
        $stats = $result->fetch_assoc();
        
        echo '<div class="row g-4 mb-4">';
        echo '<div class="col-md-4">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-primary text-white py-3">';
        echo '<h5 class="mb-0 text-center">待审核</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $stats['pending'] . '</p>';
        echo '</div></div></div>';
        
        echo '<div class="col-md-4">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-success text-white py-3">';
        echo '<h5 class="mb-0 text-center">已通过</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $stats['approved'] . '</p>';
        echo '</div></div></div>';
        
        echo '<div class="col-md-4">';
        echo '<div class="card stat-card h-100 animate-fadeIn">';
        echo '<div class="card-header bg-danger text-white py-3">';
        echo '<h5 class="mb-0 text-center">已拒绝</h5>';
        echo '</div>';
        echo '<div class="card-body text-center p-4">';
        echo '<p class="display-4 fw-bold mb-0">' . $stats['rejected'] . '</p>';
        echo '</div></div></div>';
        echo '</div>';
        
        echo '</div>'; // 结束main-content
    }
} else {
    require_once 'login.php';
}

require_once __DIR__ . '/../includes/footer.php';
?>