mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-28 23:00:57 +00:00
34 lines
1010 B
TypeScript
34 lines
1010 B
TypeScript
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
|
|
import { IsBoolean, IsInt, IsOptional, IsString, MaxLength, Min } from 'class-validator';
|
|
|
|
export class CreatePriorityRuleDto {
|
|
@ApiProperty({ description: 'Unique rule code, e.g. USD_PAYER, GOV_REQUEST', maxLength: 40 })
|
|
@IsString()
|
|
@MaxLength(40)
|
|
code!: string;
|
|
|
|
@ApiProperty({ description: 'Human-readable label', maxLength: 100 })
|
|
@IsString()
|
|
@MaxLength(100)
|
|
label!: string;
|
|
|
|
@ApiProperty({ description: 'Points added to booking.priority_score when condition matches', default: 0 })
|
|
@IsInt()
|
|
@Min(0)
|
|
score!: number;
|
|
|
|
@ApiPropertyOptional({
|
|
description: 'If set, rule only matches bookings with this payment currency (e.g. USD). Null = matches all.',
|
|
maxLength: 5,
|
|
})
|
|
@IsOptional()
|
|
@IsString()
|
|
@MaxLength(5)
|
|
conditionCurrency?: string;
|
|
|
|
@ApiPropertyOptional({ default: false, description: 'Feature flag — toggle without code deploy' })
|
|
@IsOptional()
|
|
@IsBoolean()
|
|
isActive?: boolean;
|
|
}
|