package com.tzld.piaoquan.api.model.vo.contentplatform;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.Map;

@Data
public class WxVideoV2VO {

	private Long id;
	@ApiModelProperty(value = "数据状态，1有效，2 已删除，3 已屏蔽,4关注可见，5分享可见 6自己可见")
	private Integer status;
	@ApiModelProperty(value = "视频的用户ID")
	private Long uid;
	@ApiModelProperty(value = "视频地址")
	private String videoPath;
	@ApiModelProperty(value = "OSS原始的地址")
	private String ossVideoPath;
	@ApiModelProperty(value = "播放次数")
	private Integer playCount;
	@ApiModelProperty(value = "总播放次数")
	private Integer playCountTotal;
	@ApiModelProperty(value = "分享到朋友圈次数")
	private Integer shareCount;
	@ApiModelProperty(value = "视频时长")
	private Integer totalTime;
	@ApiModelProperty(value = "创建时间")
	private Date gmtCreate;
	@ApiModelProperty(value = "修改时间")
	private Date gmtModifie;
	@ApiModelProperty(value = "创建时间戳")
	private Long gmtCreateTimestamp;
	@ApiModelProperty(value = "修改时间戳")
	private Long gmtModifiedTimestamp;
	@ApiModelProperty(value = "转码状态:1-不需转码 2-转码中 3-转码完成 4-转码失败")
	private Integer transcodeStatus;
	@ApiModelProperty(value = "视频宽")
	private Integer width;
	@ApiModelProperty(value = "视频高")
	private Integer height;
	@ApiModelProperty(value = "旋转角度")
	private String rotate;
	@ApiModelProperty(value = "视频码率")
	private Long bitRate;
	@ApiModelProperty(value = "分享图URL")
	private String shareImgPath;
	@ApiModelProperty(value = "分享图ID")
	private Long shareImgId;
	@ApiModelProperty(value = "缩略图URL")
	private String thumbnailImagePath;
	@ApiModelProperty(value = "视频后缀")
	private String fileExtensions;
	@ApiModelProperty(value = "视频标题")
	private String title;
	@ApiModelProperty(value = "视频标题ID")
	private Long titleId;
	@ApiModelProperty(value = "是否收藏")
	private Boolean favorited = false;
	@ApiModelProperty(value = "分享到微信好友")
	private Integer shareCountFriend;
	@ApiModelProperty(value = "收藏数")
	private Long favoriteds;
	@ApiModelProperty(value = "播放时间")
	private Long playTime;
	@ApiModelProperty(value = "播放时间距离今天的天数")
	private int playBeforeDay;
	@ApiModelProperty(value = "发视频距离今天的天数")
	private int sendBeforeDay;
	@ApiModelProperty(value = "时间戳")
	private Long lastTimestamp;
	@ApiModelProperty(value = "发视频时间描述")
	private String gmtCreateDescr;
	@ApiModelProperty(value = "分享到微信好友的图片的链接的类型")
	private Integer shareLinkType;
	@ApiModelProperty(value = "用户视频总播放数,格式化后的值，前端直接显示")
	private String playCountFormatStr;
	@ApiModelProperty(value = "分享到微信好友的图片的title")
	private String shareTitle;
	@ApiModelProperty(value = "分享标题的ID")
	private Long shareTitleId;
	@ApiModelProperty(value = "内容敏感状态（0：未检验，1：不敏感，2：敏感，3：敏感已审）")
	private Integer sensitiveStatus;
	@ApiModelProperty(value = "敏感提示信息")
	private String sensitiveMsg = "";
	@ApiModelProperty(value = "是否打开弹幕 1打开  -1关闭")
	private Integer barrageSwitch = 1;
	@ApiModelProperty(value = "视频所在的视频集ID")
	private Long videoCollectionId;
	@ApiModelProperty(value = "转发分享图URL")
	private String tabShareImgPath;
	@ApiModelProperty(value = "h5分享图URL")
	private String h5ShareImgPath;
	private Map<String, String> h5ShareImgPathMap;
	@ApiModelProperty(value = "是否需要显示热门推荐")
	private Boolean showHotRecommend = true;
	@ApiModelProperty(value = "评论数量")
	private Integer commentCount = 0;
	@ApiModelProperty(value = "弹幕数量")
	private Integer barrageCount = 0;
	@ApiModelProperty(value = "大小")
	private Long size;
	@ApiModelProperty(value = "视频简介")
	private String descr;
	@ApiModelProperty(value = "0非流量池 1曝光池2普通推荐测试池3待推荐测试池")
	private Integer measureType = 0;
	@ApiModelProperty(value = "是否加密视频：0是1不是")
	private Integer encryption =1;
	@ApiModelProperty(value = "视频密码")
	private String pwd;
	@ApiModelProperty(value = "封面是否是第一帧，false不是true是")
	private boolean firstPicture=false;
	@ApiModelProperty(value = "原始封面图片")
	private String videoCoverSnapshotPath;
	@ApiModelProperty(value = "是否有片尾:0没有，1有")
	private Integer hasTailVideo = 0;
	@ApiModelProperty(value = "片尾类型:1下载，2分享 3下载+分享")
	private Integer tailType = 0;
	@ApiModelProperty(value = "片尾地址")
	private String videoTailPath;
	private Long measureId;
	private Integer measure = 0;

