This commit is contained in:
2025-12-17 14:04:11 +01:00
parent 1ea9c9649f
commit daa4bb6576
238 changed files with 4263 additions and 1752 deletions

View File

@@ -0,0 +1,65 @@
import { ApiProperty } from '@nestjs/swagger';
import { IsString, IsNotEmpty, IsOptional, IsNumber, IsEnum } from 'class-validator';
export class ApplyPenaltyCommandDTO {
@ApiProperty()
@IsString()
@IsNotEmpty()
raceId!: string;
@ApiProperty()
@IsString()
@IsNotEmpty()
driverId!: string;
@ApiProperty()
@IsString()
@IsNotEmpty()
stewardId!: string;
@ApiProperty({
enum: [
'time_penalty',
'grid_penalty',
'points_deduction',
'disqualification',
'warning',
'license_points',
'probation',
'fine',
'race_ban',
],
})
@IsEnum([
'time_penalty',
'grid_penalty',
'points_deduction',
'disqualification',
'warning',
'license_points',
'probation',
'fine',
'race_ban',
])
type!: string;
@ApiProperty({ required: false })
@IsOptional()
@IsNumber()
value?: number;
@ApiProperty()
@IsString()
@IsNotEmpty()
reason!: string;
@ApiProperty({ required: false })
@IsOptional()
@IsString()
protestId?: string;
@ApiProperty({ required: false })
@IsOptional()
@IsString()
notes?: string;
}