ProgrammeDTO.ts 4.47 KB
/**
 * 节目/剧集Item
 */
import { CopyRightVo } from './CopyRightVo';
import { DisplayName } from './DisplayName';
import { ItemDTO } from './ItemDTO';
import { Presenter } from './Presenter';
import { Resolution } from './Resolution';
import { ShieldStrategy } from './ShieldStrategy';
import { StrategyTipMap } from './StrategyTipMap';
import { SubTxt } from './SubTxt';
import { Team } from './Team';
import { Tip } from './Tip';

export interface ProgrammeDTO extends ItemDTO {
  name?: string; // 节目名称
  pID?: string // 节目ID
  publishTime?: string; // 发布时间
  updateTimeDesc?: string; // 节目更新时间描述
  duration?: string; // 节目时长
  assetID?: string; // 媒资ID
  mediaSize?: number; // 节目文件大小(字节)
  contentType?: string; // 内容形态
  director?: string; // 导演
  actor?: string; // 演员
  year?: string; // 发布年份
  contentStyle?: string; // 剧集类型,如:动作/剧情
  displayName?: DisplayName;
  copyRightVo?: CopyRightVo;
  auth?: string; // 权限
  title?: string; // 标题
  subTitle?: string; // 子标题
  type?: string; // 数据类型
  programType?: string; // 节目类型(不再维护)

  // 节目类型:
  // http://confluence.cmvideo.cn/confluence/pages/viewpage.action?pageId=55822514
  // 节目为云直播时,值为LIVE
  // 节目为挂件时,值为LIVE
  programTypeV2?: string;
  detail?: string; // 描述

  // 视频类型
  // 1.GKE G客
  // 2.LIVE 直播
  // 3.VOD 点播
  // 4.GRAPHIC 图文
  videoType?: string;
  source?: string; // 来源
  score?: string; // 得分
  subTxt?: SubTxt; // 角标右下角文字规则
  updateEP?: string; // 更新集数(示例:更新至28集)
  updateV?: string; // 更新集数(示例:28)
  // pics?: Pic; // 图片(放到父类ItemDTO中)
  // h5pics?: Pic; // 图片(放到父类ItemDTO中)
  sign?: string; // 上传者简介(若为G客内容,则DataVo 中输出该字段)
  gkeUserid?: string; // G客号用户id(若为G客内容,则DataVo 中输出该字段)
  author?: string; // 节目上传者(若为G客内容,则DataVo 中输出该字段)
  avator?: string; // 节目上传者头像(若为G客内容,则DataVo 中输出该字段)
  shieldStrategy?: ShieldStrategy; // 屏蔽策略
  tip?: Tip; // 角标,枚举类:(code, msg)
  tip2?: Tip; // 清晰度角标,枚举类:(code, msg)/4K角标
  showTip?: Tip;
  downloadTip?: Tip; // 下载角标,枚举类:(code, msg)
  strategyTipMap?: StrategyTipMap; // 不同策略计算第一象限默认角标时的结果。目前提供给VR客户端用。
  // action?: Action; // 配置事件行为(移动到父类ItemDTO中)
  // 适配多action
  // actions?: {
  //   defaultAction: Action; // 对应原action
  //   CRBTAction?: Action; //对应彩铃action
  // };
  isGkeContent?: boolean; // 是G客节目
  dataType?: number; // 数据类型枚举 // 1.点播节目,2.广告对象,3.挂件对象,4.云直播节目,5.图文,6.开路直播节目单,7.用户数据,8.直播间数据,9.通用对象
  screenType?: string; // 屏幕类型。1: 竖屏; 2: 横屏;
  fitArea?: string[]; // 适配地区

  branchMark?: boolean; // 分众标志位 true表示存在分众信息
  programGroupId?: string;
  compId?: string;
  sortValue?: string;
  programs?: ProgrammeDTO[]; // 剧集列表
  fetchStrategy?: string;
  position?: string;
  label_4K?: string;
  resolution?: Resolution;
  index?: string; // 在剧集中的序号(从1开始)
  way?: string;
  displayType?: string;
  isUFC?: string;
  isPrevue?: string;
  KEYWORDS?: string;
  stateTime?: string; // 已完结/"每周四12:00更新1期"

  // 精选赛事列表的item
  activityType?: string; // 活动类型(0:体育赛事;1:娱乐)
  competitionType?: string; // 比赛类型(0 :非对抗赛, 1: 对抗)
  competitionName?: string; // 赛事名称
  logo?: string; // 非对抗赛图标
  unionLogo?: string; // 联盟通标识图标
  phase?: string; // 阶段信息
  round?: string; // 轮次信息
  teamShowType?: string; // 对阵球队展示顺序:teamShowType:0:主队在左,客队在右 1:客队在左,主队在右
  teams?: Team[]; // 对阵球队信息
  matchStartTime?: number; // 开赛时间/比赛开始时间(时间戳/单位:毫秒),如:1701011700000
  startTime?: string; // 开始时间,YYYYMMDDHHmm,如202311262305
  endTime?: string; // 比赛结束时间/推流结束时间(YYYYMMDDHHmm,如202311270130)
  presenters?: Presenter[]; // 解说员信息

  mgdbBackgroundColor?: string;
}