package com.ruoyi.goods.domain.vo;
|
|
import com.alibaba.fastjson2.annotation.JSONField;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
|
import java.util.List;
|
|
/**
|
* @author mitao
|
* @date 2025/1/14
|
*/
|
@Data
|
@ApiModel("直播详情2.0视图对象")
|
public class XiaoeLiveDetailVOV2 {
|
@ApiModelProperty(value = "资源信息")
|
@JSONField(name = "resource_info")
|
private ResourceInfo resourceInfo;
|
@ApiModelProperty(value = "配置信息")
|
@JSONField(name = "module_info")
|
private ModuleInfo moduleInfo;
|
@ApiModelProperty(value = "商品信息")
|
@JSONField(name = "goods_info")
|
private GoodsInfo goodsInfo;
|
@ApiModelProperty(value = "关联信息")
|
@JSONField(name = "relation_info")
|
private RelationInfo relationInfo;
|
@ApiModelProperty(value = "讲师信息")
|
@JSONField(name = "role_info")
|
private List<RelationInfo.RoleInfo> roleInfo;
|
|
@Data
|
@ApiModel(description = "资源信息")
|
public static class ResourceInfo {
|
@ApiModelProperty(value = "店铺id", example = "app_id")
|
@JSONField(name = "app_id")
|
private String appId;
|
@ApiModelProperty(value = "直播ID", example = "id")
|
@JSONField(name = "id")
|
private String id;
|
@ApiModelProperty(value = "直播标题", example = "title")
|
@JSONField(name = "title")
|
private String title;
|
@ApiModelProperty(value = "直播简介", example = "summary")
|
@JSONField(name = "summary")
|
private String summary;
|
@ApiModelProperty(value = "直播详情(仅允许纯文本)", example = "descrb")
|
@JSONField(name = "descrb")
|
private String descrb;
|
@ApiModelProperty(value = "直播类型:0-语音,1-录播直播,2-推流直播", example = "2")
|
@JSONField(name = "alive_type")
|
private Integer aliveType;
|
@ApiModelProperty(value = "预设直播开始时间", example = "2023-05-31 18:00:00")
|
@JSONField(name = "zb_start_at")
|
private String zbStartAt;
|
@ApiModelProperty(value = "预设直播时长,单位:秒", example = "3600")
|
@JSONField(name = "zb_stop_at")
|
private Integer zbStopAt;
|
@ApiModelProperty(value = "详情封面图素材ID", example = "img_material_id")
|
@JSONField(name = "img_material_id")
|
private String imgMaterialId;
|
@ApiModelProperty(value = "宣传封面图素材ID", example = "alive_img_material_id")
|
@JSONField(name = "alive_img_material_id")
|
private String aliveImgMaterialId;
|
@ApiModelProperty(value = "暖场封面图素材ID", example = "aliveroom_img_material_id")
|
@JSONField(name = "aliveroom_img_material_id")
|
private String aliveroomImgMaterialId;
|
@ApiModelProperty(value = "暖场视频封面图素材ID", example = "warm_up_video_cover_material_id")
|
@JSONField(name = "warm_up_video_cover_material_id")
|
private String warmUpVideoCoverMaterialId;
|
@ApiModelProperty(value = "暖场视频素材ID", example = "warm_up_video_material_id")
|
@JSONField(name = "warm_up_video_material_id")
|
private String warmUpVideoMaterialId;
|
@ApiModelProperty(value = "录播视频素材ID", example = "alive_video_material_id")
|
@JSONField(name = "alive_video_material_id")
|
private String aliveVideoMaterialId;
|
|
}
|
|
@Data
|
@ApiModel(description = "配置信息")
|
public static class ModuleInfo {
|
@ApiModelProperty(value = "是否开启回放:0-开启,1-关闭", example = "0")
|
@JSONField(name = "is_lookback")
|
private Integer isLookback;
|
@ApiModelProperty(value = "回放是否允许倍速播放或快进:0-允许,1-禁止", example = "0")
|
@JSONField(name = "play_fast_state_switch")
|
private Integer playFastStateSwitch;
|
@ApiModelProperty(value = "直播模式:0-横屏直播,1-竖屏直播", example = "0")
|
@JSONField(name = "alive_mode")
|
private Integer aliveMode;
|
@ApiModelProperty(value = "回放有效期设置:1-永久,2-限时", example = "1")
|
@JSONField(name = "expire_type")
|
private Integer expireType;
|
@ApiModelProperty(value = "回放过期时间", example = "2023-06-30")
|
@JSONField(name = "expire")
|
private String expire;
|
@ApiModelProperty(value = "暖场设置:1-暖场图,2-暖场视频", example = "1")
|
@JSONField(name = "warm_up")
|
private Integer warmUp;
|
@ApiModelProperty(value = "是否开启完成条件:0-关闭,1-开启", example = "0")
|
@JSONField(name = "is_open_complete_time")
|
private Integer isOpenCompleteTime;
|
@ApiModelProperty(value = "设置最短学习时间(单位:分钟)", example = "0")
|
@JSONField(name = "complete_time")
|
private Integer completeTime;
|
@ApiModelProperty(value = "是否开启联系学员:0-关闭,1-开启", example = "0")
|
@JSONField(name = "is_contact_on")
|
private Integer isContactOn;
|
}
|
|
@Data
|
@ApiModel(description = "商品信息")
|
public static class GoodsInfo {
|
@ApiModelProperty(value = "售卖类型:1-单独售卖、2-关联售卖", example = "1")
|
@JSONField(name = "sale_type")
|
private Integer saleType;
|
@ApiModelProperty(value = "支付类型:1-免费,2-收费,3-加密,4-指定学员可用,5-仅关联上级资源", example = "1")
|
@JSONField(name = "payment_type")
|
private Integer paymentType;
|
@ApiModelProperty(value = "价格(单位:分)", example = "0")
|
@JSONField(name = "piece_price")
|
private Integer piecePrice;
|
@ApiModelProperty(value = "划线价格(单位:分)", example = "0")
|
@JSONField(name = "line_price")
|
private Integer linePrice;
|
@ApiModelProperty(value = "密码", example = "resource_password")
|
@JSONField(name = "resource_password")
|
private String resourcePassword;
|
@ApiModelProperty(value = "上下架:1-下架,0-上架", example = "0")
|
@JSONField(name = "recycle_bin_state")
|
private Integer recycleBinState;
|
@ApiModelProperty(value = "定时上架时间", example = "2023-05-31 17:19:26")
|
@JSONField(name = "start_at")
|
private String startAt;
|
@ApiModelProperty(value = "是否停售:0-否,1-是", example = "0")
|
@JSONField(name = "is_stop_sell")
|
private Integer isStopSell;
|
@ApiModelProperty(value = "商品编码", example = "goods_sn")
|
@JSONField(name = "goods_sn")
|
private String goodsSn;
|
@ApiModelProperty(value = "商品状态:0-可见,1-隐藏,2-删除", example = "0")
|
@JSONField(name = "state")
|
private Integer state;
|
}
|
|
@Data
|
@ApiModel(description = "关联信息")
|
public static class RelationInfo {
|
@ApiModelProperty(value = "资源id")
|
@JSONField(name = "package")
|
private List<String> packageIds;
|
@ApiModelProperty(value = "预留字段,暂未支持")
|
@JSONField(name = "attach_goods")
|
private List<String> attachGoods;
|
@ApiModelProperty(value = "预留字段,暂未支持")
|
@JSONField(name = "tags")
|
private List<String> tags;
|
|
@Data
|
@ApiModel(description = "讲师信息列表")
|
public static class RoleInfo {
|
@ApiModelProperty(value = "自定义身份标签", example = "讲师")
|
@JSONField(name = "role_name")
|
private String roleName;
|
@ApiModelProperty(value = "用户id", example = "u_6688888888889999999")
|
@JSONField(name = "user_id")
|
private String userId;
|
@ApiModelProperty(value = "用户昵称", example = "测试")
|
@JSONField(name = "nickname")
|
private String nickname;
|
@ApiModelProperty(value = "用户头像", example = "avator")
|
@JSONField(name = "avator")
|
private String avator;
|
@ApiModelProperty(value = "是否接受打赏:1-接受打赏,0-不接受打赏", example = "1")
|
@JSONField(name = "is_can_exceptional")
|
private Integer isCanExceptional;
|
}
|
}
|
}
|