create table clone_voice
(
    id          bigint auto_increment
        primary key,
    ssid        varchar(64)   not null comment '用户ssid',
    type        int default 1 null comment '类型 1文件上传 2语音上传',
    voice_id    varchar(255)  null comment '语音id',
    voice_name  varchar(255)  null comment '语音名称',
    voice_url   varchar(255)  null comment '音频地址',
    key_id      int           null comment 'api key id',
    status      int default 0 null comment '状态',
    create_time datetime      null comment '创建时间',
    update_time datetime      null comment '更新时间'
);

create index idx_ssid
    on clone_voice (ssid);

create table member_auth
(
    id              bigint auto_increment
        primary key,
    device_id       varchar(64)  not null,
    ssid            varchar(64)  not null,
    auth            varchar(255) null,
    start_timestamp bigint       not null comment '生效开始时间戳',
    end_timestamp   bigint       not null comment '过期结束时间戳',
    create_time     datetime     not null,
    update_time     datetime     not null
);

create index idx_ssid
    on member_auth (ssid);

create table order_info
(
    id              bigint auto_increment
        primary key,
    out_trade_no    varchar(128) not null,
    ssid            varchar(64)  not null,
    device_id       varchar(64)  not null,
    phone           varchar(64)  null,
    item_id         bigint       not null,
    item_name       varchar(255) not null,
    original_amount bigint       not null,
    amount          bigint       not null,
    app_platform    int          not null,
    package_name    varchar(255) not null,
    channel_name    varchar(255) null,
    ip              varchar(255) null,
    create_time     datetime     not null,
    update_time     datetime     not null,
    pay_status      int          not null comment '-- 0:已创建 1:未支付 2:已支付 3:已关闭 4:已退款',
    status          int          not null
);

create index idx_out_trade_no
    on order_info (out_trade_no);

create index idx_ssid
    on order_info (ssid);

create table user_voice
(
    id           bigint auto_increment
        primary key,
    ssid         varchar(64)   null comment '用户ssid',
    content      varchar(1000) null comment '用户输入的文本',
    voice_id     varchar(255)  null comment '语音id',
    voice_name   varchar(255)  null comment '语音角色名称',
    voice_avatar varchar(255)  null comment '语音角色头像',
    voice_url    varchar(255)  null comment '音频地址',
    voice_type   int default 0 null comment '音频类型 0：系统语音 1：用户克隆语音',
    source       int default 0 null comment '来源 0：免费生成 1：订阅生成',
    status       int default 0 null comment '状态',
    create_time  datetime      null comment '创建时间',
    update_time  datetime      null comment '修改时间'
);

create index idx_create_time
    on user_voice (create_time);

create index idx_ssid
    on user_voice (ssid);
