import {
  IsString,
  IsOptional,
  IsEnum,
  MaxLength,
} from 'class-validator';

// ==================== 枚举定义 ====================

export enum FeedbackType {
  LIKE = 'LIKE',
  DISLIKE = 'DISLIKE',
}

// ==================== 创建反馈 DTO ====================

export class CreateFeedbackDto {
  @IsEnum(FeedbackType)
  type: FeedbackType;

  @IsString()
  @IsOptional()
  @MaxLength(500, { message: '评论最多 500 个字符' })
  comment?: string;
}

// ==================== 更新反馈 DTO ====================

export class UpdateFeedbackDto {
  @IsEnum(FeedbackType)
  @IsOptional()
  type?: FeedbackType;

  @IsString()
  @IsOptional()
  @MaxLength(500, { message: '评论最多 500 个字符' })
  comment?: string;
}
