package cn.fateverse.query.entity.vo;

import cn.fateverse.query.entity.DynamicEcharts;
import cn.fateverse.common.core.annotaion.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;



/**
 * 动态echarts图表对象 dynamic_echarts
 *
 * @author clay
 * @date 2023-11-16
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel("动态echarts图表Vo")
public class DynamicEchartsVo {

    /**
     * echarts主键
     */
    @ApiModelProperty("echarts主键")
    private Long echartsId;

    /**
     * 数据适配器id,可以选择或者直接创建
     */
    @ApiModelProperty("数据适配器id,可以选择或者直接创建")
    private String adapterName;

    /**
     * echart名称
     */
    @ApiModelProperty("echarts名称")
    @Excel("echarts名称")
    private String echartsName;

    /**
     * echart配置数据
     */
    @ApiModelProperty("echarts配置数据")
    @Excel("echartss配置数据")
    private String echartsConfig;

    /**
     * 是否发布
     */
    @ApiModelProperty("是否发布")
    @Excel("是否发布")
    private Boolean publish;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    @Excel("备注")
    private String remark;

    public static DynamicEchartsVo toDynamicEchartsVo(DynamicEcharts dynamicEcharts) {
        return DynamicEchartsVo.builder()
                .echartsId(dynamicEcharts.getEchartsId())
                .echartsName(dynamicEcharts.getEchartsName())
                .echartsConfig(dynamicEcharts.getEchartsConfig())
                .publish(dynamicEcharts.getPublish())
                .remark(dynamicEcharts.getRemark())
                .build();
    }
}