export interface VideoContentVO {
  /**
   * 主键ID
   */
  id: string | number;

  /**
   * 视频文件名
   */
  videoFileName: string;

  /**
   * 视频标题
   */
  title: string;

  /**
   * 观看完整视频所需消耗的视频点数（积分）
   */
  requiredPoints: number;

  /**
   * 视频总时长，单位：秒
   */
  durationSeconds: number;

  /**
   * 免费试看时长，单位：秒
   */
  previewDurationSeconds: number;

  /**
   * 订阅后可观看的有效期，单位：小时（如24=1天，720=30天）
   */
  subscriptionValidHours: string | number;

  /**
   * 视频文件在阿里云OSS上的完整访问URL
   */
  ossVideoUrl: string;

  videoTempUrl: string;

  videoCoverUrl: string;

  /**
   * 视频状态：up=已上架（可被用户查看/购买），down=已下架（不可见）
   */
  status: string;

  /**
   * 创建时间
   */
  createdAt: string;

  /**
   * 最后更新时间
   */
  updatedAt: string;

  /**
   * 视频oss_id
   */
  ossId: string | number;

  videoTrueSeeCount?: number;

  serviceTagName?: string;
}

export interface VideoContentForm extends BaseEntity {
  /**
   * 主键ID
   */
  id?: string | number;

  /**
   * 视频文件名
   */
  videoFileName?: string;
  serviceTagName?: string;
  /**
   * 视频标题
   */
  title?: string;
  /**
   * 观看完整视频所需消耗的视频点数（积分）
   */
  requiredPoints?: number;

  videoSeeCount?: number;

  /**
   * 视频总时长，单位：秒
   */
  durationSeconds?: number;

  /**
   * 免费试看时长，单位：秒
   */
  previewDurationSeconds?: number;

  /**
   * 订阅后可观看的有效期，单位：小时（如24=1天，720=30天）
   */
  subscriptionValidHours?: string | number;

  /**
   * 视频文件在阿里云OSS上的完整访问URL
   */
  ossVideoUrl?: string;

  /**
   * 视频状态：up=已上架（可被用户查看/购买），down=已下架（不可见）
   */
  status?: string;

  /**
   * 创建时间
   */
  createdAt?: string;

  /**
   * 最后更新时间
   */
  updatedAt?: string;

  /**
   * 视频oss_id
   */
  ossId?: string | number;

  categoryTagId?: string | number;

  videoCoverUrl: string;
}

export interface VideoContentQuery extends PageQuery {
  /**
   * 排序字段
   */
  orderBy?: string;

  /**
   * 排序方向（asc/desc）
   */
  orderDirection?: string;

  /**
   * 视频标题
   */
  title?: string;

  /**
   * 观看完整视频所需消耗的视频点数（积分）
   */
  requiredPoints?: number;

  /**
   * 视频总时长，单位：秒
   */
  durationSeconds?: number;

  /**
   * 免费试看时长，单位：秒
   */
  previewDurationSeconds?: number;

  /**
   * 订阅后可观看的有效期，单位：小时（如24=1天，720=30天）
   */
  subscriptionValidHours?: string | number;

  /**
   * 视频文件在阿里云OSS上的完整访问URL
   */
  ossVideoUrl?: string;

  /**
   * 视频状态：up=已上架（可被用户查看/购买），down=已下架（不可见）
   */
  status?: string;

  /**
   * 创建时间
   */
  createdAt?: string;

  /**
   * 最后更新时间
   */
  updatedAt?: string;

  /**
   * 视频oss_id
   */
  ossId?: string | number;

  /**
   * 日期范围参数
   */
  params?: any;
}
