V4完成: 预览+云台整合 操作列JSX按钮 全链路调通

This commit is contained in:
2026-05-17 14:22:46 +08:00
parent f118e8b245
commit f9eeeed843
13 changed files with 128 additions and 85 deletions

View File

@@ -41,13 +41,10 @@ namespace VolPro.Entity.DomainModels
/// <summary>
///来源适配器(类型:实例)
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
[Key]
[Display(Name ="来源适配器(类型:实例)")]
[MaxLength(50)]
[Column(TypeName="nvarchar(50)")]
[Editable(true)]
[Required(AllowEmptyStrings=false)]
public string AdapterCode { get; set; }
/// <summary>
@@ -57,7 +54,6 @@ namespace VolPro.Entity.DomainModels
[MaxLength(100)]
[Column(TypeName="nvarchar(100)")]
[Editable(true)]
[Required(AllowEmptyStrings=false)]
public string SourceId { get; set; }
/// <summary>
@@ -73,8 +69,6 @@ namespace VolPro.Entity.DomainModels
/// <summary>
///设备分组(数据字典)
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
[Key]
[Display(Name ="设备分组(数据字典)")]
[MaxLength(20)]
[Column(TypeName="nvarchar(20)")]
@@ -85,23 +79,11 @@ namespace VolPro.Entity.DomainModels
/// <summary>
///所属点位ID
/// </summary>
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
[Key]
[Display(Name ="所属点位ID")]
[Column(TypeName="int")]
[Editable(true)]
public int? PointId { get; set; }
/// <summary>
///所属网关节点ID
/// </summary>
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
[Key]
[Display(Name ="所属网关节点ID")]
[Column(TypeName="int")]
[Editable(true)]
public int? GatewayNodeId { get; set; }
/// <summary>
///是否父设备(数据字典)
/// </summary>
@@ -115,8 +97,6 @@ namespace VolPro.Entity.DomainModels
/// <summary>
///父设备ID(自引用,子设备挂父设备下)
/// </summary>
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
[Key]
[Display(Name ="父设备ID(自引用,子设备挂父设备下)")]
[Column(TypeName="int")]
[Editable(true)]
@@ -129,7 +109,6 @@ namespace VolPro.Entity.DomainModels
[MaxLength(20)]
[Column(TypeName="nvarchar(20)")]
[Editable(true)]
[Required(AllowEmptyStrings=false)]
public string IsOnline { get; set; }
/// <summary>
@@ -284,6 +263,16 @@ namespace VolPro.Entity.DomainModels
[Editable(true)]
public DateTime? ModifyDate { get; set; }
/// <summary>
///所属网关节点ID
/// </summary>
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
[Key]
[Display(Name ="所属网关节点ID")]
[Column(TypeName="int")]
[Editable(true)]
public int? NodeId { get; set; }
[Display(Name ="视频通道")]
[ForeignKey("DeviceId")][Navigate(NavigateType.OneToMany,nameof(DeviceId),nameof(DeviceId))]
public List<video_channel> video_channel { get; set; }

View File

@@ -14,7 +14,7 @@ using VolPro.Entity.SystemModels;
namespace VolPro.Entity.DomainModels
{
[Entity(TableCnName = "设备管理_网关节点",TableName = "gateway_nodes",DBServer = "ServiceDbContext")]
[Entity(TableCnName = "设备管理_网关节点",TableName = "gateway_nodes",DetailTable = new Type[] { typeof(base_device)},DetailTableCnName = "设备管理",DBServer = "ServiceDbContext")]
public partial class gateway_nodes:ServiceEntity
{
/// <summary>
@@ -165,6 +165,11 @@ namespace VolPro.Entity.DomainModels
[Editable(true)]
public DateTime? ModifyDate { get; set; }
[Display(Name ="设备管理")]
[ForeignKey("NodeId")][Navigate(NavigateType.OneToMany,nameof(NodeId),nameof(NodeId))]
public List<base_device> base_device { get; set; }
}
}

View File

@@ -11,17 +11,17 @@ namespace VolPro.Entity.DomainModels
{
public partial class base_device
{
/// <summary>导航属性:关联视频通道扩展记录(一对一)</summary>
[Navigate(NavigateType.OneToOne, nameof(DeviceId), nameof(video_channel.DeviceId))]
public video_channel? VideoChannel { get; set; }
/////// <summary>导航属性:关联视频通道扩展记录(一对一)</summary>
////[Navigate(NavigateType.OneToOne, nameof(DeviceId), nameof(video_channel.DeviceId))]
////public video_channel? VideoChannel { get; set; }
/// <summary>导航属性:关联告警记录(一对多)</summary>
[Navigate(NavigateType.OneToMany, nameof(DeviceId), nameof(iot_alarm.DeviceId))]
public List<iot_alarm>? Alarms { get; set; }
/////// <summary>导航属性:关联告警记录(一对多)</summary>
////[Navigate(NavigateType.OneToMany, nameof(DeviceId), nameof(iot_alarm.DeviceId))]
////public List<iot_alarm>? Alarms { get; set; }
/// <summary>导航属性:关联数据归档(一对多)</summary>
[Navigate(NavigateType.OneToMany, nameof(DeviceId), nameof(iot_devicedata.DeviceId))]
public List<iot_devicedata>? DeviceData { get; set; }
/////// <summary>导航属性:关联数据归档(一对多)</summary>
////[Navigate(NavigateType.OneToMany, nameof(DeviceId), nameof(iot_devicedata.DeviceId))]
////public List<iot_devicedata>? DeviceData { get; set; }
/// <summary>
/// 网关字段白名单。网关同步时,只有此集合中的字段会被覆盖,