/**
 * @ProjectName: 智慧评标-主观分助手
 * @Package: com.zhpb.gdyd_zhpb_zgf.entity.mysql
 * @ClassName: Project
 * @Description: 项目实体类，映射t_project表，存储项目信息和文件路径列表
 * @Author: 张志锋
 * @Date: 2025-10-31
 * @Version: 1.0
 * @Copyright: © 2025 智慧评标-主观分助手
 */
package com.zhpb.gdyd_zhpb_zgf.entity.mysql;

import jakarta.persistence.*;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 项目实体类
 */
@Entity
@Table(name = "t_project")
@Data
public class Project {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * 项目ID（UUID或业务ID）
     */
    @Column(name = "project_id", unique = true, nullable = false, length = 64)
    private String projectId;

    /**
     * 项目名称
     */
    @Column(name = "project_name", length = 256)
    private String projectName;

    /**
     * 项目描述
     */
    @Column(name = "description", columnDefinition = "TEXT")
    private String description;

    /**
     * 项目状态
     */
    @Column(name = "status", length = 32)
    private String status;

    /**
     * 文件路径（上传或解压的文件路径，JSON格式存储多个路径）
     */
    @Column(name = "file_paths", columnDefinition = "TEXT")
    private String filePaths;

    /**
     * 创建时间
     */
    @Column(name = "create_time", nullable = false)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private LocalDateTime updateTime;
}

