package com.ruoyi.ccdi.project.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

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

/**
 * 文件上传记录实体
 *
 * @author ruoyi
 * @date 2026-03-05
 */
@Data
@TableName("ccdi_file_upload_record")
public class CcdiFileUploadRecord implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 项目ID */
    private Long projectId;

    /** 流水分析平台项目ID */
    private Integer lsfxProjectId;

    /** 流水分析平台返回的logId */
    private Integer logId;

    /** 文件名称 */
    private String fileName;

    /** 文件大小（字节） */
    private Long fileSize;

    /** 文件状态：uploading-上传中，parsing-解析中，parsed_success-解析成功，parsed_failed-解析失败 */
    private String fileStatus;

    /** 来源类型 */
    private String sourceType;

    /** 来源项目ID */
    private Long sourceProjectId;

    /** 来源项目名称 */
    private String sourceProjectName;

    /** 主体名称（多个用逗号分隔） */
    private String enterpriseNames;

    /** 主体账号（多个用逗号分隔） */
    private String accountNos;

    /** 错误信息（解析失败时记录） */
    private String errorMessage;

    /** 上传时间 */
    private Date uploadTime;

    /** 上传人 */
    private String uploadUser;
}
