﻿import { Controller, Get, Param, UseGuards } from "@nestjs/common";
import { ApiBearerAuth, ApiOperation, ApiTags } from "@nestjs/swagger";
import { RequirePermission } from "../auth/decorators/require-permission.decorator";
import { JwtAuthGuard } from "../auth/guards/jwt-auth.guard";
import { PermissionGuard } from "../auth/guards/permission.guard";
import { HistorialService } from "./historial.service";

@ApiTags("historial")
@ApiBearerAuth()
@UseGuards(JwtAuthGuard, PermissionGuard)
@RequirePermission("historial", "read")
@Controller("historial")
export class HistorialController {
  constructor(private readonly historialService: HistorialService) {}

  @Get("cliente/:tarjeta")
  @ApiOperation({ summary: "Obtener historial por cliente" })
  async getByCliente(@Param("tarjeta") tarjeta: string) {
    return this.historialService.getHistorialByCliente(tarjeta);
  }

  @Get("placa/:placa")
  @ApiOperation({ summary: "Obtener historial por placa" })
  async getByPlaca(@Param("placa") placa: string) {
    return this.historialService.getHistorialByPlaca(placa);
  }
}
