import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; import { IsOptional, IsString, IsUUID, MinLength } from 'class-validator'; export class RequestChangesDto { @ApiProperty({ description: 'Staff note explaining what the customer must fix' }) @IsString() @MinLength(1) note!: string; @ApiPropertyOptional({ format: 'uuid' }) @IsOptional() @IsUUID() actorId?: string; } export class StaffAcceptDto { @ApiPropertyOptional({ format: 'uuid' }) @IsOptional() @IsUUID() actorId?: string; } export class MarketingApproveDto { @ApiPropertyOptional({ format: 'uuid' }) @IsOptional() @IsUUID() actorId?: string; } export class StaffRejectDto { @ApiProperty() @IsString() @MinLength(1) reason!: string; @ApiPropertyOptional({ format: 'uuid' }) @IsOptional() @IsUUID() actorId?: string; } export class ApproveStepDto { @ApiProperty({ format: 'uuid' }) @IsUUID() actorId!: string; @ApiProperty({ description: 'LINE_STAFF | DIRECTOR | CEO' }) @IsString() requiredRole!: string; } export class RejectStepDto { @ApiProperty({ format: 'uuid' }) @IsUUID() actorId!: string; @ApiProperty() @IsString() @MinLength(1) reason!: string; } export class CancelBookingDto { @ApiProperty() @IsString() @MinLength(1) reason!: string; } export class BankCallbackDto { @ApiProperty() @IsString() pnrCode!: string; }