From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 30 八月 2022 09:37:38 +0800
Subject: [PATCH] 合并了IOS的代码
---
ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/PaneTargetsBaseForm.cs | 180 +++++++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 149 insertions(+), 31 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/PaneTargetsBaseForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/PaneTargetsBaseForm.cs
index 7fdf549..f507873 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/PaneTargetsBaseForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/PaneTargetsBaseForm.cs
@@ -7,6 +7,9 @@
using static ZigBee.Device.Panel;
namespace Shared.Phone.UserCenter.Device.Bind
{
+ /// <summary>
+ /// 鐗规畩闈㈡澘鐨勭粦瀹氱晫闈€�愬彧鑳界粦瀹氱壒瀹氱被鍨嬶紝姣忕绫诲瀷鍙湁涓�涓洰鏍囥��
+ /// </summary>
public class PaneTargetsBaseForm : BindCommonLayout
{
#region 鏋勯�犲嚱鏁�
@@ -14,7 +17,7 @@
/// 鏋勯�犲嚱鏁�
/// </summary>
/// <param name="device"></param>
- /// <param name="deviceBindType">1:鏂伴;2:娓╁害浼犳劅鍣�;3:婀垮害浼犳劅鍣�;4:PM2.5浼犳劅鍣�;5:绌鸿皟鐩爣</param>
+ /// <param name="deviceBindType">1:鏂伴;2:娓╁害浼犳劅鍣�;3:婀垮害浼犳劅鍣�;4:PM2.5浼犳劅鍣�;5:绌鸿皟鐩爣,6:鍦版殩鐩爣,7:Co2鐩爣</param>
/// <param name="bindDev">缁戝畾鐩爣 </param>
public PaneTargetsBaseForm(CommonDevice device, CommonDevice bindDev, DeviceBind.BindInfo.BindType deviceBindType)
{
@@ -68,6 +71,8 @@
/// 3:婀垮害浼犳劅鍣�
/// 4:PM2.5浼犳劅鍣�
/// 5:绌鸿皟鐩爣
+ /// 6:鍦版殩鐩爣
+ /// 7:Co2鐩爣
/// </summary>
DeviceBind.BindInfo.BindType curDeviceBindType = 0;
/// <summary>
@@ -127,9 +132,17 @@
/// </summary>
public Action<string> actionPMTarget = null;
/// <summary>
+ /// Co2缁戝畾鐩爣鍥炶皟
+ /// </summary>
+ public Action<string> actionCo2Target = null;
+ /// <summary>
/// Ac缁戝畾鐩爣鍥炶皟
/// </summary>
public Action<string> actionAcTarget = null;
+ /// <summary>
+ /// Fh缁戝畾鐩爣鍥炶皟
+ /// </summary>
+ public Action<string> actionFhTarget = null;
/// <summary>
/// 鏄惁鑳藉埛鏂�
/// </summary>
@@ -173,6 +186,12 @@
case DeviceBind.BindInfo.BindType.AC:
titleText = Language.StringByID(R.MyInternationalizationString.AcTargets);
break;
+ case DeviceBind.BindInfo.BindType.Fh:
+ titleText = Language.StringByID(R.MyInternationalizationString.uFloorHeatingTarget);
+ break;
+ //case DeviceBind.BindInfo.BindType.CO2:
+ //titleText = Language.StringByID(R.MyInternationalizationString.CO2Source);
+ //break;
}
this.TopFrameLayout(this, titleText);
EventHandler<MouseEventArgs> eHandlerBack = (sender, e) =>
@@ -260,7 +279,7 @@
TextAlignment = TextAlignment.CenterLeft,
};
bottomTipPicFrameLayout.AddChidren(btnTipText);
- bottomTipPicFrameLayout.Width = btnTipPicFrameLayout.Width + Application.GetMinReal(2) + btnTipText.GetTextWidth();
+ bottomTipPicFrameLayout.Width = btnTipPicFrameLayout.Width + Application.GetMinReal(12) + btnTipText.GetTextWidth();
bottomTipPicFrameLayout.Gravity = Gravity.CenterHorizontal;
EventHandler<MouseEventArgs> eHandlerEmptyTargets = (sender, e) =>
@@ -291,8 +310,8 @@
btnFinifh = new Button()
{
- Width = Application.GetRealWidth(907),
- Height = Application.GetRealHeight(127),
+ Width = Application.GetRealWidth(907),
+ Height = Application.GetRealHeight(127),
Y = Application.GetRealHeight(49 + 35),
Gravity = Gravity.CenterHorizontal,
Radius = (uint)Application.GetRealHeight(127) / 2,
@@ -389,7 +408,7 @@
}
}
- if (index == roomTempList.Count - 1 && index > 3)
+ if (index == roomTempList.Count - 1 && index > 2)
{
var btnRoomFrameLayoutEmpty = new FrameLayout
{
@@ -545,14 +564,16 @@
{
line2.Visible = false;
}
- if (Common.LocalDevice.Current.CheckDeviceIsOnline(device) == true)
- {
- btnBindName.TextColor = Shared.Common.ZigbeeColor.Current.TextBlack;
- }
- else
- {
- btnBindName.TextColor = Shared.Common.ZigbeeColor.Current.XMGray3;
+ if (Common.LocalDevice.Current.CheckDeviceIsOnline(device) == true)
+ {
+ btnBindName.TextColor = Shared.Common.ZigbeeColor.Current.TextBlack;
}
+ else
+ {
+ btnBindName.TextColor = Shared.Common.ZigbeeColor.Current.XMGray3;
+ }
+ //鑾峰彇璁惧绫诲瀷
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
switch (curDeviceBindType)
{
case DeviceBind.BindInfo.BindType.FreshAir:
@@ -564,6 +585,11 @@
{
btnBindName.Text = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
}
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ btnBindName.Text = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
+ }
break;
case DeviceBind.BindInfo.BindType.Humidity:
devicePic.UnSelectedImagePath = "Device/SensorHumidity.png";
@@ -571,8 +597,16 @@
{
btnBindName.Text = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
}
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ btnBindName.Text = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
+ }
break;
case DeviceBind.BindInfo.BindType.PM:
+ devicePic.UnSelectedImagePath = "Device/AirQualitySensorEpoint.png";
+ break;
+ case DeviceBind.BindInfo.BindType.CO2:
devicePic.UnSelectedImagePath = "Device/AirQualitySensorEpoint.png";
break;
case DeviceBind.BindInfo.BindType.AC:
@@ -715,7 +749,7 @@
canFresh = false;
midVerticalScrolViewLayout.EndHeaderRefreshing();
CommonPage.Loading.Hide();
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime) + "(" + "5007" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance);
this.midFrameLayout.RemoveAll();
@@ -833,10 +867,12 @@
{
curControlDev.currentSelectRoomId = tempDevRoom.Id;
curControlDev.currentSelectFloorId = tempDevRoom.FloorId;
- }
- else
- {
- curControlDev.currentSelectRoomId = "UndistributedId";
+ }
+ else
+ {
+ curControlDev.currentSelectRoomId = "UndistributedId";
+ //鐩爣鍦ㄦ湭鍒嗛厤鏃讹紝榛樿绗竴涓ゼ灞�
+ curControlDev.currentSelectFloorId = BindInfo.GetCurrentSelectFloorId();
}
}
@@ -851,11 +887,31 @@
{
bindName += "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
}
+ if (dev.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+ {
+ //鑾峰彇璁惧绫诲瀷
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { dev });
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ bindName += "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
+ }
+ }
break;
case BindInfo.BindType.Humidity:
if (dev.Type == DeviceType.PMSensor)
{
bindName += "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
+ }
+ if (dev.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+ {
+ //鑾峰彇璁惧绫诲瀷
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { dev });
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ bindName += "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
+ }
}
break;
}
@@ -901,7 +957,7 @@
Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); });
if (btnTipPic.IsSelected)
{
- //鍒犻櫎鎯呭喌1:缁戝畾绌虹洰鏍囧繀椤诲彇娑堟寜閿腑宸茬粡瀛樺湪鐨勭洰鏍�
+ //褰撶粦瀹氱┖鐩爣锛岃鍒犻櫎宸茬粡瀛樺湪鎸夐敭鐨勭洰鏍�
if (oldTargetList.Count != 0)
{
//鍒犻櫎鎸夐敭涓凡缁忕粦瀹氱殑鐩爣涓暟銆愬垹闄ゆ垚鍔熶釜鏁般��
@@ -920,7 +976,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_1" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
CommonPage.Loading.Hide();
ShowReLoadView();
@@ -968,7 +1024,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_3" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
CommonPage.Loading.Hide();
@@ -1000,7 +1056,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_2" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
CommonPage.Loading.Hide();
@@ -1082,7 +1138,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_4" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
CommonPage.Loading.Hide();
ShowReLoadView();
@@ -1109,7 +1165,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_6" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
CommonPage.Loading.Hide();
@@ -1131,7 +1187,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_5" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
CommonPage.Loading.Hide();
@@ -1147,7 +1203,7 @@
{
Application.RunOnMainThread(() =>
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5003_7" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
CommonPage.Loading.Hide();
@@ -1181,11 +1237,17 @@
case BindInfo.BindType.AC:
addBindInfo.BindCluster = 513;
break;
+ case BindInfo.BindType.CO2:
+ addBindInfo.BindCluster = 1037;
+ break;
}
addBindInfo.BindType = 0;
addBindInfo.BindMacAddr = de.DeviceAddr;
addBindInfo.BindEpoint = de.DeviceEpoint;
addBindeDev.BindName = Common.LocalDevice.Current.GetDeviceEpointName(de);
+
+ //鑾峰彇璁惧绫诲瀷
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { de });
switch (curDeviceBindType)
{
case BindInfo.BindType.Temperature:
@@ -1193,9 +1255,20 @@
{
addBindeDev.BindName = Common.LocalDevice.Current.GetDeviceEpointName(de) + "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
}
+
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ addBindeDev.BindName = Common.LocalDevice.Current.GetDeviceEpointName(de) + "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
+ }
break;
case BindInfo.BindType.Humidity:
if (de.Type == DeviceType.PMSensor)
+ {
+ addBindeDev.BindName = Common.LocalDevice.Current.GetDeviceEpointName(de) + "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
+ }
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
{
addBindeDev.BindName = Common.LocalDevice.Current.GetDeviceEpointName(de) + "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
}
@@ -1225,7 +1298,7 @@
Application.RunOnMainThread(() =>
{
CommonPage.Loading.Hide();
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime) + "(" + "5001" + ")", Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance);
ShowReLoadView();
ReLoadAction += () =>
@@ -1265,7 +1338,7 @@
new Tip()
{
MaxWidth = 150,
- Text = Language.StringByID(R.MyInternationalizationString.BindFailed),
+ Text = Language.StringByID(R.MyInternationalizationString.BindFailed) + "(" + "5001_1" + ")",
Direction = AMPopTipDirection.None,
CloseTime = 1
}.Show(CommonPage.Instance);
@@ -1281,7 +1354,7 @@
new Tip()
{
MaxWidth = 150,
- Text = Language.StringByID(R.MyInternationalizationString.BindUnknownError),
+ Text = Language.StringByID(R.MyInternationalizationString.BindUnknownError) + "(" + "5001_2" + ")",
Direction = AMPopTipDirection.None,
CloseTime = 1
}.Show(CommonPage.Instance);
@@ -1391,11 +1464,12 @@
/// <param name="bindDev"></param>
void BindTypeTargetsList(CommonDevice device, BindListResponseObj bindDev)
{
+ //鑾峰彇璁惧绫诲瀷鐨�
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { device });
switch (curDeviceBindType)
{
case BindInfo.BindType.FreshAir:
- //鑾峰彇璁惧绫诲瀷鐨�
- var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { device });
+
//鏂伴闈㈡澘鐨勬柊椋庤澶囷紝鍒欎笉鏄剧ず
if (deviceEnumInfo.ConcreteType != Common.DeviceConcreteType.ButtonPanel_FangyueFreshAir)
{
@@ -1411,7 +1485,18 @@
var bDev = device as TemperatureSensor;
if (bDev.SensorDiv == 1)
{
- oldTargetList.Add(device);
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ if (bindDev.BindCluster == 1026)
+ {
+ oldTargetList.Add(device);
+ }
+ }
+ else
+ {
+ oldTargetList.Add(device);
+ }
}
}
if (device.Type == DeviceType.PMSensor)
@@ -1429,6 +1514,15 @@
if (bDev.SensorDiv == 2)
{
oldTargetList.Add(device);
+ }
+
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ if (bindDev.BindCluster == 1029)
+ {
+ oldTargetList.Add(device);
+ }
}
}
if (device.Type == DeviceType.FreshAirHumiditySensor)
@@ -1451,6 +1545,17 @@
oldTargetList.Add(device);
}
}
+ else if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+ {
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ if (bindDev.BindCluster == 1066)
+ {
+ oldTargetList.Add(device);
+ }
+ }
+ }
break;
case BindInfo.BindType.AC:
if (device.Type == DeviceType.Thermostat)
@@ -1461,6 +1566,19 @@
}
}
break;
+ case BindInfo.BindType.CO2:
+ if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+ {
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+ {
+ if (bindDev.BindCluster == 1037)
+ {
+ oldTargetList.Add(device);
+ }
+ }
+ }
+ break;
}
targetList.Clear();
--
Gitblit v1.8.0