package com.tuoheng.admin.request.third;

import lombok.Data;
import lombok.experimental.Accessors;
import org.hibernate.validator.constraints.Length;

import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.util.List;

/**
 * 回调请求体
 *
 * @author chenyukun
 * @since 2022-06-14
 */
@Data
@Accessors(chain = true)
public class DspCallbackRequest {
    /**
     * 分析状态
     */
    @NotNull
    private Integer analyseStatus;

    /**
     * 错误信息
     */
    @Length(max = 255)
    private String errorCode;

    /**
     * 错误信息
     */
    @Length(max = 255)
    private String errorMsg;

    /**
     * 分析类型：1：实时 2：离线
     */
    @NotNull
    private Integer type;

    /**
     * 进度
     */
    private Double progress;

    /**
     * 原视频地址
     */
    @Pattern(regexp = "^[\\u4E00-\\u9FA5A-Za-z0-9_.\\-:/]{0,255}$")
    private String videoUrl;

    /**
     * ai视频地址
     */
    @Pattern(regexp = "^[\\u4E00-\\u9FA5A-Za-z0-9_.\\-:/]{0,255}$")
    private String aiVideoUrl;

    /**
     * 问题集
     */
    List<@Valid QuestionFile> questionFiles;
}
