package com.ruoyi.web.modules.diagnosis.domain;

import com.fasterxml.jackson.annotation.JsonAlias;

/**
 * 兽医发送问诊消息请求体。
 */
public class VetConsultSendBody
{
    private Integer msgType;

    private String content;

    private Integer mediaDuration;

    /**
     * 前端大模型直连后的 AI 回复全文；非空时服务端仅落库，不再调用 ConsultAiGateway。
     */
    private String aiReplyContent;

    /**
     * 大模型网关实际会话 ID（/v1/chat/completions 返回的 session_id），可为空。
     */
    @JsonAlias({ "real_session_id", "session_id", "llmSessionId" })
    private String realSessionId;

    /**
     * AI 提问分类，可为空（写入提问人消息 ai_category，最长 32 字符）。
     */
    @JsonAlias({ "ai_category", "category" })
    private String aiCategory;

    /**
     * 大模型对话耗时（毫秒），写入 AI 回复消息 cost_time，可为空。
     */
    @JsonAlias({ "cost_time", "xCost" })
    private Long costTime;

    public Integer getMsgType()
    {
        return msgType;
    }

    public void setMsgType(Integer msgType)
    {
        this.msgType = msgType;
    }

    public String getContent()
    {
        return content;
    }

    public void setContent(String content)
    {
        this.content = content;
    }

    public Integer getMediaDuration()
    {
        return mediaDuration;
    }

    public void setMediaDuration(Integer mediaDuration)
    {
        this.mediaDuration = mediaDuration;
    }

    public String getAiReplyContent()
    {
        return aiReplyContent;
    }

    public void setAiReplyContent(String aiReplyContent)
    {
        this.aiReplyContent = aiReplyContent;
    }

    public String getRealSessionId()
    {
        return realSessionId;
    }

    public void setRealSessionId(String realSessionId)
    {
        this.realSessionId = realSessionId;
    }

    public String getAiCategory()
    {
        return aiCategory;
    }

    public void setAiCategory(String aiCategory)
    {
        this.aiCategory = aiCategory;
    }

    public Long getCostTime()
    {
        return costTime;
    }

    public void setCostTime(Long costTime)
    {
        this.costTime = costTime;
    }
}
