From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 17 十二月 2020 09:07:13 +0800
Subject: [PATCH] 新云端Ver1.3
---
ZigbeeApp/Shared/Phone/UserCenter/Device/AirConditioner/IndoorUnitListForm.cs | 50 +++++++++++++++++++++++++++++++++++---------------
1 files changed, 35 insertions(+), 15 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/AirConditioner/IndoorUnitListForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/AirConditioner/IndoorUnitListForm.cs
index afd1449..5dadc7f 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/AirConditioner/IndoorUnitListForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/AirConditioner/IndoorUnitListForm.cs
@@ -24,6 +24,10 @@
/// 婵�娲荤殑璁惧鍦板潃
/// </summary>
private string actionDeviceKeys = null;
+ /// <summary>
+ /// 鎺ユ敹鍥炲鐨勭鐐�
+ /// </summary>
+ private HashSet<int> listReceivePoint = new HashSet<int>();
#endregion
@@ -35,7 +39,12 @@
/// <param name="i_diviceMac">璁惧Mac鍦板潃</param>
public void ShowForm(string i_diviceMac)
{
- this.listDevice = Common.LocalDevice.Current.GetDevicesByMac(i_diviceMac);
+ this.listDevice = HdlDeviceCommonLogic.Current.GetDevicesByMac(i_diviceMac);
+ //鏀堕泦鍏ㄩ儴绔偣
+ foreach (var device in this.listDevice)
+ {
+ listReceivePoint.Add(device.DeviceEpoint);
+ }
//璁剧疆澶撮儴淇℃伅
base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uIndoorUnitSettion));
@@ -107,14 +116,14 @@
var btnIcon = new IconViewControl(78);
btnIcon.Gravity = Gravity.Center;
- Common.LocalDevice.Current.SetDeviceIconToControl(btnIcon, device);
+ HdlDeviceCommonLogic.Current.SetDeviceIconToControl(btnIcon, device);
btnIconBack.AddChidren(btnIcon);
frameTable.ChangedChidrenBindMode(btnIconBack, ChidrenBindMode.BindEvent);
rowInfo.btnIcon = btnIcon;
//璁惧鍚嶇О
var btnDeviceName = new NormalViewControl(700, 60, true);
- btnDeviceName.Text = Common.LocalDevice.Current.GetDeviceEpointName(device);
+ btnDeviceName.Text = HdlDeviceCommonLogic.Current.GetDeviceEpointName(device);
btnDeviceName.X = Application.GetRealWidth(193);
btnDeviceName.Y = Application.GetRealHeight(45);
frameTable.AddChidren(btnDeviceName, ChidrenBindMode.BindEvent);
@@ -217,13 +226,13 @@
frameTable.ButtonClickEvent += (sender, e) =>
{
- this.actionDeviceKeys = Common.LocalDevice.Current.GetDeviceMainKeys(device);
+ this.actionDeviceKeys = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device);
var form = new IndoorUnitSettionForm();
form.AddForm(device);
};
- dicControl[Common.LocalDevice.Current.GetDeviceMainKeys(device)] = rowInfo;
+ dicControl[HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device)] = rowInfo;
}
#endregion
@@ -242,15 +251,24 @@
}
HdlThreadLogic.Current.RunThread(() =>
{
- for (int i = 0; i < listDevice.Count; i++)
+ while (this.listReceivePoint.Count > 0 && this.Parent != null)
{
- if (this.Parent == null)
+ for (int i = 0; i < listDevice.Count; i++)
{
- return;
+ if (this.Parent == null)
+ {
+ return;
+ }
+ //宸茬粡鍙戦�佽繃浜�,灏变笉鐢ㄥ啀鍙戦��
+ if (this.listReceivePoint.Contains(listDevice[i].DeviceEpoint) == true)
+ {
+ //璇诲彇鐘舵��
+ HdlDeviceAttributeLogic.Current.SendThermostatStatuComand(listDevice[i]);
+ System.Threading.Thread.Sleep(200);
+ }
}
- //璇诲彇鐘舵��
- HdlDeviceAttributeLogic.Current.SendThermostatStatuComand(listDevice[i]);
- System.Threading.Thread.Sleep(200);
+ //3绉掑悗鍐嶆寰幆
+ System.Threading.Thread.Sleep(3000);
}
});
}
@@ -266,16 +284,18 @@
{
HdlGatewayReceiveLogic.Current.AddAttributeEvent("IndoorUnitListFormEvent", ReceiveComandDiv.A璁惧灞炴�т笂鎶�, (device) =>
{
- string mainkeys = Common.LocalDevice.Current.GetDeviceMainKeys(device);
+ string mainkeys = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device);
if (dicControl.ContainsKey(mainkeys) == false || device.DeviceStatusReport.CluterID != 513)
{
return;
}
- var localDevice = Common.LocalDevice.Current.GetDevice(mainkeys);
+ var localDevice = HdlDeviceCommonLogic.Current.GetDevice(mainkeys);
if (localDevice == null)
{
return;
}
+ //宸茬粡鎺ユ敹鍒版暟鎹�,鍒欑Щ闄ょ鐐�
+ this.listReceivePoint.Remove(device.DeviceEpoint);
var rowInfo = dicControl[mainkeys];
for (int i = 0; i < device.DeviceStatusReport.AttriBute.Count; i++)
@@ -354,11 +374,11 @@
if (this.actionDeviceKeys != null && dicControl.ContainsKey(this.actionDeviceKeys) == true)
{
//鍒锋柊璁惧淇℃伅
- var device = Common.LocalDevice.Current.GetDevice(this.actionDeviceKeys);
+ var device = HdlDeviceCommonLogic.Current.GetDevice(this.actionDeviceKeys);
if (device != null)
{
var contr = dicControl[this.actionDeviceKeys];
- contr.btnDeviceName.Text = Common.LocalDevice.Current.GetDeviceEpointName(device);
+ contr.btnDeviceName.Text = HdlDeviceCommonLogic.Current.GetDeviceEpointName(device);
contr.btnRoom.Text = HdlRoomLogic.Current.GetRoomNameByDevice(device);
}
}
--
Gitblit v1.8.0