package shop.alien.entity.store;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * second_ai_task 表实体
 */
@Data
@TableName("second_ai_task")
@ApiModel(value = "SecondAiTask", description = "AI视频审核任务表")
public class SecondAiTask implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("数据ID")
    @TableField("data_id")
    private String dataId;

    @ApiModelProperty("视频URL")
    @TableField("video_url")
    private String videoUrl;

    @ApiModelProperty("任务ID")
    @TableField("task_id")
    private String taskId;

    @ApiModelProperty("任务状态 SUBMITTED/PROCESSING/...")
    @TableField("status")
    private String status;

    @ApiModelProperty("风险级别 none/low/medium/high")
    @TableField("risk_level")
    private String riskLevel;

    @ApiModelProperty("审核结果(JSON)")
    @TableField("result")
    private String result;

    @ApiModelProperty("重试次数")
    @TableField("retry_count")
    private Integer retryCount;

    @ApiModelProperty("创建时间")
    @TableField("create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty("更新时间")
    @TableField("update_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
}
