import { IsEnum, IsNumber, IsOptional, IsString, Min } from "class-validator";
import { Type } from "class-transformer";
import { ReservationStatusEnum } from "./create-reservation.dto";

export class ReservationQueryDto {
  @IsOptional()
  @IsString()
  search?: string;

  @IsOptional()
  @IsEnum(ReservationStatusEnum)
  status?: ReservationStatusEnum;

  @IsOptional()
  @IsString()
  customerId?: string;

  @IsOptional()
  @IsString()
  equipmentId?: string;

  @IsOptional()
  @Type(() => Number)
  @IsNumber()
  @Min(1)
  page?: number = 1;

  @IsOptional()
  @Type(() => Number)
  @IsNumber()
  @Min(1)
  limit?: number = 20;
}
