using Dlhis.Entity.Device.Enums; using Kurisu.Core.DataAccess.Entity; using Kurisu.SqlSugar; using SqlSugar; using SqlSugar.DbConvert; namespace Dlhis.Entity.Basic.Entity; /// /// 设备 /// [SugarTable(TableName = "Device", TableDescription = "设备表")] public class DeviceEntity : SugarBaseEntity, ITenantId { /// /// 设备code /// [SugarColumn(ColumnDescription = "设备code")] public Guid Code { get; set; } /// /// 设备唯一码,IP/MAC/SNO /// [SugarColumn(ColumnDescription = "设备唯一码", IsNullable = false, UniqueGroupNameList = new[] { "Idx_Device_UniqueNo" })] public string UniqueNo { get; set; } /// /// 心跳间隔 /// [SugarColumn(ColumnDescription = "心跳检查间隔")] public int HeartbeatInterval { get; set; } /// /// 供应商 /// [SugarColumn(ColumnDescription = "供应商")] public string Supplier { get; set; } /// /// 设备功能 /// [SugarColumn(ColumnDataType = "varchar(150)", IsJson = true, ColumnDescription = "设备功能", DefaultValue = "[]")] public List Funcs { get; set; } /// /// 设备类型 /// [SugarColumn(ColumnDescription = "设备类型", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))] public DeviceTypeEnumType Type { get; set; } /// /// 部署点 /// [SugarColumn(ColumnDescription = "部署点")] public string DeployPlace { get; set; } /// /// 部署坐标 /// [SugarColumn(ColumnDescription = "部署坐标")] public string DeployPosition { get; set; } /// /// 部署方向 /// [SugarColumn(ColumnDescription = "部署方向")] public string DeployDirection { get; set; } /// /// 模板code /// [SugarColumn(ColumnDescription = "模板code")] public Guid? TemplateCode { get; set; } /// /// 连接信息 /// [SugarColumn(ColumnDescription = "连接信息")] public string ConnectionInfo { get; set; } /// /// 是否启用 /// [SugarColumn(ColumnDataType = "bit", ColumnDescription = "是否启用")] public bool Enable { get; set; } /// /// 是否作为考勤设备 /// [SugarColumn(ColumnDataType = "bit", ColumnDescription = "是否作为考勤设备")] public bool AsAttendance { get; set; } public string TenantId { get; set; } }