package cn.iocoder.byzs.module.ai.controller.admin.tts.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;

@Schema(description = "管理后台 - AI TTS文转音新增/修改 Request VO")
@Data
public class AiTtsSaveReqVO {

    @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long id;

    @Schema(description = "发音人名字", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "发音人名字不能为空")
    private String name;

    @Schema(description = "发音人标识", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "发音人标识不能为空")
    private String model;

    @Schema(description = "TTS平台", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "TTS平台不能为空")
    private String platform;

    @Schema(description = "发音人类型")
    private Integer type;

    @Schema(description = "排序")
    private Integer sort;

    @Schema(description = "状态")
    private Integer status;

    @Schema(description = "语速")
    private Integer speechRate;

    @Schema(description = "语调")
    private Integer volume;

    @Schema(description = "音量")
    private Integer pitchRate;

}