Files
jinko.yikatong/Src/Dlhis.Entity/Basic/Entity/DeviceEntity.cs

97 lines
2.7 KiB
C#

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