package com.sonic.frog.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 音色字典表
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("timbre_dict")
@ApiModel("音色字典表")
public class TimbreDict {
    @ApiModelProperty("id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty("1:男性，2:女性")
    @TableField("type")
    private Integer type;

    @ApiModelProperty("音色code")
    @TableField("code")
    private String code;

    @ApiModelProperty("音色名称")
    @TableField("name")
    private String name;

    @ApiModelProperty("描述")
    @TableField("description")
    private String description;

    @ApiModelProperty("音频地址")
    @TableField("url")
    private String url;

    @ApiModelProperty("语音类型 第三方")
    @TableField("voice_type")
    private String voiceType;

    @ApiModelProperty("语音文本")
    @TableField("voice_text")
    private String voiceText;

    @ApiModelProperty("音高")
    @TableField("pitch_rate")
    private Integer pitchRate;

    @ApiModelProperty("语速")
    @TableField("speech_rate")
    private Integer speechRate;

    @ApiModelProperty("支持的语种")
    @TableField("language")
    private String language;

    @ApiModelProperty("支持的情感")
    @TableField("support_emotions")
    private String supportEmotions;

    @ApiModelProperty("是否删除（1.是，0.否）")
    @TableField("is_delete")
    private Integer isDelete;

    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
}