package cn.lili.modules.lmk.domain.vo; import cn.lili.base.AbsVo; import cn.lili.modules.lmk.domain.entity.Video; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.BeanUtils; import org.springframework.lang.NonNull; import java.util.Date; import java.util.List; /** * 视频内容展示 * * @author xp * @since 2025-05-16 */ @Data @ApiModel(value = "视频内容响应数据", description = "视频内容响应数据") public class WxVideoVO extends AbsVo { /** 作者id */ @ApiModelProperty("作者id") private String authorId; private String authorName; @ApiModelProperty("作者头像") private String authorAvatar; @ApiModelProperty("是否关注了这个作者") private Boolean subscribeThisAuthor; /** 图片封面 */ @ApiModelProperty("图片封面") private String coverUrl; private String coverFileKey; /** 视频地址 */ @ApiModelProperty("视频地址") private String videoFileKey; private String videoUrl; /** * @see cn.lili.modules.lmk.enums.general.VideoContentTypeEnum */ @ApiModelProperty("视频内容类型:视频、图片") private String videoContentType; /** * @see cn.lili.modules.lmk.enums.general.VideoTypeEnum */ @ApiModelProperty("视频类型:视频、大健康、神厨") private String videoType; @ApiModelProperty("图集-json数组") private String videoImgs; @ApiModelProperty("图集") private List imgs; @ApiModelProperty("视频标签") private List tagList; /** 视频填充模式 */ @ApiModelProperty("视频填充模式") private String videoFit; /** 视频标题 */ @ApiModelProperty("视频标题") private String title; /** 商品信息 */ @ApiModelProperty("商品信息") private List goodsList; @ApiModelProperty("当前用户是否收藏了该视频") private Boolean collected = Boolean.FALSE; /** 收藏数 */ @ApiModelProperty("收藏数") private Long collectNum; /** 评论数 */ @ApiModelProperty("评论数") private Long commentNum; /** 视频拥有的操作 */ @ApiModelProperty("视频支持的操作") private List options; @ApiModelProperty("视频状态") private String status; public static WxVideoVO getVoByEntity(@NonNull Video entity, WxVideoVO vo) { if(vo == null) { vo = new WxVideoVO(); } BeanUtils.copyProperties(entity, vo); return vo; } }