import { ApiProperty } from '@nestjs/swagger';
import { Type } from 'class-transformer';
import { IsInt, IsString, Min } from 'class-validator';

/**
 * 院内账号密码登录确认 DTO。
 */
export class PasswordLoginConfirmDto {
  @ApiProperty({
    description: '密码登录候选账号票据',
    example: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9',
  })
  @IsString({ message: 'loginTicket 必须是字符串' })
  loginTicket!: string;

  @ApiProperty({
    description: '最终确认登录的用户 ID',
    example: 1,
  })
  @Type(() => Number)
  @IsInt({ message: 'userId 必须是整数' })
  @Min(1, { message: 'userId 必须大于 0' })
  userId!: number;
}
