<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Helpers\CedulaRucValidator;

/**
 * Endpoints auxiliares para la facturación electrónica del SRI (Ecuador).
 */
class SriApiController extends Controller
{
    /** Valida una cédula o RUC ecuatoriano */
    public function validarDocumento(Request $request)
    {
        $doc = preg_replace('/\D/', '', (string) $request->documento);
        $tipoSri = CedulaRucValidator::detectarTipoSri($doc);

        $valido = match ($tipoSri) {
            '04' => CedulaRucValidator::isValidRuc($doc),
            '05' => CedulaRucValidator::isValidCedula($doc),
            '07' => true,
            default => strlen($doc) >= 3, // Pasaporte u otro
        };

        $etiquetas = [
            '04' => 'RUC',
            '05' => 'Cédula',
            '06' => 'Pasaporte',
            '07' => 'Consumidor Final',
        ];

        return response()->json([
            'valido' => $valido,
            'tipo_sri' => $tipoSri,
            'tipo_label' => $etiquetas[$tipoSri] ?? 'Desconocido',
            'documento' => $doc,
        ]);
    }
}
