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.

164 lines
4.4 KiB
C#

using SqlSugar;
namespace Ds.Modules.DsEntity.Base
{
public abstract class BaseComEntity
{
/// <summary>
/// 备注
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "备注")]
public string? DsNote { get; set; } = "0qaqq";
/// <summary>
/// 创建时间
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "创建时间")]
public DateTime DsAddTime { get; set; } = DateTime.Now;
/// <summary>
/// 创建人
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "创建人")]
public string? DsAddUserInfo { get; set; } = "admin";
/// <summary>
/// 修改人
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "修改人")]
public string? DsUpdateUserInfo { get; set; } = "admin";
/// <summary>
/// 更新时间
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "更新时间")]
public DateTime DsUpdateTime { get; set; } = DateTime.Now;
/// <summary>
/// 删除
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "是否删除")]
public bool DsIsDel { get; set; } = false;
/// <summary>
/// 删除时间
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "删除时间")]
public DateTime DsDeleteTime { get; set; } = DateTime.Now;
/// <summary>
/// 删除人
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "删除人")]
public string? DsDeleteUserInfo { get; set; } = "admin";
/// <summary>
/// 排序
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "排序")]
public int DsSort { get; set; } = 0;
}
/// <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 TenantNumber { 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 TenantNumber { 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
{
public BaseEntityGuid()
{
var worker = new Snowflake.Core.IdWorker(1, 1);
Id = worker.NextId();
}
/// <summary>
/// 主键ID
/// </summary>
[Description("主键ID")]
[SqlSugar.SugarColumn(IsPrimaryKey = true, Length = 100, ColumnDescription = "主键ID")]
public long Id { get; set; }
/// <summary>
/// 租户编号
/// </summary>
[SqlSugar.SugarColumn(ColumnDescription = "租户编号")]
public long TenantNumber { get; set; }
}
}