package com.sonic.frog.domain.output;

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

import java.time.LocalDateTime;

/**
 * @description:
 * @author: mzc
 * @date: 2025-07-11 10:53
 **/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AiUserImBaseInfoOutput {

    @ApiModelProperty("AI的id")
    private Long aiId;

    @ApiModelProperty("ai所属用户id")
    private Long userId;

    @ApiModelProperty("昵称")
    private String nickname;

    @ApiModelProperty("0,男;1,女;2,自定义")
    private Integer sex;

    @ApiModelProperty("头像")
    private String headImg;

    @ApiModelProperty("出生日期")
    private LocalDateTime birthday;

    @ApiModelProperty("角色名称")
    private String roleName;

    @ApiModelProperty("性格名称")
    private String characterName;

    @ApiModelProperty("标签名称")
    private String tagName;

    @ApiModelProperty("简介")
    private String introduction;

    @ApiModelProperty("im聊天背景图")
    private String backgroundImg;

    @ApiModelProperty("是否是默认背景图片")
    private Boolean isDefaultBackground;

    @ApiModelProperty("被喜欢数")
    private Integer likedNum;

    @ApiModelProperty("对话开场白")
    private String dialoguePrologue;

    @ApiModelProperty("对话开场白-语音")
    private String dialoguePrologueVoice;

    @ApiModelProperty("用户与AI的心动关系")
    private AiUserHeartbeatRelationOutput aiUserHeartbeatRelation;

    @ApiModelProperty("聊天气泡")
    private ChatBubbleOutput chatBubble;

    @ApiModelProperty("自动播放语音开关 1：开 0：关")
    private Integer isAutoPlayVoice;

    @ApiModelProperty("是否是会员")
    private Boolean isMember;

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

    @ApiModelProperty("对话-音高")
    private String dialoguePitch;

    @ApiModelProperty("对话-语速")
    private String dialogueSpeechRate;

    @ApiModelProperty("是否点赞过")
    private Boolean liked;

    @ApiModelProperty("是否已聊天过")
    private Boolean isHaveChatted;

    @ApiModelProperty("是否删除聊天消息 1：是 0：否")
    private Boolean isDelChatted;
}
