From dee21bf452a8979d0515d13e534fbb69ed9715dd Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期二, 01 九月 2020 15:33:13 +0800
Subject: [PATCH] 上传一个版本
---
ZigbeeApp/Shared/Phone/UserCenter/Safety/SafetyManagementMainForm.cs | 86 ++++++++++++++++--------------------------
1 files changed, 33 insertions(+), 53 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Safety/SafetyManagementMainForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Safety/SafetyManagementMainForm.cs
index c470209..7f5192c 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Safety/SafetyManagementMainForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Safety/SafetyManagementMainForm.cs
@@ -254,7 +254,7 @@
UserCenterResourse.ResidenceOption.Save();
btnShortCut.IsSelected = false;
//鍙栨秷涓婚〉鐨勩�屽畨闃层�嶆嵎寰勭殑璇�,涓婚〉闇�瑕侀噸鏂板埛鏂�
- UserView.UserPage.Instance.RefreshForm = true;
+ UserView.UserPage.Instance.RefreshAllForm = true;
});
}
else
@@ -266,7 +266,7 @@
UserCenterResourse.ResidenceOption.Save();
btnShortCut.IsSelected = true;
//鍒涘缓涓婚〉鐨勩�屽畨闃层�嶆嵎寰勭殑璇�,涓婚〉闇�瑕侀噸鏂板埛鏂�
- UserView.UserPage.Instance.RefreshForm = true;
+ UserView.UserPage.Instance.RefreshAllForm = true;
});
}
};
@@ -315,7 +315,7 @@
this.CloseProgressBar();
//鏁版嵁鍒濆鍖栧畬鎴愬悗
- Application.RunOnMainThread(() =>
+ HdlThreadLogic.Current.RunMain(() =>
{
//鍒濆鍖栧ご閮ㄧ殑閭d笁涓浘鏍�
garrisonControl = new SafetyMasterControl();
@@ -534,79 +534,59 @@
//浠庤澶囧垪琛ㄤ腑鑾峰彇鍦ㄧ嚎鐘舵��
HdlThreadLogic.Current.RunThread(() =>
{
- //棣栧厛鑾峰彇杩欎簺浼犳劅鍣ㄦ墍鍦ㄧ殑缃戝叧
- var listWay = new List<ZbGateway>();
foreach (var device in listDevice)
- {
- ZbGateway realWay = null;
- //鏄惁瀛樺湪鐪熷疄鐗╃悊缃戝叧
- if (HdlGatewayLogic.Current.GetRealGateway(ref realWay, device.CurrentGateWayId) == false)
- {
- continue;
- }
- listWay.Add(realWay);
- }
- foreach (var zbway in listWay)
{
if (this.Parent == null)
{
//鐣岄潰鍏抽棴
return;
}
- int statu = 0;
- var list = Common.LocalDevice.Current.GetDeviceListFromGateway(zbway, ref statu, false, ShowErrorMode.NO);
- if (statu != -1)
+ var deviceInfo = Common.LocalDevice.Current.ReadDeviceEpointDeviceInfo(device);
+ if (deviceInfo != null)
{
- for (int i = 0; i < list.Count; i++)
- {
- //璁剧疆璁惧鍦ㄧ嚎鐘舵��
- this.ReceiveDeviceStatuPush(list[i]);
- }
+ //璁剧疆璁惧鍦ㄧ嚎鐘舵��
+ this.ReceiveDeviceStatuPush(device, deviceInfo);
}
+ System.Threading.Thread.Sleep(50);
}
- });
+ }, ShowErrorMode.NO);
}
/// <summary>
/// 鎺ュ彈璁惧鍦ㄧ嚎鎺ㄩ��
/// </summary>
/// <param name="device"></param>
- private void ReceiveDeviceStatuPush(CommonDevice device)
+ private void ReceiveDeviceStatuPush(CommonDevice device, CommonDevice.DeviceInfoData deviceInfo)
{
if (this.Parent == null)
{
//鐣岄潰鍏抽棴
return;
}
-
- lock (objOnlineLock)
+ string mainkeys = Common.LocalDevice.Current.GetDeviceMainKeys(device);
+ if (this.dicSensorStatuView.ContainsKey(mainkeys) == true)
{
- string mainkeys = Common.LocalDevice.Current.GetDeviceMainKeys(device);
- if (this.dicSensorStatuView.ContainsKey(mainkeys) == true)
+ CommonDevice Loacldevice = Common.LocalDevice.Current.GetDevice(mainkeys);
+ if (Loacldevice == null)
{
- CommonDevice Loacldevice = Common.LocalDevice.Current.GetDevice(mainkeys);
- if (Loacldevice == null)
- {
- return;
- }
- //鍦ㄧ嚎鐘舵�佷竴鏍风殑璇濓紝涓嶉渶瑕佸埛鏂�
- if (Loacldevice.IsOnline == device.IsOnline)
- {
- return;
- }
- //淇濆瓨鐘舵��
- Loacldevice.IsOnline = device.IsOnline;
- Loacldevice.ReSave();
-
- //鍥犱负杩欐槸鎺ㄩ�佽繃鏉ョ殑锛屾垜涓嶄繚璇侀偅涓�鐬棿杩欎釜涓滆タ浼氫笉浼氳绉婚櫎
- var control = this.dicSensorStatuView[mainkeys];
- Application.RunOnMainThread(() =>
- {
- //璁剧疆鎺т欢鐨勫湪绾跨姸鎬佹枃鏈晥鏋�
- bool bolOnline = Common.LocalDevice.Current.CheckDeviceIsOnline(device);
- control?.SetOnlineStatu(bolOnline);
- });
+ return;
}
+ //鍦ㄧ嚎鐘舵�佷竴鏍风殑璇濓紝涓嶉渶瑕佸埛鏂�
+ if (Loacldevice.IsOnline == deviceInfo.IsOnline)
+ {
+ return;
+ }
+ //淇濆瓨鐘舵��
+ Loacldevice.IsOnline = deviceInfo.IsOnline;
+
+ //鍥犱负杩欐槸鎺ㄩ�佽繃鏉ョ殑锛屾垜涓嶄繚璇侀偅涓�鐬棿杩欎釜涓滆タ浼氫笉浼氳绉婚櫎
+ var control = this.dicSensorStatuView[mainkeys];
+ HdlThreadLogic.Current.RunMain(() =>
+ {
+ //璁剧疆鎺т欢鐨勫湪绾跨姸鎬佹枃鏈晥鏋�
+ bool bolOnline = Common.LocalDevice.Current.CheckDeviceIsOnline(device);
+ control?.SetOnlineStatu(bolOnline);
+ });
}
}
@@ -672,7 +652,7 @@
}
dicAlarm = null;
- Application.RunOnMainThread(() =>
+ HdlThreadLogic.Current.RunMain(() =>
{
if (this.Parent == null)
{
@@ -743,7 +723,7 @@
}
}
- Application.RunOnMainThread(() =>
+ HdlThreadLogic.Current.RunMain(() =>
{
if (this.TodaySafeguardFrame != null)
{
--
Gitblit v1.8.0