import { Controller, Get, Patch, Param, Query } from '@nestjs/common';
import { DashboardService } from './dashboard.service';

@Controller('dashboard')
export class DashboardController {
  constructor(private svc: DashboardService) {}

  @Get('indicadores') indicadores() { return this.svc.indicadores(); }
  @Get('demandas-por-status') demandasPorStatus() { return this.svc.demandasPorStatus(); }
  @Get('demandas-detalhe') demandasDetalhe(@Query('status') status: string) { return this.svc.demandasDetalhe(status); }
  @Get('consumo-orcamento') consumoOrcamento(
    @Query('ano') ano: string,
    @Query('centro_custo_id') centroCustoId?: string,
    @Query('categoria_id') categoriaId?: string,
  ) { return this.svc.consumoOrcamento(parseInt(ano) || 2026, centroCustoId, categoriaId); }
  @Get('categorias-quantidade') categoriasQuantidade() { return this.svc.categoriasQuantidade(); }
  @Get('busca') busca(@Query('q') q: string) { return this.svc.busca(q); }
  @Get('alertas') alertas(@Query('usuario_id') uid: string) { return this.svc.alertas(uid); }
  @Patch('alertas/:id/ler') marcarLido(@Param('id') id: string) { return this.svc.marcarAlertaLido(id); }
  @Get('esg') esgIndicadores() { return this.svc.esgIndicadores(); }
}
