import { Controller, Get, Param, UseGuards } from '@nestjs/common';
import { AuthGuard } from '@nestjs/passport';
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
import { ConsultaRucService } from './consulta-ruc.service';

/**
 * Consulta de RUC/cédula para autocompletar el alta de clientes/proveedores.
 * Proxea al servicio interno de Consulta RUC. Protegido con JWT (cualquier usuario
 * autenticado del ERP puede consultar; no expone el servicio interno al navegador).
 */
@ApiTags('Consulta RUC')
@ApiBearerAuth()
@UseGuards(AuthGuard('jwt'))
@Controller({ version: '1', path: 'consulta-ruc' })
export class ConsultaRucController {
  constructor(private readonly service: ConsultaRucService) {}

  @Get(':ruc')
  @ApiOperation({ summary: 'Consultar RUC/cédula (base local → SIFEN → PLRA) para autocompletar datos del cliente' })
  consultar(@Param('ruc') ruc: string) {
    return this.service.consultar(ruc);
  }
}
