<?php

namespace Modules\SaaS\Http\Controllers\Api\SuperAdmin;

use App\Http\Controllers\Controller;
use App\Models\Company;
use App\Models\User;
use Illuminate\Http\JsonResponse;
use Illuminate\Support\Facades\DB;

class AnalyticsController extends Controller
{
    public function index(): JsonResponse
    {
        $totalCompanies = Company::count();
        $activeCompanies = Company::where('status', 'active')->count();
        $trialCompanies = Company::whereNotNull('trial_ends_at')->where('trial_ends_at', '>', now())->count();
        $totalUsers = User::whereNotNull('company_id')->count();

        $revenue = DB::table('payment_transcations')
            ->where('status', 'approved')
            ->sum('total');

        return response()->json([
            'total_companies' => $totalCompanies,
            'active_companies' => $activeCompanies,
            'trial_companies' => $trialCompanies,
            'total_users' => $totalUsers,
            'revenue' => (float) $revenue,
        ]);
    }
}
