package com.hotwj.platform.securityManagement.hiddenDangerInspection.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;

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

/**
 * 隐患排查审核驳回历史对象 hot_hidden_danger_inspection_audit_history
 *
 * @author shihongwei
 * @date 2026-05-30
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("hot_hidden_danger_inspection_audit_history")
public class HotHiddenDangerInspectionAuditHistory extends BaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    @TableId(value = "id")
    private Long id;

    /**
     * 隐患排查主单ID
     */
    private Long inspectionId;

    /**
     * 公司ID
     */
    private Long companyId;

    /**
     * 计划ID
     */
    private Long planId;

    /**
     * 排查项目
     */
    private String projectName;

    /**
     * 排查项目ID
     */
    private String projectId;

    /**
     * 排查类型（1=公司 2=车辆 3=人员）
     */
    private Long projectType;

    /**
     * 提交版本号
     */
    private Long submitVersion;

    /**
     * 审核轮次
     */
    private Long auditRound;

    /**
     * 审核结果（REJECT）
     */
    private String auditResult;

    /**
     * 驳回原因
     */
    private String rejectReason;

    /**
     * 审核日期
     */
    private Date auditDate;

    /**
     * 审核人ID
     */
    private Long approverId;

    /**
     * 审核人姓名
     */
    private String approverName;

    /**
     * 审核人签名
     */
    private String approverSignImgUrl;

    /**
     * 审核时是否存在隐患
     */
    private Long auditHasDanger;

    /**
     * 当次提交快照JSON
     */
    private String submitSnapshotJson;

    /**
     * 排查内容JSON
     */
    private String checkContentJson;

    /**
     * 隐患描述
     */
    private String dangerDesc;

    /**
     * 附件
     */
    private String attachmentUrl;

    /**
     * 排查人签名
     */
    private String signImgUrl;

    /**
     * 排查人ID
     */
    private String checkerId;

    /**
     * 排查人姓名
     */
    private String checkerName;

    /**
     * 排查日期
     */
    private Date checkDate;

    /**
     * 0=正常,1=已删除
     */
    @TableLogic
    private Long isDeleted;
}
