package com.estate.expert.admin.domain.project.info; import com.estate.expert.admin.domain.common.EntityBase; import com.estate.expert.admin.domain.project.Project; import lombok.Getter; import lombok.Setter; import org.hibernate.annotations.Type; import javax.persistence.*; import java.io.Serializable; import java.time.LocalDate; /** * */ @Getter @Setter @Entity public class ProjectInfo extends EntityBase implements Serializable { @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "project_id") private Project project; // /** // * 用于关联当前的检查任务 // * 一个检查任务可以对一个项目提交一次项目信息 // */ // @ManyToOne(fetch = FetchType.LAZY) // @JoinColumn(name = "check_task_id") // private CheckTask checkTask; /** * 项目详情 */ private String detail; /** * 项目进展 */ private String progress; /** * 危大工程选项 */ @Type(type = "io.hypersistence.utils.hibernate.type.json.JsonType") @Column(columnDefinition = "json") private ProjectDangerousType[] dangerousOptions; /** * 超大危工程选项 */ @Type(type = "io.hypersistence.utils.hibernate.type.json.JsonType") @Column(columnDefinition = "json") private ProjectSuperDangerousType[] superDangerousOptions; /** * 风险源 */ @Type(type = "io.hypersistence.utils.hibernate.type.json.JsonType") @Column(columnDefinition = "json") private HazardSourceType[] hazardSourceTypes; /** * 近一季度施工进展情况 */ private String progressThisSeason; /** * 更新日期 yyyy-MM-dd */ @Column(nullable = false) private LocalDate updateDate; }