package com.platform.modules.live.entity;

import java.io.Serializable;
import java.util.Date;

import org.hibernate.validator.constraints.NotBlank;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
 * 直播报道
 * 
 * @author weiyan
 * @email 
 * @date 2019-01-19 12:13:39
 */
@TableName("live_report")
@ApiModel("直播报道表")
public class LiveReportEntity implements Serializable {
	private static final long serialVersionUID = 1L;
	
	//数据ID
	@TableId
	@ApiModelProperty(value = "id")
	@NotBlank(message = "id不能为空")
	private Integer id;
	//现场ID
	@NotBlank(message = "现场ID不能为空")
	@ApiModelProperty(value = "现场ID", required = true)
	private Integer sceneId;
	//报道类型 1视频 2音频 3图文 4文字
	@NotBlank(message = "报道类型不能为空")
	@ApiModelProperty(value = "报道类型 1视频 2音频 3图文 4文字", required = true)
	private Integer reportType;
	//报道标题
	@ApiModelProperty(value = "报道标题", hidden=true)
	private String title;
	//报道记者ID
	@ApiModelProperty(value = "报道记者ID", hidden=true)
	private Long userId;	
	//图片路径，多张用,分割
	@ApiModelProperty(value = "图片路径，多张用,分割")
	private String imgList;
	//视频、音频回看URL地址
	@ApiModelProperty(value = "视频、音频回看URL地址")
	private String mediaUrl;
	//报道内容
	@ApiModelProperty(value = "报道内容")
	private String content;
	//报道内容链接
	@ApiModelProperty(value = "报道内容链接")
	private String contentHref;
	//报道时间
	@ApiModelProperty(value = "报道时间")
	private Date reportDate;
	//创建人
	@ApiModelProperty(value = "创建人", hidden=true)
	private Long createId;
	//创建时间
	@ApiModelProperty(value = "创建时间")
	private Date createDate;
	//是否删除 0未删除 1 删除
	@ApiModelProperty(value = "是否删除 0未删除 1 删除", hidden=true)
	private Integer isDelete;
	//是否发布 0未发布 1 已发布
	@ApiModelProperty(value = "是否发布 0未发布 1 已发布")
	private Integer isRelease;
	//是否置顶 0未置顶 1 置顶
	@ApiModelProperty(value = "是否置顶 0未置顶 1 置顶")
	private Integer isTop;
	//排序，数字越大，排序越靠前
	@ApiModelProperty(value = "排序，数字越大，排序越靠前")
	private Integer priority;
	//发布人
	@ApiModelProperty(value = "发布人Id", hidden=true)
	private Long releaseUser;
	//发布时间
	@ApiModelProperty(value = "发布时间")
	private Date releaseDate;
	//最后操作人
	@ApiModelProperty(value = "最后操作人", hidden=true)
	private Long lastUpdateUser;
	//最后操作时间
	@ApiModelProperty(value = "最后操作时间")
	private Date lastUpdateDate;
	//音视频时长
	@ApiModelProperty(value = "音视频时长")
	private Long fileDuration;
	//文件大小
	@ApiModelProperty(value = "文件大小")
	private Long fileSize;
	
	@ApiModelProperty(value = "记者名")
	private String reporterName;
	@TableField(exist=false)
	@ApiModelProperty(value = "最后操作人")
	private String lastUpdateUserName;
	@TableField(exist=false)
	@ApiModelProperty(value = "发布人")
	private String releaseUserName;
	/**
	 * 租户ID
	 * */
	@ApiModelProperty(value = "租户ID")
	private Long tenantId;
	/**
	 * 相关报道
	 * */
	@ApiModelProperty(value = "相关报道")
	private String relatedReport;

	public void init() {
		if(null == this.createDate) {
			this.createDate = new Date();
		}
		if(null == this.isDelete) {
			this.isDelete = new Integer(0);
		}
		if(null == this.isRelease) {
			this.isRelease = new Integer(0);
		}
		if(null == this.isTop){
			this.isTop = new Integer(0);
		}
		if(null == this.priority){
			this.priority = new Integer(0);
		}
	}