	// 新加试看视频相关字段
	// 试看视频的转码
	private String sampleRequestId;
	private String sampleJobId;
	private Integer sampleTranscodeStatus;
	private String sampleTransedVideoPath;
	private Integer sampleTotalTime;

	@ApiModelProperty(value = "是否有分发推荐的封面和标题 1 有 0 无 传空或者不传默认为0")
	private Integer isRecommendShare = 0;

	@ApiModelProperty(value = "0 默认 1 第四范式")
	private Integer recommendSource = 0;
	@ApiModelProperty(value = "视频上报数据，上报时原样返回")
	private String videoReportMeta;

	@ApiModelProperty(value = "审核状态  1 审核中，2 不通过 3 待修改，4 自己可见 5 通过")
	private Integer auditStatus;

	@ApiModelProperty(value = "App 审核状态  1 审核中，2 不通过 3 待修改，4 自己可见 5 通过")
	private Integer appAuditStatus;

	@JsonIgnore
	private String auditTranscationId;
	@ApiModelProperty(value = "审核不通过或者待修改的原因")
	private String auditReason;

	@JsonIgnore
	private Integer videoLevelCode;
	@ApiModelProperty(value = "0 综合模块 1 feed流 ")
	private Integer sharePageType;
	@ApiModelProperty(value = "推荐状态")
	private Integer recommendStatus;
	@ApiModelProperty(value = "h5剪切板内容")
	private String cutVoStr;
    @ApiModelProperty(value = "推荐链路ID")
    private String recommendId;
    @ApiModelProperty(value = "推荐日志对象")
	private String recommendLogVO;
	@ApiModelProperty(value = "app的推荐状态")
    private Integer appRecommendStatus;
	@ApiModelProperty(value = "乐活圈-推荐状态")
	private Integer lehuoquanRecommendStatus;
	@ApiModelProperty(value = "流量池信息，格式：#流量池ID#分级ID#级别Level#生命周期ID")
	private String flowPool;
	@ApiModelProperty(value = "是否是RUOV热门标签视频 0 否 1 是")
	private Integer isTopRUOV = 0;
	@ApiModelProperty(value = "数据原始状态，1有效，2 已删除，3 已屏蔽,4关注可见，5分享可见 6自己可见")
	private Integer originalStatus;
	@ApiModelProperty(value = "冻结状态: -1:无须解冻  0:待解冻  1:解冻中  2:解冻完成")
	private Integer frozenStatus;
//	@ApiModelProperty(value = "是否有权限播放高清视频：0 否 1 是")
//	private Integer hasMultiBitRatePermission;
//	@ApiModelProperty(value = "多码率信息")
//	private List<VideoMultiBitRateVO> multiBitRate;
	@ApiModelProperty(value = "是否是流量池视频 1是 2 否")
	private Integer isInFlowPool;

	@ApiModelProperty(value = "推荐traceId")
	private String recomTraceId;

	@ApiModelProperty(value = "是否可以被赞赏，0：否，1：是")
	private Integer canBeReward = 0;
	@ApiModelProperty(value = "被赞赏次数")
	private Integer rewardCount = 0;
	@ApiModelProperty(value = "是否可以在h5被赞赏，0：否，1：是")
	private Integer h5CanBeReward = 0;

	@ApiModelProperty(value = "流量类型")
	private Integer trafficType;
	@ApiModelProperty(value = "封面流量类型")
	private Integer coverTrafficType;

	@ApiModelProperty(value = "h265转码地址")
	private String h265VideoPath;
	@ApiModelProperty(value = "h265码率")
	private Long h265BitRate;
	@ApiModelProperty(value = "AI标识")
	private Integer aiLevel = 0;
	@ApiModelProperty(value = "AI视频提示文案")
	private String aiAlertText;

}
