package com.hotwj.platform.flow.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

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

/**
 * 流程任务历史对象 sys_flow_task_his
 *
 * @author shihongwei
 * @date 2026-01-25
 */
@Data
@TableName("sys_flow_task_his")
public class SysFlowTaskHis implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 历史ID
     */
    @TableId(value = "his_id", type = IdType.ASSIGN_UUID)
    private String hisId;

    /**
     * 任务ID
     */
    private String taskId;

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

    /**
     * 节点编码
     */
    private String nodeCode;

    /**
     * 节点名称
     */
    private String nodeName;

    /**
     * 审批人ID
     */
    private String approverId;

    /**
     * 审批状态: 1-通过, 2-驳回
     */
    private Integer status;

    /**
     * 审批意见
     */
    private String comment;

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

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

    /**
     * 是否已读: 0-未读, 1-已读
     */
    private Integer isRead;

    /**
     * 创建者
     */
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新者
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
}
