package com.gic.haoban.manage.web.vo.content.template;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.gic.content.api.dto.template.ContentTemplateRelationDTO;

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

/**
 * Created by wangzubo on 2023/10/24.
 */
public class ContentTemplateVO implements Serializable {

    private static final long serialVersionUID = -4296234499204281253L;

    /**
     * 主键
     */
    @JsonSerialize(
            using = ToStringSerializer.class
    )
    private Long contentTemplateId;
    /**
     * 模板id
     */
    private String templateId;
    /**
     * 模板名称
     */
    private String templateName;
    /**
     * url
     */
    private String url;
    /**
     * 预览图
     */
    private String preview;
    /**
     * 时长
     */
    private Integer duration;
    /**
     * 比例
     */
    private String scale;
    /**
     * 可替换素材数量
     */
    private Integer slotCount;
    /**
     * 使用次数
     */
    private Integer useCount;

    private Date createTime;

    private Date updateTime;

    private String creatorId;

    private String creatorName;


    /**
     * 关联的类型列表
     */
    private List<ContentTemplateRelationDTO> templateTypeList;

    public Long getContentTemplateId() {
        return contentTemplateId;
    }

    public void setContentTemplateId(Long contentTemplateId) {
        this.contentTemplateId = contentTemplateId;
    }

    public String getTemplateId() {
        return templateId;
    }

    public void setTemplateId(String templateId) {
        this.templateId = templateId;
    }

    public String getTemplateName() {
        return templateName;
    }

    public void setTemplateName(String templateName) {
        this.templateName = templateName;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getPreview() {
        return preview;
    }

    public void setPreview(String preview) {
        this.preview = preview;
    }

    public Integer getDuration() {
        return duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    public String getScale() {
        return scale;
    }

    public void setScale(String scale) {
        this.scale = scale;
    }

    public Integer getSlotCount() {
        return slotCount;
    }

    public void setSlotCount(Integer slotCount) {
        this.slotCount = slotCount;
    }

    public Integer getUseCount() {
        return useCount;
    }

    public void setUseCount(Integer useCount) {
        this.useCount = useCount;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getCreatorId() {
        return creatorId;
    }

    public void setCreatorId(String creatorId) {
        this.creatorId = creatorId;
    }

    public String getCreatorName() {
        return creatorName;
    }

    public void setCreatorName(String creatorName) {
        this.creatorName = creatorName;
    }

    public List<ContentTemplateRelationDTO> getTemplateTypeList() {
        return templateTypeList;
    }

    public void setTemplateTypeList(List<ContentTemplateRelationDTO> templateTypeList) {
        this.templateTypeList = templateTypeList;
    }
}
