using SqlSugar; namespace Model.Entity.Config { /// /// 物模型点(属性/指令通用表;通过 OwnerType+OwnerId 归属产品或设备) /// 一条点 = 一个寄存器/线圈映射;可写点即"下发指令"的入口 /// public class ThingModelPointEntity : BaseEntity { /// /// 归属类型(1=产品 2=设备) /// [SugarColumn(ColumnDescription = "归属类型")] public ThingOwnerTypeEnum OwnerType { get; set; } /// /// 归属对象Id(ProductEntity.Id / IotDeviceEntity.Id) /// [SugarColumn(ColumnDescription = "归属对象Id")] public long OwnerId { get; set; } /// /// 点编码(同一归属内唯一,如 TempPV) /// [SugarColumn(ColumnDescription = "点编码", Length = 64)] public string Code { get; set; } /// /// 点名称 /// [SugarColumn(ColumnDescription = "点名称", Length = 100, IsNullable = true)] public string? Name { get; set; } /// /// 寄存器类型(线圈/保持寄存器/输入寄存器) /// [SugarColumn(ColumnDescription = "寄存器类型")] public ThingRegisterTypeEnum RegisterType { get; set; } /// /// 读写权限 /// [SugarColumn(ColumnDescription = "读写权限")] public ThingRwEnum Rw { get; set; } /// /// 数据类型 /// [SugarColumn(ColumnDescription = "数据类型")] public ThingDataTypeEnum DataType { get; set; } /// /// 寄存器起始地址 /// [SugarColumn(ColumnDescription = "寄存器起始地址")] public ushort Address { get; set; } /// /// 换算系数(工程值 = 寄存器原始值 / Scale + Offset,对应驱动内 SCALE) /// [SugarColumn(ColumnDescription = "换算系数", DecimalDigits = 4)] public double Scale { get; set; } = 1; /// /// 偏移量 /// [SugarColumn(ColumnDescription = "偏移量", DecimalDigits = 4)] public double Offset { get; set; } /// /// 单位 /// [SugarColumn(ColumnDescription = "单位", Length = 16, IsNullable = true)] public string? Unit { get; set; } /// /// 是否启用 /// [SugarColumn(ColumnDescription = "是否启用")] public bool Enabled { get; set; } = true; /// /// 排序号 /// [SugarColumn(ColumnDescription = "排序号")] public int Sort { get; set; } /// /// 备注 /// [SugarColumn(ColumnDescription = "备注", Length = 500, IsNullable = true)] public string? Remark { get; set; } } }