package com.rj.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 音频上传日志表
 * </p>
 *
 * @author Auto Generated
 * @since 2025-01-29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("yhy_audio_upload_log")
@Schema(description = "音频上传日志表")
public class YhyAudioUploadLog implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键，UUID")
    @TableId("id")
    private String id;

    @Schema(description = "租户ID")
    @TableField("tenant_id")
    private String tenantId;

    @Schema(description = "文件路径")
    @TableField("file_path")
    private String filePath;

    @Schema(description = "内容类型（如：audio/mpeg）")
    @TableField("content_type")
    private String contentType;

    @Schema(description = "设备号")
    @TableField("device_no")
    private String deviceNo;

    @Schema(description = "服务器回调URL")
    @TableField("server_url")
    private String serverUrl;

    @Schema(description = "推送数据类型（如：Audio）")
    @TableField("push_data_type")
    private String pushDataType;

    @Schema(description = "文件名")
    @TableField("file_name")
    private String fileName;

    @Schema(description = "保存路径")
    @TableField("save_path")
    private String savePath;

    @Schema(description = "分块索引（如：A001）")
    @TableField("chunk_index")
    private String chunkIndex;

    @Schema(description = "开始时间（格式：251129185131）")
    @TableField("start_time")
    private String startTime;

    @Schema(description = "结束时间（格式：251129190131）")
    @TableField("end_time")
    private String endTime;

    @Schema(description = "用户号")
    @TableField("usr_no")
    private String usrNo;

    @Schema(description = "设备类型（如：Hanging4G）")
    @TableField("device_type")
    private String deviceType;

    @Schema(description = "是否有主体（0-否，1-是）")
    @TableField("has_body")
    private Boolean hasBody;

    @Schema(description = "扩展信息（JSON格式）")
    @TableField("extended")
    private String extended;

    @Schema(description = "用户ID")
    @TableField("user_id")
    private String userId;

    @Schema(description = "用户名")
    @TableField("user_name")
    private String userName;

    @Schema(description = "用户电话")
    @TableField("user_phone")
    private String userPhone;

    @Schema(description = "用户部门")
    @TableField("user_dept")
    private String userDept;

    @Schema(description = "同步阶段")
    @TableField("sync_stage")
    private String syncStage;

    @Schema(description = "关联的录音管理ID")
    @TableField("audio_management_id")
    private String audioManagementId;

    @Schema(description = "系统创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;

    @Schema(description = "系统更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;

}

