namespace OpenAuth.Repository.Domain.workflow;

using SqlSugar;
using System;

/// <summary>
/// 流程变量表（zy_flow_variable）
/// </summary>
[SugarTable("zy_flow_variable")]
public class ZyFlowVariable
{
    /// <summary>
    /// 变量ID（主键，自增）
    /// </summary>
    [SugarColumn(ColumnName = "var_id", IsPrimaryKey = true, IsIdentity = true, IsNullable = false)]
    public long VarId { get; set; }

    /// <summary>
    /// 流程实例ID（外键关联zy_flow_instance）
    /// </summary>
    [SugarColumn(ColumnName = "instance_id", IsNullable = false)]
    public long InstanceId { get; set; }

    /// <summary>
    /// 变量键（与instance_id联合唯一）
    /// </summary>
    [SugarColumn(ColumnName = "var_key", IsNullable = false)]
    public string VarKey { get; set; } = string.Empty;

    /// <summary>
    /// 变量值（文本类型）
    /// </summary>
    [SugarColumn(ColumnName = "var_value", IsNullable = true)]
    public string? VarValue { get; set; }
}