package com.hotwj.platform.config.vehicleThreeInspect.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_vehicle_three_inspect
 *
 * @author shihongwei
 * @date 2025-12-29
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("hot_vehicle_three_inspect")
public class HotVehicleThreeInspect extends BaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id")
    private Long id;

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

    /**
     * 车辆ID
     */
    private Long vehicleId;

    /**
     * 当前驾驶员ID
     */
    private String driverId;

    /**
     * 当前驾驶员姓名
     */
    private String driverName;

    /**
     * 检查阶段 1=出车 2=行车 3=收车
     */
    private Long inspectPhase;

    /**
     * 检查id
     */
    private Long inspectId;

    /**
     * 检查时间
     */
    private Date inspectTime;

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

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

    /**
     * 检查项目结果JSON
     */
    private String inspectResultJson;

    /**
     * 检查附件图片url
     */
    private String attachImgUrl;

    /**
     * 检查员签名图片url
     */
    private String inspectorSignImgUrl;

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

    /**
     * 是否误报
     */
    private Long isFalseReport;

    /**
     * 是否存在隐患 0=否, 1=是
     */
    private Long hasHiddenDanger;

    /**
     * 审核时间
     */
    private Date auditTime;

    /**
     * 审核结论
     */
    private String auditResult;

    /**
     * 审核不通过原因
     */
    private String rejectReason;

    /**
     * 审核人员签名图片url
     */
    private String auditorSignImgUrl;

    /**
     * 流程实例ID
     */
    private String instanceId;

    /**
     * 流程状态
     */
    private String flowStatus;

    /**
     * 评估人id
     */
    private Long evaluatorId;
}
