// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。 // // 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。 // // 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任! namespace Admin.NET.Plugin.ApprovalFlow; /// /// 审批流程信息表 /// [SugarTable(null, "审批流程信息表")] public class ApprovalFlow : EntityBaseTenantOrgDel { /// /// 编号 /// [SugarColumn(ColumnDescription = "编号", Length = 64)] [MaxLength(64)] public string? Code { get; set; } /// /// 名称 /// [SugarColumn(ColumnDescription = "名称", Length = 32)] [MaxLength(32)] public string Name { get; set; } /// /// 表单 /// [SugarColumn(ColumnDescription = "表单", ColumnDataType = StaticConfig.CodeFirst_BigString)] public string? FormJson { get; set; } /// /// 流程 /// [SugarColumn(ColumnDescription = "流程", ColumnDataType = StaticConfig.CodeFirst_BigString)] public string? FlowJson { get; set; } /// /// 状态 /// [SugarColumn(ColumnDescription = "状态")] public int? Status { get; set; } /// /// 备注 /// [SugarColumn(ColumnDescription = "备注", Length = 256)] [MaxLength(256)] public string? Remark { get; set; } /// /// 业务类型编码(如 CONTRACT_REVIEW、ORDER_REVIEW) /// [SugarColumn(ColumnDescription = "业务类型编码", Length = 64, IsNullable = true)] [MaxLength(64)] public string? BizType { get; set; } /// /// 版本号,每次发布 +1 /// [SugarColumn(ColumnDescription = "版本号", DefaultValue = "0")] public int Version { get; set; } /// /// 是否已发布 /// [SugarColumn(ColumnDescription = "是否已发布", DefaultValue = "0")] public bool IsPublished { get; set; } /// /// 租户Id(NULL = 全局,所有租户可用;非 NULL = 仅该租户可用) /// 必须是 override 而不是隐藏基类属性:隐藏会让 ((ITenantIdFilter)flow).TenantId /// 落到基类那个永不赋值的字段上(实测读回 null),同时丢掉基类的 IsOnlyIgnoreUpdate 护栏。 /// IsNullable 保留 NULL 全局语义;IsOnlyIgnoreUpdate 承自基类, /// 租户归属只在插入时写定,任何整实体更新都不得改写它。 /// [SugarColumn(ColumnDescription = "租户Id", IsNullable = true, IsOnlyIgnoreUpdate = true)] public override long? TenantId { get; set; } }