From 9ab5bd54fadd8fc9c542b48c99a117a4e182669b Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 14 十月 2021 16:37:56 +0800
Subject: [PATCH] 智能空开能源界面数据更新
---
HDL_ON/Entity/FunctionList.cs | 101 ++++++++++++++++++++++++++++----------------------
1 files changed, 56 insertions(+), 45 deletions(-)
diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index b5622b0..593bb36 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -5,6 +5,7 @@
using HDL_ON.Common;
using HDL_ON.DAL;
using HDL_ON.DAL.Server;
+using HDL_ON.DriverLayer;
using Shared;
namespace HDL_ON.Entity
@@ -101,6 +102,7 @@
return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
+
/// <summary>
/// 绾㈠瀹濆垪琛�
/// </summary>
@@ -126,8 +128,8 @@
/// </summary>
public List<Function> GetEnvirSensorsList()
{
- var spkList = SPK.EnvironSpkList();
- return Functions.FindAll((obj) => spkList.Contains(obj.spk));
+ var spkList = SPK.EnvironDeviceSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
/// <summary>
/// 瀹夐槻璁惧鍒楄〃
@@ -139,9 +141,10 @@
}
/// <summary>
- /// 鍙瀵硅鍒楄〃
+ /// 鍙瀵硅鍒楄〃,褰撲负null鎴杝ize涓�0鍒欎笉鏄剧ず鍙瀵硅icon
/// </summary>
- public UI.UI2.FuntionControlView.Video.VideoClouds videoIntercom;
+ // public UI.UI2.FuntionControlView.Video.VideoClouds videoIntercom;
+ public List<UI.UI2.FuntionControlView.Video.Video> videoIntercom = new List<UI.UI2.FuntionControlView.Video.Video>();
List<Function> _OtherBrandFunction;
/// <summary>
@@ -172,6 +175,7 @@
/// </summary>
public List<SecurityAlarm> securities = new List<SecurityAlarm>();
+
/// <summary>
/// 鍔犺浇鍔熻兘鍒楄〃
/// </summary>
@@ -182,7 +186,6 @@
/// <para>false:鐩存帴鏃犳潯浠舵坊鍔�</para></param>
public void IniFunctionList(string filePath, bool checkRepeat = false)
{
- //MainPage.Log("12346890sdkxghjkl");
// todo 澧炲姞璁惧锛屽鍔犲姛鑳借繘鍔熻兘鍒楄〃
if (filePath.StartsWith("FunctionData_"))
{
@@ -200,23 +203,23 @@
//{
// UI.Music.A31MusicModel.A31MusicModelList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<UI.Music.A31MusicModel>(functionDataString));
//}
- if (checkRepeat == true)
- {
- //妫�娴嬮噸澶�
- for (int i = 0; i < Functions.Count; i++)
- {
- if (Functions[i].deviceId == tempFunction.deviceId)
- {
- //鍏堢Щ闄ゆ帀鍐嶅姞
- Functions.RemoveAt(i);
- Functions.Add(tempFunction);
- return;
- }
- }
+ if (checkRepeat == true)
+ {
+ //妫�娴嬮噸澶�
+ for (int i = 0; i < Functions.Count; i++)
+ {
+ if (Functions[i].deviceId == tempFunction.deviceId)
+ {
+ //鍏堢Щ闄ゆ帀鍐嶅姞
+ Functions.RemoveAt(i);
+ Functions.Add(tempFunction);
+ return;
+ }
+ }
}
Functions.Add(tempFunction);
}
- else if (filePath.StartsWith("SceneData_"))
+ if (filePath.StartsWith("SceneData_"))
{
var sceneDataBytes = FileUtlis.Files.ReadFile(filePath);
var sceneDataString = System.Text.Encoding.UTF8.GetString(sceneDataBytes);
@@ -276,11 +279,14 @@
break;
case SPK.BrandType.Tuya:
- foreach (var function in Functions)
+ lock (Functions)
{
- if (SPK.Get3tySpk(SPK.BrandType.Tuya).Contains(function.spk))
+ foreach (var function in Functions)
{
- resultFunctions.Add(function);
+ if (SPK.Get3tySpk(SPK.BrandType.Tuya).Contains(function.spk))
+ {
+ resultFunctions.Add(function);
+ }
}
}
break;
@@ -347,6 +353,7 @@
List.scenes.Remove(scene);
}
}
+
/// <summary>
/// 鍒犻櫎鏈湴鍔熻兘鍙婃枃浠�
/// </summary>
@@ -411,24 +418,18 @@
{
foreach (var function in GetDeviceFunctionList(SPK.BrandType.Hdl))
{
- switch (function.Spk_Prefix)
- {
- case FunctionCategory.Music:
- case FunctionCategory.DryContact:
- continue;
- }
- DriverLayer.Control.Ins.SendReadCommand(function);
- //switch (function.Spk_Prefix)
- //{
- // case FunctionCategory.Light:
- // case FunctionCategory.Electric:
- // case FunctionCategory.Curtain:
- // case FunctionCategory.AC:
- // case FunctionCategory.FloorHeat:
- // case FunctionCategory.Sensor:
- // DriverLayer.Control.Ins.SendReadCommand(function);
- // break;
- //}
+ Control.Ins.SendReadCommand(function);
+ }
+ if(DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> pairs = new Dictionary<string, string>();
+ string sendId = Control.Ins.msg_id.ToString();
+ pairs.Add("id", sendId);
+ pairs.Add("time_stamp", Utlis.GetTimestamp());
+ var readSecurityStatusJson = Newtonsoft.Json.JsonConvert.SerializeObject(pairs);
+ var sendBytes = Control.Ins.ConvertSendBodyData(CommunicationTopic.ct.ReadSecurityStatus, readSecurityStatusJson);
+ MainPage.Log($"鏈湴閫氳 璇诲彇瀹夐槻鐘舵��:{readSecurityStatusJson}");
+ new Control_Udp().SendLocalHdlLinkData(sendBytes, sendId);
}
}
else
@@ -464,6 +465,7 @@
})
{ IsBackground = true }.Start();
}
+
#region 鍦烘櫙鐩稿叧
/// <summary>
/// 娣诲姞鍦烘櫙
@@ -475,11 +477,20 @@
var revPack = pm.AddScene(scene);
if (revPack.Code == StateCode.SUCCESS)
{
- var sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(revPack.Data.ToString());
- tempScene = sceneList.Find((obj) => obj.sid == scene.sid);
- var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(tempScene));
- FileUtlis.Files.WriteFileByBytes(scene.savePath, ssd);
- result = tempScene;
+ if (MainPage.NoLoginMode)
+ {
+ var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(scene));
+ FileUtlis.Files.WriteFileByBytes(scene.savePath, ssd);
+ result = scene;
+ }
+ else
+ {
+ var sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(revPack.Data.ToString());
+ tempScene = sceneList.Find((obj) => obj.sid == scene.sid);
+ var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(tempScene));
+ FileUtlis.Files.WriteFileByBytes(scene.savePath, ssd);
+ result = tempScene;
+ }
}
else
{
--
Gitblit v1.8.0