优化回路上传页面、节能属性上传页面、限制内部预留服务

This commit is contained in:
2026-01-05 11:03:10 +08:00
parent 5e9358ffb9
commit f845225ed7
10 changed files with 198 additions and 29 deletions

View File

@@ -59,6 +59,28 @@ Public Class ReportingScenario
Public Function getDateDisposeRuning() As List(Of MDevNodeMessage)
Return DateDisposeRuning(Tgrd, TDevicemodel)
End Function
Public Function getDevloop() As Dictionary(Of String, String)
Dim dic As New Dictionary(Of String, String)
Dim devAddr, NodeLoop As String
Dim strbuf As String()
For Each Dev In TDevicemodel
If String.IsNullOrEmpty(Dev.Value.Desc.DevInterface) OrElse Dev.Value.Desc.DevInterface.Equals("VirtualObject") Then Continue For
For Each DevNode In Dev.Value.Nodes
If Not String.IsNullOrEmpty(DevNode.DEV_TYPE_DATA) Then
devAddr = GetActionDeviceAddr(Dev.Value, DevNode.Name).ToString
NodeLoop = DevNode.DEV_TYPE_DATA.PadLeft(3, "0") & devAddr.PadLeft(3, "0") & "000"
If dic.ContainsKey(NodeLoop) Then Continue For
strbuf = Dev.Key.Split(vbLf)
dic.Add(NodeLoop, strbuf(2))
End If
Next
Next
Return Dic
End Function
Public Function DateDisposeRuning(_grd As FlexCell.Grid _Devicemodel As Dictionary(Of String DeviceModel)) As List(Of MDevNodeMessage)
If IsNothing(_grd) Then Return Nothing
Dim ACtabRange As CtabRange
@@ -72,7 +94,9 @@ Public Class ReportingScenario
For Each Dev In _Devicemodel '遍历设备
For Each DevNode In Dev.Value.Nodes '遍历设备下属子节点
Dim devAddr As String = GetActionDeviceAddr(Dev.Value, DevNode.Name).ToString
If DevNode.Interface.Equals("DO") OrElse DevNode.Interface.Equals("LIGHT") Then '判断是否为输出设备
If DevNode.DEV_TYPE_DATA.Equals("4") Then '服务设备节点特殊处理

View File

@@ -46,8 +46,13 @@ Public Class ServiceAttribute
Dic_3 = New List(Of String)
'单位
Dic_4 = New List(Of String)
Dim fustr As String = "服务-"
For Each node In G_hostNode.Nodes
fustr = "服务-" & node.LoopAddr
'2025 12 29 CZH 增加 判断服务是否是 是在25 到48 且名称符合 "服务-服务号"的格式 符合则不 添加
If node.LoopAddr >= 25 AndAlso node.LoopAddr <= 48 AndAlso fustr.Equals(node.Name) Then '
Continue For
End If
Dic_1.Add($"{node.LoopAddr}:{node.Name }")
Next

View File

@@ -7234,6 +7234,8 @@ ON DUPLICATE KEY UPDATE {updatastr};"
Dim Server() As String
Dim devdatetype As Integer
Dim devname As String()
Dim devnamestr As String = ""
Dim bumberstr As String = ""
For i=0 To Dic_Devicemodel.Count-1
dev = Dic_Devicemodel.Values(i)
If dev.Desc.DevInterface.Equals("VirtualObject") Then Continue For
@@ -7245,9 +7247,9 @@ ON DUPLICATE KEY UPDATE {updatastr};"
If _grd.Cell(gr,TableColNumber.KeyName).Text.Contains("红外") OrElse _grd.Cell(gr,TableColNumber.KeyName).Text.Contains("雷达")OrElse _grd.Cell(gr,TableColNumber.KeyName).Text.Contains("门磁") Then
Server= _grd.Cell(gr,TableColNumber.ServerAttribute).Text.Trim.Split(",")
If IsNothing(Server) OrElse Server.Count=0 OrElse string.IsNullOrEmpty(Server(0)) Then Continue For
bumberstr=$"{_grd.Cell(gr,TableColNumber.KeyName).Text}_场景编号{_grd.Cell(gr,TableColNumber.SceneID).Text}"
devAddr =$"00400000{Server(0).ToString.Trim}"
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,_grd.Cell(gr,TableColNumber.KeyName).Text,devAddr)
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,bumberstr,devAddr)
If dic.ContainsKey(devAddr) Then
Else
dic.Add(devAddr,insert)
@@ -7257,7 +7259,8 @@ ON DUPLICATE KEY UPDATE {updatastr};"
Server= _grd.Cell(gr,TableColNumber.ServerAttribute).Text.Trim.Split(",")
If IsNothing(Server) OrElse Server.Count=0 OrElse string.IsNullOrEmpty(Server(0)) Then Continue For
devAddr =$"004000001"
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,_grd.Cell(gr,TableColNumber.KeyName).Text,devAddr)
bumberstr=$"{_grd.Cell(gr,TableColNumber.KeyName).Text}_场景编号{_grd.Cell(gr,TableColNumber.SceneID).Text}"
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,bumberstr,devAddr)
If dic.ContainsKey(devAddr) Then
Else
dic.Add(devAddr,insert)
@@ -7271,7 +7274,7 @@ ON DUPLICATE KEY UPDATE {updatastr};"
' 485(轮询)1
'设备地址:9
'A9恒压调光_(RS485_轮询
Dim str As String = dev.Desc.Name
Dim str As String = dev.Name
Dim strbuf() As String = str.Split(vbLf)
If strbuf.Count > 1 Then
Dim strbuf1() As String = strbuf(1).Trim.Split(":")
@@ -7297,7 +7300,8 @@ ON DUPLICATE KEY UPDATE {updatastr};"
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,dev.Name.Replace(vbLf,"_")&"_主机",devAddr)
Else
devname=dev.Name.Split (vbLf)
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,devname(2),devAddr)
devnamestr=$"{devname(2)}_地址{typeindex}"
insert= INSERTtbl_configured_devlist(HotelID,RoomTypeID,devnamestr,devAddr)
End If
If dic.ContainsKey(devAddr) Then