package com.qxueyou.scc.teach.live.model;
|
|
import java.io.Serializable;
|
import java.math.BigInteger;
|
import java.util.Date;
|
import java.util.List;
|
|
import javax.persistence.CascadeType;
|
import javax.persistence.Column;
|
import javax.persistence.Entity;
|
import javax.persistence.FetchType;
|
import javax.persistence.GeneratedValue;
|
import javax.persistence.Id;
|
import javax.persistence.JoinColumn;
|
import javax.persistence.JoinTable;
|
import javax.persistence.ManyToMany;
|
import javax.persistence.OneToMany;
|
import javax.persistence.OneToOne;
|
import javax.persistence.Table;
|
import javax.persistence.Transient;
|
|
import org.hibernate.annotations.CollectionId;
|
import org.hibernate.annotations.GenericGenerator;
|
import org.hibernate.annotations.Type;
|
import org.hibernate.annotations.Where;
|
import org.springframework.format.annotation.DateTimeFormat;
|
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
import com.qxueyou.scc.admin.classes.model.ClsClass;
|
import com.qxueyou.scc.base.model.ITrace;
|
import com.qxueyou.scc.media.model.MediaVideo;
|
import com.qxueyou.scc.media.model.SchLiveReVideo;
|
import com.qxueyou.scc.media.model.VideoLiveChatroom;
|
import com.qxueyou.scc.teach.subject.model.Subject;
|
|
|
/**
|
* ÊÓÆµÖ±²¥±í ʵÌå
|
* @author ody.yuan
|
*
|
*/
|
/**
|
* @author ody.yuan
|
*
|
*/
|
@Entity
|
@Table(name="MEDIA_VIDEO_LIVE")
|
public class MediaVideoLive implements Serializable, ITrace {
|
|
/**
|
* UID
|
*/
|
private static final long serialVersionUID = -313139100670956005L;
|
|
/** ²Ý¸å,ÐÂÔöÖ±²¥Ä¬ÈÏ״̬ */
|
public static final short STATUS_LIVE_DRAFT = 0;
|
|
/** Ô¤¸æ,µ±Ç°²»ÔÚÖ±²¥×´Ì¬ */
|
public static final short STATUS_LIVE_ORDER = 1;
|
|
/** Ö±²¥ ÖУ¬ÕýÔÚÖ±²¥*/
|
public static final short STATUS_LIVE_LIVE = 2;
|
|
/** »Ø·Å */
|
public static final short STATUS_LIVE_REVIEW = 3;
|
|
/** ·ÏÆú£¬ºǫ́²éѯ²»µ½ÍøÒ×Ö±²¥µÄ·¿¼äÐÅϢ״̬ */
|
public static final short STATUS_LIVE_TAKEOFF = 4;
|
|
/** ÔÝÍ£ £¬Ö±²¥ÖеÄÔÝͣ״̬*/
|
public static final short STATUS_LIVE_PAUSE = 5;
|
|
/** »Ø·ÅÏÂÔØÖÐ £¬ÏÂÔØÍê³Éºó²ÅÊǻطÅ״̬*/
|
public static final short STATUS_LIVE_DOWNLOAD = 6;
|
|
/** »Ø·ÅÏÂÔØÊ§°Ü*/
|
public static final short STATUS_LIVE_DOWNLOAD_ERROR = 8;
|
|
/** »Ø·ÅÏÂÔØ³É¹¦*/
|
public static final short STATUS_LIVE_DOWNLOAD_SUCCESS = 7;
|
|
/** Í£Ö¹Ö±²¥*/
|
public static final short STATUS_LIVE_STOP = 9;
|
|
/** ´ý±à¼×´Ì¬*/
|
public static final short STATUS_LIVE_PREPARED = 10;
|
|
/** Ô¤´¦Àíʧ°Ü*/
|
public static final short STATUS_LIVE_PREPARE_FAILD = 11;
|
|
/** ±à¼×¼±¸ÖÐ*/
|
public static final short STATUS_LIVE_PREPARED_READY = 12;
|
|
/** ½öÏް༶ */
|
public static final String PERMISSION_STATUS_LIMITCLASS = "limitClass";
|
|
/** ¹«¿ª */
|
public static final String PERMISSION_STATUS_PUBLIC = "public";
|
|
/** ½öÏÞ»ú¹¹ */
|
public static final String PERMISSION_STATUS_LIMITORG = "limitOrg";
|
|
/** Ô¤Ô¼¹Û¿´ */
|
public static final String PERMISSION_STATUS_ORDERWATCH = "orderWatch";
|
|
/** Ö±²¥ */
|
public static final int TYPE_LIVE_LIVE = 1;
|
|
/** »Ø·Å */
|
public static final int TYPE_LIVE_DOWNLOAD = 2;
|
|
/** Ö÷¼ü */
|
@Id
|
@GeneratedValue(generator = "hibernate-uuid")
|
@GenericGenerator(name = "hibernate-uuid", strategy = "uuid")
|
@Column(name="VIDEO_LIVE_ID", unique=true, nullable=false, length=32)
|
private String videoLiveId;
|
|
/** ´´½¨ÕßID */
|
@Column(name="CREATE_ID", length=32)
|
private String createId;
|
|
/** ´´½¨Ê±¼ä */
|
@Column(name="CREATE_TIME", nullable=false)
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
private Date createTime;
|
|
/** ´´½¨ÈË */
|
@Column(name="CREATOR", length=100)
|
private String creator;
|
|
/** ɾ³ý±êÖ¾ */
|
@Column(name="DELETE_FLAG", nullable=false)
|
private boolean deleteFlag;
|
|
/** ÊÇ·ñ×Ô¶¯Éú³É»Ø·Å£¨0¡¢ÊÇ£¬1¡¢·ñ¡£Ä¬ÈÏΪ0£© */
|
@Column(name="EDIT_REPLAY_FLAG", nullable=false)
|
private boolean editReplayFlag;
|
|
/** ÐÞ¸ÄÈËID */
|
@Column(name="UPDATE_ID", length=32)
|
private String updateId;
|
|
/** ÐÞ¸Äʱ¼ä */
|
@Column(name="UPDATE_TIME", nullable=false)
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
private Date updateTime;
|
|
/** ÐÞ¸ÄÈË */
|
@Column(name="UPDATOR", length=100)
|
private String updator;
|
|
/** Ãû³Æ */
|
@Column(name="NAME", length=128)
|
private String name;
|
|
/** ״̬ 1:Ô¤¸æ 2 Ö±²¥ 3 »Ø·Å 4 ·ÏÆú */
|
@Column(name="STATUS")
|
private short status;
|
|
/** Ö±²¥ÈËID */
|
@Column(name="ANCHOR_ID", length=32)
|
private String anchorId;
|
|
/** Ö±²¥ÈË */
|
@Column(name="ANCHOR", length=128)
|
private String anchor;
|
|
/** Ô¤¸æÍ¼Æ¬URL */
|
@Column(name="PREVIEW_IMG_URL",length=256)
|
private String previewImgUrl;
|
|
/** ×ÉѯͼƬURL */
|
@Column(name="CONSULT_IMG_URL",length=256)
|
private String consultImgUrl;
|
|
/** Ô¤¸æÆ¬ÊÓÆµURL */
|
@Column(name="PREVIEW_VIDEO_URL",length=256)
|
private String previewVideoUrl;
|
|
/** Ô¤Ô¼´ÎÊý */
|
@Column(name="ORDER_TIMES")
|
private Integer orderTimes;
|
|
/** Ö±²¥¹Û¿´ÈË´Î */
|
@Column(name="WATCH_TIMES")
|
private Integer watchTimes;
|
|
/** µãÔÞÈË´Î */
|
@Column(name="PRAISE_TIMES")
|
private Integer praiseTimes;
|
|
/** Ö±²¥×î¸ß¹Û¿´ÈË´Î */
|
@Column(name="WATCH_MAX_TIMES")
|
private Integer watchMaxTimes;
|
|
/** »Ø·Å´ÎÊý */
|
@Column(name="REVIEW_TIMES")
|
private Integer reviewTimes;
|
|
/** ±¨ÃûÈËÊýÉÏÏÞ */
|
@Column(name="WATCHER_LIMIT")
|
private Integer watcherLimit;
|
|
/** ±¸×¢ÏêÇé */
|
@Column(name="REMARK", length=16777215)
|
private String remark;
|
|
/** Ö±²¥Ô¤¼Æ¿ªÊ¼Ê±¼ä */
|
@Column(name="START_TIME")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
private Date startTime;
|
|
/** Ö±²¥Ô¤¼Æ½áÊøÊ±¼ä */
|
@Column(name="END_TIME")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
private Date endTime;
|
|
/** ÊÇ·ñ°´Ê±¿ªÊ¼Ö±²¥£¬Îó²î5·ÖÖÓÄÚ */
|
@Column(name="ON_TIME_FLAG")
|
private boolean onTimeFlag;
|
|
/** ÊÇ·ñÓÐÍê³ÉÖ±²¥ */
|
@Column(name="COMPLETE_FLAG")
|
private boolean completeFlag;
|
|
/** ÌÚÑ¶ÔÆ·¿¼äºÅÂë */
|
@Column(name="TECENT_LIVE_NUMBER", length=128)
|
private String tecentLiveNumber;
|
|
/** ÍøÒ×ÔÆÐÅ·¿¼äºÅÂë */
|
@Column(name="WY_LIVE_NUMBER", length=128)
|
private String wyLiveNumber;
|
|
/** ÍøÒ×ÔÆÐÅÖ±²¥ÍÆÁ÷url */
|
@Column(name="WY_PUSH_URL", length=128)
|
private String pushUrl;
|
|
/** ÍøÒ×ÔÆÐÅÖ±²¥ÀÁ÷£ºhttpPullUrl */
|
@Column(name="WY_HTTP_PULL_URL", length=128)
|
private String httpPullUrl;
|
|
/** ÍøÒ×ÔÆÐÅÖ±²¥ÀÁ÷£ºhlsPullUrl */
|
@Column(name="WY_HLS_PULL_URL", length=128)
|
private String hlsPullUrl;
|
|
/** ÍøÒ×ÔÆÐÅÖ±²¥ÀÁ÷£ºrtmpPullUrl */
|
@Column(name="WY_RTMP_PULL_URL", length=128)
|
private String rtmpPullUrl;
|
|
/** ȨÏÞ£ºlimitClass£º½öÏް༶ public£º¹«¿ª orderWatch:Ô¤Ô¼¹Û¿´ limitOrg:½öÏÞ»ú¹¹ */
|
@Column(name="PERMISSION", length=32)
|
private String permission;
|
|
/** ÇåÎú¶È LD:Á÷³© SD:±êÇå HD:¸ßÇå */
|
@Column(name="DEFINITION", length=32)
|
private String definition;
|
|
/** Ô¤¼ÆÊ±³¤ µ¥Î»£º·ÖÖÓ */
|
@Column(name="EXPECTED_TIMES")
|
private Integer expectedTimes;
|
|
/** ʵ¼Ê²¥·Åʱ³¤ µ¥Î»£ºÃë */
|
@Column(name="PLAY_TIMES")
|
private BigInteger playTimes;
|
|
/** ·ÖÏí´ÎÊý */
|
@Column(name="SHARE_TIMES")
|
private BigInteger shareTimes;
|
|
/** À©Õ¹×ֶΣ¨ÏÔʾÒì³£¡¢Ô¤´¦Àíʧ°Ü¼°½ø¶ÈÌõ£© */
|
@Column(name="ATTRIBUTE")
|
private String attribute;
|
|
/** ÍøÒ×״̬»Øµ÷£¬¼Ç¼×îºóÂ¼ÖÆÊ±¼ä */
|
@Column(name="LAST_RECORD_TIME")
|
@JsonIgnore
|
private long lastRecordTime;
|
|
/** ÌÆÇÅ»áÒéid */
|
@Column(name="TQ_MEETING_ID", length=32)
|
private String meetingId;
|
|
/** ÌÆÇżÓÈë¿ÎÌÃÃÜÂë */
|
@Column(name="TQ_MEETING_PWD", length=32)
|
private String meetingPwd;
|
|
@OneToMany(fetch = FetchType.LAZY, mappedBy = "videoLive")
|
@JsonIgnore
|
private List<SchLiveReVideo> liveReVideos;
|
|
@OneToMany(fetch = FetchType.LAZY, mappedBy = "mediaVideoLive")
|
@JsonIgnore
|
private List<VideoLiveChatroom> videoLiveChatrooms;
|
|
@ManyToMany(fetch = FetchType.LAZY, cascade = CascadeType.REFRESH)
|
@JoinTable(name = "MEDIA_VIDEO_LIVE_RE_CLASS", joinColumns = {
|
@JoinColumn(name = "LIVE_ID") },
|
inverseJoinColumns = { @JoinColumn(name = "CLASS_ID") })
|
@GeneratedValue(generator = "hibernate-uuid")
|
@GenericGenerator(name = "hibernate-uuid", strategy = "uuid")
|
@CollectionId(
|
columns = @Column(name="LIVE_RE_CLASS_ID"),
|
type=@Type(type="string"),
|
generator = "hibernate-uuid"
|
)
|
@Where(clause="DELETE_FLAG=0")
|
private List<ClsClass> classes;
|
|
@Transient
|
private List<MediaVideo> lstVideoVO;
|
|
@Column(name="SUBJECT_ID")
|
private String subjectId;
|
|
@Column(name="SUBJECT_NAME")
|
private String subjectName;
|
|
@OneToOne(cascade = CascadeType.ALL,fetch = FetchType.LAZY)
|
@JoinColumn(name = "SUBJECT_ID",referencedColumnName="SUBJECT_ID",updatable=false,insertable=false)
|
@JsonIgnore
|
private Subject subject;
|
|
@Transient
|
private int lotteryItemCount;
|
|
public int getLotteryItemCount() {
|
return lotteryItemCount;
|
}
|
|
public boolean getEditReplayFlag() {
|
return editReplayFlag;
|
}
|
|
public void setEditReplayFlag(boolean editReplayFlag) {
|
this.editReplayFlag = editReplayFlag;
|
}
|
|
public void setLotteryItemCount(int lotteryItemCount) {
|
this.lotteryItemCount = lotteryItemCount;
|
}
|
|
public List<MediaVideo> getLstVideoVO() {
|
return lstVideoVO;
|
}
|
|
public void setLstVideoVO(List<MediaVideo> lstVideoVO) {
|
this.lstVideoVO = lstVideoVO;
|
}
|
|
public String getVideoLiveId() {
|
return videoLiveId;
|
}
|
|
public void setVideoLiveId(String videoLiveId) {
|
this.videoLiveId = videoLiveId;
|
}
|
|
public String getCreateId() {
|
return createId;
|
}
|
|
public void setCreateId(String createId) {
|
this.createId = createId;
|
}
|
|
public Date getCreateTime() {
|
return createTime;
|
}
|
|
public void setCreateTime(Date createTime) {
|
this.createTime = createTime;
|
}
|
|
public String getCreator() {
|
return creator;
|
}
|
|
public void setCreator(String creator) {
|
this.creator = creator;
|
}
|
|
public boolean getDeleteFlag() {
|
return deleteFlag;
|
}
|
|
public void setDeleteFlag(boolean deleteFlag) {
|
this.deleteFlag = deleteFlag;
|
}
|
|
public String getUpdateId() {
|
return updateId;
|
}
|
|
public void setUpdateId(String updateId) {
|
this.updateId = updateId;
|
}
|
|
public Date getUpdateTime() {
|
return updateTime;
|
}
|
|
public void setUpdateTime(Date updateTime) {
|
this.updateTime = updateTime;
|
}
|
|
public String getUpdator() {
|
return updator;
|
}
|
|
public void setUpdator(String updator) {
|
this.updator = updator;
|
}
|
|
public String getName() {
|
return name;
|
}
|
|
public void setName(String name) {
|
this.name = name;
|
}
|
|
public short getStatus() {
|
return status;
|
}
|
|
public void setStatus(short status) {
|
this.status = status;
|
}
|
|
public String getAnchorId() {
|
return anchorId;
|
}
|
|
public void setAnchorId(String anchorId) {
|
this.anchorId = anchorId;
|
}
|
|
public String getAnchor() {
|
return anchor;
|
}
|
|
public void setAnchor(String anchor) {
|
this.anchor = anchor;
|
}
|
|
public String getPreviewImgUrl() {
|
return previewImgUrl;
|
}
|
|
public void setPreviewImgUrl(String previewImgUrl) {
|
this.previewImgUrl = previewImgUrl;
|
}
|
|
public String getPreviewVideoUrl() {
|
return previewVideoUrl;
|
}
|
|
public void setConsultImgUrl(String consultImgUrl) {
|
this.consultImgUrl = consultImgUrl;
|
}
|
|
public String getConsultImgUrl() {
|
return consultImgUrl;
|
}
|
|
public void setPreviewVideoUrl(String previewVideoUrl) {
|
this.previewVideoUrl = previewVideoUrl;
|
}
|
|
public Integer getOrderTimes() {
|
return orderTimes;
|
}
|
|
public void setOrderTimes(Integer orderTimes) {
|
this.orderTimes = orderTimes;
|
}
|
|
public Integer getWatchTimes() {
|
return watchTimes;
|
}
|
|
public void setWatchTimes(Integer watchTimes) {
|
this.watchTimes = watchTimes;
|
}
|
|
public String getRemark() {
|
return remark;
|
}
|
|
public void setRemark(String remark) {
|
this.remark = remark;
|
}
|
|
public Date getStartTime() {
|
return startTime;
|
}
|
|
public void setStartTime(Date startTime) {
|
this.startTime = startTime;
|
}
|
|
public Date getEndTime() {
|
return endTime;
|
}
|
|
public void setEndTime(Date endTime) {
|
this.endTime = endTime;
|
}
|
|
public boolean getOnTimeFlag() {
|
return onTimeFlag;
|
}
|
|
public void setOnTimeFlag(boolean onTimeFlag) {
|
this.onTimeFlag = onTimeFlag;
|
}
|
|
public boolean getCompleteFlag() {
|
return completeFlag;
|
}
|
|
public void setCompleteFlag(boolean completeFlag) {
|
this.completeFlag = completeFlag;
|
}
|
|
public String getTecentLiveNumber() {
|
return tecentLiveNumber;
|
}
|
|
public void setTecentLiveNumber(String tecentLiveNumber) {
|
this.tecentLiveNumber = tecentLiveNumber;
|
}
|
|
public List<SchLiveReVideo> getLiveReVideos() {
|
return liveReVideos;
|
}
|
|
public void setLiveReVideos(List<SchLiveReVideo> liveReVideos) {
|
this.liveReVideos = liveReVideos;
|
}
|
|
public List<VideoLiveChatroom> getVideoLiveChatrooms() {
|
return videoLiveChatrooms;
|
}
|
|
public void setVideoLiveChatrooms(List<VideoLiveChatroom> videoLiveChatrooms) {
|
this.videoLiveChatrooms = videoLiveChatrooms;
|
}
|
|
public Integer getWatcherLimit() {
|
return watcherLimit;
|
}
|
|
public void setWatcherLimit(Integer watcherLimit) {
|
this.watcherLimit = watcherLimit;
|
}
|
|
public String getWyLiveNumber() {
|
return wyLiveNumber;
|
}
|
|
public void setWyLiveNumber(String wyLiveNumber) {
|
this.wyLiveNumber = wyLiveNumber;
|
}
|
|
public String getPushUrl() {
|
return pushUrl;
|
}
|
|
public void setPushUrl(String pushUrl) {
|
this.pushUrl = pushUrl;
|
}
|
|
public String getHttpPullUrl() {
|
return httpPullUrl;
|
}
|
|
public void setHttpPullUrl(String httpPullUrl) {
|
this.httpPullUrl = httpPullUrl;
|
}
|
|
public String getHlsPullUrl() {
|
return hlsPullUrl;
|
}
|
|
public void setHlsPullUrl(String hlsPullUrl) {
|
this.hlsPullUrl = hlsPullUrl;
|
}
|
|
public String getRtmpPullUrl() {
|
return rtmpPullUrl;
|
}
|
|
public void setRtmpPullUrl(String rtmpPullUrl) {
|
this.rtmpPullUrl = rtmpPullUrl;
|
}
|
|
public Integer getWatchMaxTimes() {
|
return watchMaxTimes;
|
}
|
|
public void setWatchMaxTimes(Integer watchMaxTimes) {
|
this.watchMaxTimes = watchMaxTimes;
|
}
|
|
public Integer getReviewTimes() {
|
return reviewTimes;
|
}
|
|
public void setReviewTimes(Integer reviewTimes) {
|
this.reviewTimes = reviewTimes;
|
}
|
|
public String getPermission() {
|
return permission;
|
}
|
|
public void setPermission(String permission) {
|
this.permission = permission;
|
}
|
|
public String getDefinition() {
|
return definition;
|
}
|
|
public void setDefinition(String definition) {
|
this.definition = definition;
|
}
|
|
public Integer getExpectedTimes() {
|
return expectedTimes;
|
}
|
|
public void setExpectedTimes(Integer expectedTimes) {
|
this.expectedTimes = expectedTimes;
|
}
|
|
public BigInteger getShareTimes() {
|
return shareTimes;
|
}
|
|
public void setShareTimes(BigInteger shareTimes) {
|
this.shareTimes = shareTimes;
|
}
|
|
public BigInteger getPlayTimes() {
|
return playTimes;
|
}
|
|
public void setPlayTimes(BigInteger playTimes) {
|
this.playTimes = playTimes;
|
}
|
|
public String getAttribute() {
|
return attribute;
|
}
|
|
public void setAttribute(String attribute) {
|
this.attribute = attribute;
|
}
|
|
public long getLastRecordTime() {
|
return lastRecordTime;
|
}
|
|
public void setLastRecordTime(long lastRecordTime) {
|
this.lastRecordTime = lastRecordTime;
|
}
|
|
public String getMeetingId() {
|
return meetingId;
|
}
|
|
public void setMeetingId(String meetingId) {
|
this.meetingId = meetingId;
|
}
|
|
public String getMeetingPwd() {
|
return meetingPwd;
|
}
|
|
public void setMeetingPwd(String meetingPwd) {
|
this.meetingPwd = meetingPwd;
|
}
|
|
public String getSubjectId() {
|
return subjectId;
|
}
|
|
public void setSubjectId(String subjectId) {
|
this.subjectId = subjectId;
|
}
|
|
public String getSubjectName() {
|
return subjectName;
|
}
|
|
public void setSubjectName(String subjectName) {
|
this.subjectName = subjectName;
|
}
|
|
public List<ClsClass> getClasses() {
|
return classes;
|
}
|
|
public void setClasses(List<ClsClass> classes) {
|
this.classes = classes;
|
}
|
|
public Integer getPraiseTimes() {
|
return praiseTimes;
|
}
|
|
public void setPraiseTimes(Integer praiseTimes) {
|
this.praiseTimes = praiseTimes;
|
}
|
|
public Subject getSubject() {
|
return subject;
|
}
|
|
public void setSubject(Subject subject) {
|
this.subject = subject;
|
}
|
|
}
|