import { ApiPropertyOptional } from '@nestjs/swagger'; import { IsDateString, IsInt, IsNotEmpty, IsOptional, IsPositive, IsString, MaxLength, ValidateIf, } from 'class-validator'; /** * Corrects a raw material lot entered with a typo. The kind stays fixed - * wax that went into candles does not turn into propolis afterwards. * `apiaryId: null` / `harvestId: null` remove the origin. */ export class UpdateRawMaterialLotDto { @ApiPropertyOptional() @IsOptional() @IsString() @IsNotEmpty() @MaxLength(100) lotNumber?: string; @ApiPropertyOptional() @IsOptional() @IsDateString() date?: string; @ApiPropertyOptional({ description: 'Gewonnene Menge in Gramm' }) @IsOptional() @IsInt() @IsPositive() quantity?: number; @ApiPropertyOptional({ nullable: true }) @IsOptional() @ValidateIf((_object, value) => value !== null) @IsString() apiaryId?: string | null; @ApiPropertyOptional({ nullable: true }) @IsOptional() @ValidateIf((_object, value) => value !== null) @IsString() harvestId?: string | null; @ApiPropertyOptional() @IsOptional() @IsString() @MaxLength(2000) notes?: string; }