
package com.tmerclub.cloud.live.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * 直播间DTO
 * @author TRACK
 */
public class LiveRoomDTO{
    private static final long serialVersionUID = 1L;

    @Schema(description = "直播间信息")
    private Long roomId;

    @Schema(description = "店铺id")
    private Long shopId;

    @Schema(description = "直播间名称")
    private String name;

    @Schema(description = "主播昵称")
    private String nickName;

    @Schema(description = "主播手机号")
    private String userMobile;

    @Schema(description = "主播用户id")
    private Long userId;

    @Schema(description = "直播间状态 0.未开始 1.直播中 2.已结束 3.暂停中 -1.违规下架")
    private Integer liveStatus;

    @Schema(description = "直播背景图")
    private String coverImg;

    @Schema(description = "主播分享图")
    private String shareImg;

    @Schema(description = "直播封面图")
    private String feedsImg;

    @Schema(description = "是否置顶 1.是 0.不是")
    private Integer roomTop;

    @Schema(description = "直播开始时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    @Schema(description = "直播结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    @Schema(description = "下线备注")
    private String remark;

    @Schema(description = "用户id列表")
    private List<Long> userIds;

    @Schema(description = "商品id列表")
    private List<Long> spuIds;

    @Schema(description = "搜索类型 1.搜索直播间信息 2.搜索商品名 3.搜索主播昵称")
    private Integer searchType;

    @Schema(description = "商品名")
    private String spuName;

    public Long getRoomId() {
        return roomId;
    }

    public void setRoomId(Long roomId) {
        this.roomId = roomId;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getUserMobile() {
        return userMobile;
    }

    public void setUserMobile(String userMobile) {
        this.userMobile = userMobile;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Integer getLiveStatus() {
        return liveStatus;
    }

    public void setLiveStatus(Integer liveStatus) {
        this.liveStatus = liveStatus;
    }

    public String getCoverImg() {
        return coverImg;
    }

    public void setCoverImg(String coverImg) {
        this.coverImg = coverImg;
    }

    public String getShareImg() {
        return shareImg;
    }

    public void setShareImg(String shareImg) {
        this.shareImg = shareImg;
    }

    public String getFeedsImg() {
        return feedsImg;
    }

    public void setFeedsImg(String feedsImg) {
        this.feedsImg = feedsImg;
    }

    public Integer getRoomTop() {
        return roomTop;
    }

    public void setRoomTop(Integer roomTop) {
        this.roomTop = roomTop;
    }

    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 String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public List<Long> getUserIds() {
        return userIds;
    }

    public void setUserIds(List<Long> userIds) {
        this.userIds = userIds;
    }

    public List<Long> getSpuIds() {
        return spuIds;
    }

    public void setSpuIds(List<Long> spuIds) {
        this.spuIds = spuIds;
    }

    public Integer getSearchType() {
        return searchType;
    }

    public void setSearchType(Integer searchType) {
        this.searchType = searchType;
    }

    public String getSpuName() {
        return spuName;
    }

    public void setSpuName(String spuName) {
        this.spuName = spuName;
    }

    @Override
    public String toString() {
        return "LiveRoomDTO{" +
                "roomId=" + roomId +
                ", shopId=" + shopId +
                ", name='" + name + '\'' +
                ", nickName='" + nickName + '\'' +
                ", userMobile='" + userMobile + '\'' +
                ", userId=" + userId +
                ", liveStatus=" + liveStatus +
                ", coverImg='" + coverImg + '\'' +
                ", shareImg='" + shareImg + '\'' +
                ", feedsImg='" + feedsImg + '\'' +
                ", roomTop=" + roomTop +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", remark='" + remark + '\'' +
                ", userIds=" + userIds +
                ", spuIds=" + spuIds +
                ", searchType=" + searchType +
                ", spuName='" + spuName + '\'' +
                '}';
    }
}