	/**
	 * 设置：数据ID
	 */
	public void setId(Integer id) {
		this.id = id;
	}
	/**
	 * 获取：数据ID
	 */
	public Integer getId() {
 		return id;
	}
	/**
	 * 设置：现场ID
	 */
	public void setSceneId(Integer sceneId) {
		this.sceneId = sceneId;
	}
	/**
	 * 获取：现场ID
	 */
	public Integer getSceneId() {
		return sceneId;
	}
	/**
	 * 设置：报道类型 1视频 2音频 3图文 4文字
	 */
	public void setReportType(Integer reportType) {
		this.reportType = reportType;
	}
	/**
	 * 获取：报道类型 1视频 2音频 3图文 4文字
	 */
	public Integer getReportType() {
		return reportType;
	}
	/**
	 * 设置：报道标题
	 */
	public void setTitle(String title) {
		this.title = title;
	}
	/**
	 * 获取：报道标题
	 */
	public String getTitle() {
		return title;
	}
	/**
	 * 设置：报道记者ID
	 */
	public void setUserId(Long userId) {
		this.userId = userId;
	}
	/**
	 * 获取：报道记者ID
	 */
	public Long getUserId() {
		return userId;
	}
	/**
	 * 设置：图片路径，多张用,分割
	 */
	public void setImgList(String imgList) {
		this.imgList = imgList;
	}
	/**
	 * 获取：图片路径，多张用,分割
	 */
	public String getImgList() {
		return imgList;
	}
	/**
	 * 设置：视频、音频回看URL地址
	 */
	public void setMediaUrl(String mediaUrl) {
		this.mediaUrl = mediaUrl;
	}
	/**
	 * 获取：视频、音频回看URL地址
	 */
	public String getMediaUrl() {
		return mediaUrl;
	}
	/**
	 * 设置：报道内容
	 */
	public void setContent(String content) {
		this.content = content;
	}
	/**
	 * 获取：报道内容
	 */
	public String getContent() {
		return content;
	}
	/**
	 * 设置：创建人
	 */
	public void setCreateId(Long createId) {
		this.createId = createId;
	}
	/**
	 * 获取：创建人
	 */
	public Long getCreateId() {
		return createId;
	}
	/**
	 * 设置：创建时间
	 */
	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}
	/**
	 * 获取：创建时间
	 */
	public Date getCreateDate() {
		return createDate;
	}
	/**
	 * 设置：是否删除 0未删除 1 删除
	 */
	public void setIsDelete(Integer isDelete) {
		this.isDelete = isDelete;
	}
	/**
	 * 获取：是否删除 0未删除 1 删除
	 */
	public Integer getIsDelete() {
		return isDelete;
	}
	/**
	 * 设置：是否发布 0未发布 1 已发布
	 */
	public void setIsRelease(Integer isRelease) {
		this.isRelease = isRelease;
	}
	/**
	 * 获取：是否发布 0未发布 1 已发布
	 */
	public Integer getIsRelease() {
		return isRelease;
	}
	/**
	 * 获取：是否置顶 0未置顶 1 置顶
	 */
	public Integer getIsTop() {
		return isTop;
	}
	/**
	 * 设置：是否置顶 0未置顶 1 置顶
	 */
	public void setIsTop(Integer isTop) {
		this.isTop = isTop;
	}
	/**
	 * 获取：排序，数字越大，排序越靠前
	 */
	public Integer getPriority() {
		return priority;
	}
	/**
	 * 设置：排序，数字越大，排序越靠前
	 */
	public void setPriority(Integer priority) {
		this.priority = priority;
	}

	/**
	 * 设置：发布人
	 */
	public void setReleaseUser(Long releaseUser) {
		this.releaseUser = releaseUser;
	}
	/**
	 * 获取：发布人
	 */
	public Long getReleaseUser() {
		return releaseUser;
	}
	/**
	 * 设置：发布时间
	 */
	public void setReleaseDate(Date releaseDate) {
		this.releaseDate = releaseDate;
	}
	/**
	 * 获取：发布时间
	 */
	public Date getReleaseDate() {
		return releaseDate;
	}
	/**
	 * 设置：最后操作人
	 */
	public void setLastUpdateUser(Long lastUpdateUser) {
		this.lastUpdateUser = lastUpdateUser;
	}
	/**
	 * 获取：最后操作人
	 */
	public Long getLastUpdateUser() {
		return lastUpdateUser;
	}
	/**
	 * 设置：最后操作时间
	 */
	public void setLastUpdateDate(Date lastUpdateDate) {
		this.lastUpdateDate = lastUpdateDate;
	}
	/**
	 * 获取：最后操作时间
	 */
	public Date getLastUpdateDate() {
		return lastUpdateDate;
	}
	/**
	 * 设置：记者名
	 */
	public String getReporterName() {
		return reporterName;
	}
	/**
	 * 获取：记者名
	 */
	public void setReporterName(String reporterName) {
		this.reporterName = reporterName;
	}
	/**
	 * 设置：最后修改人名
	 */
	public String getLastUpdateUserName() {
		return lastUpdateUserName;
	}
	/**
	 * 获取：最后修改人名
	 */
	public void setLastUpdateUserName(String lastUpdateUserName) {
		this.lastUpdateUserName = lastUpdateUserName;
	}
	/**
	 * 设置：发布人名
	 */
	public String getReleaseUserName() {
		return releaseUserName;
	}
	/**
	 * 获取：发布人名
	 */
	public void setReleaseUserName(String releaseUserName) {
		this.releaseUserName = releaseUserName;
	}

	public Date getReportDate() {
		return reportDate;
	}

	public void setReportDate(Date reportDate) {
		this.reportDate = reportDate;
	}

	public Long getFileDuration() {
		return fileDuration;
	}

	public void setFileDuration(Long fileDuration) {
		this.fileDuration = fileDuration;
	}

	public Long getFileSize() {
		return fileSize;
	}

	public void setFileSize(Long fileSize) {
		this.fileSize = fileSize;
	}

	public String getContentHref() {
		return contentHref;
	}

	public void setContentHref(String contentHref) {
		this.contentHref = contentHref;
	}

	public Long getTenantId() {
		return tenantId;
	}

	public void setTenantId(Long tenantId) {
		this.tenantId = tenantId;
	}

	public String getRelatedReport() {
		return relatedReport;
	}

	public void setRelatedReport(String relatedReport) {
		this.relatedReport = relatedReport;
	}
}
