import { IsString, IsOptional, IsNotEmpty, Matches } from 'class-validator'; import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; export class AutoCreateAccountDto { @ApiProperty({ example: '550e8400-e29b-41d4-a716-446655440000' }) @IsString() @IsNotEmpty() deviceId: string; @ApiPropertyOptional({ example: 'iPhone 15 Pro' }) @IsOptional() @IsString() deviceName?: string; @ApiPropertyOptional({ example: 'ABC123' }) @IsOptional() @IsString() @Matches(/^[A-Z0-9]{6}$/, { message: '推荐码格式错误' }) inviterReferralCode?: string; @ApiPropertyOptional() @IsOptional() @IsString() provinceCode?: string; @ApiPropertyOptional() @IsOptional() @IsString() cityCode?: string; }