You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

152 lines
4.4 KiB
C#

11 months ago
using System.ComponentModel;
using SqlSugar;
namespace Ds.Modules.DsEntity.Base
{
public abstract class BaseComEntity
{
/// <summary>
/// 备注
/// </summary>
[Description("备注")]
[SugarColumn(ColumnDataType = "300")]
public string Ds_Note { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[Description("创建时间")]
[SugarColumn(IsOnlyIgnoreUpdate = true, ColumnDescription = "创建时间", InsertServerTime = true)]
public DateTime Ds_Add_Time { get; set; }
/// <summary>
/// 创建人
/// </summary>
[Description("创建人")]
[SqlSugar.SugarColumn(IsOnlyIgnoreUpdate = true, IsNullable = true, ColumnDescription = "创建人")]
public string Ds_Add_UserInfo { get; set; }
/// <summary>
/// 修改人
/// </summary>
[Description("修改人")]
[SqlSugar.SugarColumn(IsNullable = true, ColumnDescription = "修改人")]
public string Ds_Update_UserInfo { get; set; }
/// <summary>
/// 更新时间
/// </summary>
[Description("更新时间")]
[SqlSugar.SugarColumn(ColumnDescription = "更新时间", UpdateServerTime = true)]
public DateTime Ds_Update_Time { get; set; }
/// <summary>
/// 删除
/// </summary>
[Description("删除")]
[SqlSugar.SugarColumn(ColumnDescription = "是否删除")]
public bool Ds_IsDel { get; set; } = false;
/// <summary>
/// 删除时间
/// </summary>
[Description("删除时间")]
[SqlSugar.SugarColumn(ColumnDescription = "删除时间")]
public DateTime Ds_Delete_Time { get; set; } = DateTime.Now;
/// <summary>
/// 删除人
/// </summary>
[Description("删除人")]
[SqlSugar.SugarColumn(IsNullable = true, ColumnDescription = "删除人")]
public string Ds_Delete_UserInfo { get; set; }
}
/// <summary>
/// 实体类基类无租户
/// </summary>
public abstract class BasEntity<TKey> : BaseComEntity
{
/// <summary>
/// 主键ID
/// </summary>
[Description("主键ID")]
[SugarColumn(IsPrimaryKey = true, Length = 100, ColumnDescription = "主键ID")]
public TKey Id { get; set; }
}
/// <summary>
/// 实体基类雪花无租户
/// </summary>
public abstract class BasEntityNoTenant : BaseComEntity
{
[SugarColumn(IsPrimaryKey = true)]
public long Id { get; set; }
}
/// <summary>
/// 租户雪花ID实体基类
/// </summary>
public abstract class BaseEntityTenant : BaseComEntity
{
[SugarColumn(IsPrimaryKey = true)]
public long Id { get; set; }
/// <summary>
/// 租户编号
/// </summary>
public string Tenant_Number { get; set; }
}
/// <summary>
/// 租户实体基类key类型
/// </summary>
/// <typeparam name="Tkey"></typeparam>
public abstract class BaseEntityKey<Tkey> : BaseComEntity
{
/// <summary>
/// 主键ID
/// </summary>
[Description("主键ID")]
[SugarColumn(IsPrimaryKey = true, Length = 100, ColumnDescription = "主键ID")]
public Tkey Id { get; set; }
/// <summary>
/// 租户编号
/// </summary>
public string Tenant_Number { get; set; }
}
/// <summary>
/// 租户实体基类key类型
/// </summary>
/// <typeparam name="Tkey"></typeparam>
public abstract class BaseEntityNoTenantKey<Tkey> : BaseComEntity
{
/// <summary>
/// 主键ID
/// </summary>
[Description("主键ID")]
[SugarColumn(IsPrimaryKey = true, Length = 100, ColumnDescription = "主键ID")]
public Tkey Id { get; set; }
}
/// <summary>
/// 租户实体基类key类型
/// </summary>
/// <typeparam name="Tkey"></typeparam>
public abstract class BaseEntityGuid : BaseComEntity
{
/// <summary>
/// 主键ID
/// </summary>
[Description("主键ID")]
[SugarColumn(IsPrimaryKey = true, Length = 100, ColumnDescription = "主键ID")]
public Guid Id { get; set; } = Guid.NewGuid();
/// <summary>
/// 租户编号
/// </summary>
public string Tenant_Number { get; set; }
}
}