Files
happy-life-star/backend-single/src/main/java/com/emotion/entity/CozeApiCall.java
T
2025-10-27 23:57:31 +08:00

262 lines
4.7 KiB
Java

package com.emotion.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.emotion.common.BaseEntity;
import lombok.Data;
import lombok.experimental.SuperBuilder;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* Coze API调用记录实体类
*
* @author huazhongmin
* @date 2025-07-23
*/
@Data
@EqualsAndHashCode(callSuper = true)
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
@TableName("t_coze_api_call")
public class CozeApiCall extends BaseEntity {
/**
* 对话ID
*/
@TableField("conversation_id")
private String conversationId;
/**
* 消息ID
*/
@TableField("message_id")
private String messageId;
/**
* Coze聊天ID
*/
@TableField("coze_chat_id")
private String cozeChatId;
/**
* Coze对话ID
*/
@TableField("coze_conversation_id")
private String cozeConversationId;
/**
* Bot ID
*/
@TableField("bot_id")
private String botId;
/**
* Workflow ID
*/
@TableField("workflow_id")
private String workflowId;
/**
* 用户ID
*/
@TableField("user_id")
private String userId;
/**
* 请求类型: chat/stream/retrieve/messages
*/
@TableField("request_type")
private String requestType;
/**
* 请求URL
*/
@TableField("request_url")
private String requestUrl;
/**
* 请求体
*/
@TableField("request_body")
private String requestBody;
/**
* 请求头
*/
@TableField("request_headers")
private String requestHeaders;
/**
* 用户输入的消息内容
*/
@TableField("user_message")
private String userMessage;
/**
* 用户消息类型: text/image/file
*/
@TableField("user_message_type")
private String userMessageType;
/**
* AI回复的消息内容
*/
@TableField("ai_reply")
private String aiReply;
/**
* AI回复类型: text/image/file
*/
@TableField("ai_reply_type")
private String aiReplyType;
/**
* HTTP状态码
*/
@TableField("response_status")
private Integer responseStatus;
/**
* 响应体
*/
@TableField("response_body")
private String responseBody;
/**
* 响应头
*/
@TableField("response_headers")
private String responseHeaders;
/**
* 轮询次数
*/
@TableField("poll_count")
private Integer pollCount;
/**
* 轮询开始时间
*/
@TableField("poll_start_time")
private LocalDateTime pollStartTime;
/**
* 轮询结束时间
*/
@TableField("poll_end_time")
private LocalDateTime pollEndTime;
/**
* 最终状态: completed/failed/timeout
*/
@TableField("final_status")
private String finalStatus;
/**
* 调用状态: pending/success/failed/timeout
*/
@TableField("status")
private String status;
/**
* 开始时间
*/
@TableField("start_time")
private LocalDateTime startTime;
/**
* 结束时间
*/
@TableField("end_time")
private LocalDateTime endTime;
/**
* 耗时(毫秒)
*/
@TableField("duration_ms")
private Integer durationMs;
/**
* 输入Token数
*/
@TableField("prompt_tokens")
private Integer promptTokens;
/**
* 输出Token数
*/
@TableField("completion_tokens")
private Integer completionTokens;
/**
* 总Token数
*/
@TableField("total_tokens")
private Integer totalTokens;
/**
* 费用
*/
@TableField("cost")
private BigDecimal cost;
/**
* 函数调用记录
*/
@TableField("function_calls")
private String functionCalls;
/**
* 函数调用结果
*/
@TableField("function_results")
private String functionResults;
/**
* 错误代码
*/
@TableField("error_code")
private String errorCode;
/**
* 错误信息
*/
@TableField("error_message")
private String errorMessage;
/**
* 客户端IP
*/
@TableField("client_ip")
private String clientIp;
/**
* 用户代理
*/
@TableField("user_agent")
private String userAgent;
/**
* 会话ID
*/
@TableField("session_id")
private String sessionId;
/**
* 追踪ID
*/
@TableField("trace_id")
private String traceId;
/**
* 扩展元数据
*/
@TableField("metadata")
private String metadata;
}