From 0ee75b88cfe03e46289de0de96e8ed4580c797d3 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 27 九月 2022 14:04:21 +0800
Subject: [PATCH] Merge branch 'Dev-Branch' into dev--wxr
---
HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs | 114 ++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 96 insertions(+), 18 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index c0f23e1..ab8885b 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -10,20 +10,20 @@
{
/// <summary>
/// 瀹氫箟涓�涓潤鎬佸璞�
- /// </summary>
- private static LogicMethod logicMethod = null;
+ /// </summary>
+ private static LogicMethod s_Current = null;
/// <summary>
/// 鑾峰彇闈欐�佸璞�
/// </summary>
- public static LogicMethod CurrLogicMethod
+ public static LogicMethod Current
{
get
{
- if (logicMethod == null)
+ if (s_Current == null)
{
return new LogicMethod();
}
- return logicMethod;
+ return s_Current;
}
}
@@ -182,9 +182,35 @@
/// <returns></returns>
public List<HDL_ON.Entity.Function> GetGatewayDeviceList()
{
- var list = Entity.FunctionList.List.GetDeviceFunctionList();
- return GetTestDevice(list, true);
- //return list;
+ var list = new List<HDL_ON.Entity.Function>();
+ var list1 = Entity.FunctionList.List.GetDeviceFunctionList();
+ var list2 = this.GetVideoDeviceList();
+ list.AddRange(list1);
+ list.AddRange(list2);
+ GetTestDevice(ref list, true);
+ return list;
+ }
+ /// <summary>
+ /// 鑾峰彇鍙瀵硅璁惧鍒楄〃
+ /// </summary>
+ /// <returns></returns>
+ public List<HDL_ON.Entity.Function> GetVideoDeviceList()
+ {
+ var functionList = new List<Function>();
+ foreach (var videoDevice in FunctionList.List.videoIntercom) {
+ Function function = new Function();
+ function.spk = videoDevice.spk;
+ function.name = videoDevice.deviceName;
+ function.deviceId = videoDevice.deviceId;
+ function.online = videoDevice.status== "online";
+ function.sid = videoDevice.sid;
+ var video = functionList.Find((o) => o.deviceId == function.deviceId);
+ if (video == null) {
+ functionList.Add(function);
+ }
+
+ }
+ return functionList;
}
/// <summary>
/// 鑾峰彇鍦烘櫙鍒楄〃
@@ -326,7 +352,11 @@
string strPath = "";
switch (functionType)
{
-
+ case SPK.doorgate:
+ {
+ strPath = "VideoIcon/keshiduijiang.png";
+ }
+ break;
case SPK.AirSwitch:
{
strPath = "FunctionIcon/Icon/electricalbreaker.png";
@@ -405,6 +435,12 @@
case SPK.DoorLock:
{
strPath = "FunctionIcon/DoorLock/DoorLock.png";
+ }
+ break;
+ case SPK.MusicStandard:
+ case SPK.AvMusic:
+ {
+ strPath = "MusicIcon/localMusic.png";
}
break;
@@ -505,6 +541,18 @@
{
deviceStrTypeList.Add(Language.StringByID(StringId.DoorLock));
}
+ ///闊充箰绫�
+ var music = deviceList.Find((device) => device.spk == SPK.MusicStandard || device.spk == SPK.AvMusic);
+ if (music != null)
+ {
+ deviceStrTypeList.Add(Language.StringByID(StringId.Music));
+ }
+ ///鍙瀵硅
+ var doorgate = deviceList.Find((device) => device.spk == SPK.doorgate);
+ if (doorgate != null)
+ {
+ deviceStrTypeList.Add(Language.StringByID(StringId.VideoIntercom));
+ }
return deviceStrTypeList;
}
@@ -592,6 +640,17 @@
{
functionTypeList.Add(SPK.DoorLock);
}
+ ///闊充箰绫�
+ else if (deviceType == Language.StringByID(StringId.Music))
+ {
+ functionTypeList.Add(SPK.MusicStandard);
+ functionTypeList.Add(SPK.AvMusic);
+ }
+ ///HDL鍙瀵硅
+ else if (deviceType == Language.StringByID(StringId.VideoIntercom))
+ {
+ functionTypeList.Add(SPK.doorgate);
+ }
else
{
//鍏ㄩ儴鍖哄煙
@@ -640,6 +699,10 @@
functionTypeList.Add(SPK.SensorHelp);
functionTypeList.Add(SPK.DoorLock);
functionTypeList.Add(SPK.CurtainDream);
+ functionTypeList.Add(SPK.MusicStandard);
+ functionTypeList.Add(SPK.AvMusic);
+ functionTypeList.Add(SPK.doorgate);
+
}
@@ -694,6 +757,7 @@
deviceTypeList.Add(SPK.HvacCac);
deviceTypeList.Add(SPK.SensorHelp);
deviceTypeList.Add(SPK.DoorLock);
+ deviceTypeList.Add(SPK.doorgate);
}
break;
@@ -714,6 +778,8 @@
deviceTypeList.Add(SPK.PanelSocket);
deviceTypeList.Add(SPK.ElectricSocket);
deviceTypeList.Add(SPK.CurtainDream);
+ deviceTypeList.Add(SPK.MusicStandard);
+ deviceTypeList.Add(SPK.AvMusic);
}
break;
}
@@ -948,8 +1014,8 @@
try
{
//鑾峰彇閫昏緫ID鍒楄〃锛岀洰鍓嶉拡瀵规墍鏈�<澶囨敞:濡傛灉鍙拡瀵瑰綋鍓嶆墜鏈虹殑璇濓紝鍙互鐩存帴鎷跨紦瀛樻暟鎹嚜鍔ㄥ寲鍒楄〃閬嶅巻>
- var idStr = Send.GetLogicIdList();
- if (idStr.Code == "0" && idStr.Data != null && idStr.Data.ToString() != "")
+ var idStr = Send.Current.GetLogicIdList();
+ if (idStr != null)
{
var date = Newtonsoft.Json.JsonConvert.SerializeObject(idStr.Data);
logicDataList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<LogicData>>(date);
@@ -993,7 +1059,7 @@
if (isPush == null)
{
//鎺ㄩ�佺粰浜戠鏄惁鎴愬姛
- bool push = Send.GeoFenceStateReport(logicDate.userLogicId, logicDate.sid, direction);
+ bool push = Send.Current.GetFenceStateReport(logicDate.userLogicId, logicDate.sid, direction);
if (push)
{
///娣诲姞鍒版帹閫佸垪琛�
@@ -1023,20 +1089,32 @@
/// </summary>
/// <param name="isBool">鏄惁寮�鍚�</param>
/// <returns></returns>
- private List<Entity.Function> GetTestDevice(List<HDL_ON.Entity.Function> list, bool isBool)
+ private List<Entity.Function> GetTestDevice(ref List<HDL_ON.Entity.Function> list, bool isBool)
{
if (isBool)
{
- Entity.Function function = new Entity.Function { sid = "0123456789", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic };
- var device = list.Find((o) => { return o.sid == function.sid; });
- if (device == null)
+ //妯℃嫙璁惧
+ var functions = new List<Function> {
+ //new Entity.Function { sid = "1234567890", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic },
+ // new Entity.Function { sid = "1234567891", name = "娓╁害浼犳劅鍣�", spk = Entity.SPK.SensorTemperature },
+ // new Entity.Function { sid = "1234567892", name = "婀垮害浼犳劅鍣�", spk = Entity.SPK.SensorHumidity },
+ // new Entity.Function { sid = "1234567893", name = "绾㈠瀵瑰皠浼犳劅鍣�", spk = Entity.SPK.SensorDuiShe },
+ // new Entity.Function { sid = "1234567895", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic },
+ new Entity.Function { sid = "1234567896", name = "姣背娉紶鎰熷櫒", spk = Entity.SPK.SenesorMegahealth },
+ new Entity.Function { sid = "1234567897", name = "姣背娉紶鎰熷櫒1", spk = Entity.SPK.SenesorMegahealth2 },
+ new Entity.Function { sid = "1234567899", name = "闂ㄧ浼犳劅鍣�", spk = Entity.SPK.SensorDoorWindow },
+ };
+ foreach (var function in functions)
{
- list.Add(function);
+ var device = list.Find((o) => { return o.sid == function.sid; });
+ if (device == null)
+ {
+ list.Add(function);
+ }
}
}
return list;
-
}
--
Gitblit v1.8.0