From a4d29f9f72452ccae2f607e6ad31cad493822da4 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期三, 06 五月 2020 11:36:47 +0800
Subject: [PATCH] 2020-05-06-1
---
ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs | 175 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 111 insertions(+), 64 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs
index 3ea1cc6..14d3e84 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs
@@ -11,19 +11,8 @@
/// <summary>
/// 鎸夐敭绠$悊
/// </summary>
- public class BindTargetsPage : BindCommonLayout, ZigBee.Common.IStatus
+ public class BindTargetsPage : BindCommonLayout
{
- /// <summary>
- /// 鎸夐敭妯″紡鎺ユ敹
- /// </summary>
- /// <param name="common">Common.</param>
- public void Changed(CommonDevice common)
- {
- Shared.Application.RunOnMainThread(() =>
- {
- });
- }
-
/// 鏋勯�犲嚱鏁�
/// </summary>
/// <param name="doorLock"></param>
@@ -32,24 +21,65 @@
this.currentKey = key;
}
- #region 鈼� 鍙橀噺鐢虫槑__________________________
- ZigBee.Device.Panel currentKey;//褰撳墠鎸夐敭瀵硅薄
- VerticalFrameRefreshControl midVerticalRefreshLayout;//鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew
- int currentClusterID = 0;//鎸夐敭褰撳墠绨嘔D
+ #region 鍙橀噺鐢虫槑
+ /// <summary>
+ /// 褰撳墠鎸夐敭瀵硅薄
+ /// </summary>
+ ZigBee.Device.Panel currentKey;
+ /// <summary>
+ /// 鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew
+ /// </summary>
+ VerticalFrameRefreshControl midVerticalRefreshLayout;
+ /// <summary>
+ /// 鎸夐敭褰撳墠绨嘔D
+ /// </summary>
+ int currentClusterID = 0;
+ /// <summary>
+ /// 绌烘暟鎹椂鐨勫浘鐗�
+ /// </summary>
Button entryStatusPic;
+ /// <summary>
+ /// 绌烘暟鎹殑鎻愮ず
+ /// </summary>
Button btnPicTip;
- Action<List<BindListResponseObj>> action;//鎸夐敭缁戝畾琛ㄩ�氱煡
- Action<List<BindListResponseObj>> devicBindAction;//璁惧琚粦瀹氶�氱煡
- private System.Collections.Generic.List<CommonDevice> localDeviceList = new System.Collections.Generic.List<CommonDevice>();//鏈湴璁惧鍒楄〃
- private System.Collections.Generic.List<SceneUI> scList = new System.Collections.Generic.List<SceneUI> { };//鏈湴鍦烘櫙鍒楄〃
- FrameLayout blankFrameLayout;//绌烘暟鎹樉绀哄竷灞�
- List<int> typeModeList;//鍔ㄦ�佽幏鍙栨寜閿敮鎸佺殑妯″紡澶х被鍨�
- public List<ScenesListInfo> gwScenesList = new List<ScenesListInfo>();//缃戝叧涓殑鍦烘櫙鍒楄〃
+ /// <summary>
+ /// 鎸夐敭缁戝畾琛ㄩ�氱煡
+ /// </summary>
+ Action<List<BindListResponseObj>> action;
+ /// <summary>
+ /// 璁惧琚粦瀹氶�氱煡
+ /// </summary>
+ Action<List<BindListResponseObj>> devicBindAction;
+ /// <summary>
+ /// 鏈湴璁惧鍒楄〃
+ /// </summary>
+ private System.Collections.Generic.List<CommonDevice> localDeviceList = new System.Collections.Generic.List<CommonDevice>();
+ /// <summary>
+ /// 鏈湴鍦烘櫙鍒楄〃
+ /// </summary>
+ private System.Collections.Generic.List<SceneUI> scList = new System.Collections.Generic.List<SceneUI> { };
+ /// <summary>
+ /// 绌烘暟鎹樉绀哄竷灞�
+ /// </summary>
+ FrameLayout blankFrameLayout;
+ /// <summary>
+ /// 鍔ㄦ�佽幏鍙栨寜閿敮鎸佺殑妯″紡澶х被鍨�
+ /// </summary>
+ List<int> typeModeList;
+ /// <summary>
+ /// 缃戝叧涓殑鍦烘櫙鍒楄〃
+ /// </summary>
+ public List<ScenesListInfo> gwScenesList = new List<ScenesListInfo>();
+ /// <summary>
+ /// 鏄惁鏀寔璇诲彇
+ /// </summary>
bool IsRead = false;
#endregion
- //鍒濆鍖栨寜閿暟鎹�
+ /// <summary>
+ /// 鍒濆鍖栨寜閿暟鎹�
+ /// </summary>
void InitListInfo()
{
System.Threading.Tasks.Task.Run(async () =>
@@ -64,13 +94,17 @@
localDeviceList.Add(dev);
}
//鑾峰彇鏈湴鍦烘櫙鍒楄〃
- scList = Shared.Common.Room.AllRoomSceneUIList;
+ scList = HdlSceneLogic.Current.GetAllRoomSceneList();
//鑾峰彇缃戝叧鍦烘櫙琛�
- var gwSceneObj = await currentKey.GetSceneInfoAsync();
- if (gwSceneObj != null && gwSceneObj.getSceneInfo != null)
+ if (gwScenesList.Count == 0)
{
- gwScenesList = gwSceneObj.getSceneInfo.ScenesList;
+ var gwSceneObj = await currentKey.GetSceneInfoAsync();
+ if (gwSceneObj != null && gwSceneObj.getSceneInfo != null)
+ {
+ gwScenesList = gwSceneObj.getSceneInfo.ScenesList;
+ }
}
+
//鍔ㄦ�佽幏鍙栨寜閿敮鎸佺殑澶х被
typeModeList = await GetTypeMode();
#region 璇诲彇闈㈡澘褰撳墠妯″紡
@@ -146,6 +180,7 @@
Application.RunOnMainThread(() =>
{
CommonPage.Loading.Hide();
+ midVerticalRefreshLayout.EndHeaderRefreshing();
new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance);
return;
});
@@ -176,6 +211,7 @@
{
RefreshList();
CommonPage.Loading.Hide();
+ midVerticalRefreshLayout.EndHeaderRefreshing();
});
}
else
@@ -183,6 +219,7 @@
Application.RunOnMainThread(() =>
{
CommonPage.Loading.Hide();
+ midVerticalRefreshLayout.EndHeaderRefreshing();
new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(Common.CommonPage.Instance);
});
return;
@@ -209,7 +246,7 @@
var btnAddFrameLayout = new FrameLayout()
{
- X = Application.GetRealWidth(888),
+ X = Application.GetRealWidth(772 - 58),
Width = Application.GetRealWidth(192),
};
this.titleFrameLayout.AddChidren(btnAddFrameLayout);
@@ -217,8 +254,8 @@
var btnBindAdd = new Button
{
X = Application.GetRealWidth(62),
- Height = Application.GetRealHeight(72),
- Width = Application.GetRealWidth(72),
+ Height = Application.GetMinReal(72),
+ Width = Application.GetMinReal(72),
UnSelectedImagePath = "BindPic/BindAdd.png",
};
btnAddFrameLayout.AddChidren(btnBindAdd);
@@ -315,6 +352,7 @@
InitListInfo();
}
+
/// <summary>
/// 涓儴甯冨眬
/// </summary>
@@ -322,6 +360,7 @@
{
midVerticalRefreshLayout = new VerticalFrameRefreshControl(29)
{
+ Height = this.midFrameLayout.Height + 1,
};
this.midFrameLayout.AddChidren(midVerticalRefreshLayout);
midVerticalRefreshLayout.BeginHeaderRefreshingAction += () =>
@@ -329,7 +368,6 @@
midVerticalRefreshLayout.BeginHeaderRefreshing();
IsRead = true;
InitListInfo();
- midVerticalRefreshLayout.EndHeaderRefreshing();
};
BlankPicUI();
@@ -412,6 +450,7 @@
midVerticalRefreshLayout.AddChidrenRow(rowLayout);
rowLayout.frameTable.UseClickStatu = false;
var devicePic = rowLayout.frameTable.AddLeftIcon();
+ devicePic.Y = Application.GetRealHeight(49);
devicePic.UnSelectedImagePath = "DoorLock/DoorLockUserPic.png";
#region 缁戝畾鏁版嵁澶勭悊
@@ -431,7 +470,7 @@
}
if (isExistScene)
{
- curSceneUI = Room.CurrentRoom.GetSceneUIBySceneId(bindDevice.BindScenesId);
+ curSceneUI = HdlSceneLogic.Current.GetSceneUIBySceneId(bindDevice.BindScenesId);
devicePic.UnSelectedImagePath = "Scene/SceneIcon.png";
if (curSceneUI == null)
{
@@ -447,9 +486,14 @@
else
{
btnBindNameText = curSceneUI.Name;
- if (curSceneUI.GetZone() != null)
+ string myName = HdlSceneLogic.Current.GetZoneById(curSceneUI.Id);
+ if (myName != null)
{
- btnFloorRoomNameText = curSceneUI.GetZone();
+ btnFloorRoomNameText = myName;
+ }
+ else
+ {
+ btnFloorRoomNameText = Language.StringByID(R.MyInternationalizationString.Undistributed);
}
}
}
@@ -462,7 +506,7 @@
if (tempDev != null)
{
//鑾峰彇璁惧鎵�灞炴埧闂�
- var tempDevRoom = Common.Room.CurrentRoom.GetRoomByDevice(tempDev);
+ var tempDevRoom = HdlRoomLogic.Current.GetRoomByDevice(tempDev);
if (tempDevRoom != null)
{
@@ -473,20 +517,31 @@
var tempDevFloorName = Common.Config.Instance.Home.GetFloorNameById(tempDevFloorId);
if (string.IsNullOrEmpty(tempDevFloorName))
{
- btnFloorRoomNameText = tempDevRoomName;
+ if (string.IsNullOrEmpty(tempDevRoomName))
+ {
+ btnFloorRoomNameText = Language.StringByID(R.MyInternationalizationString.Undistributed);
+ }
+ else
+ {
+ btnFloorRoomNameText = tempDevRoomName;
+ }
}
else
{
- btnFloorRoomNameText = tempDevFloorName + "," + tempDevRoomName;
+ if (string.IsNullOrEmpty(tempDevRoomName))
+ {
+ btnFloorRoomNameText = Language.StringByID(R.MyInternationalizationString.Undistributed);
+ }
+ else
+ {
+ btnFloorRoomNameText = tempDevFloorName + "," + tempDevRoomName;
+ }
}
- }
- var deviceUi = Common.LocalDevice.Current.GetDeviceUI(tempDev);
- if (deviceUi != null)
- {
- devicePic.UnSelectedImagePath = deviceUi.IconPath;
- devicePic.Width = Application.GetRealWidth(110);
- devicePic.Text = "";
- }
+ }
+
+ devicePic.UnSelectedImagePath = tempDev.IconPath;
+ devicePic.Text = "";
+
if (string.IsNullOrEmpty(tempDev.DeviceEpointName))
{
btnBindNameText = tempDev.DeviceEpoint + Language.StringByID(R.MyInternationalizationString.uDeviceCircuit);
@@ -499,7 +554,6 @@
else
{
btnBindNameText = bindDevice.BindMacAddr + "_" + bindDevice.BindEpoint;
- devicePic.Width = Application.GetMinRealAverage(200);
devicePic.TextAlignment = TextAlignment.CenterLeft;
devicePic.TextColor = UserCenterColor.Current.Gray;
devicePic.Text = Language.StringByID(R.MyInternationalizationString.uOffLine);
@@ -605,10 +659,10 @@
else
{
var temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Default);
- if (temp.setWritableValueResponData?.Status != 0)
+ if (temp != null && temp.setWritableValueResponData?.Status != 0)
{
var temp1 = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Default);
- if (temp1.setWritableValueResponData?.Status != 0)
+ if (temp1 != null && temp1.setWritableValueResponData?.Status != 0)
{
new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.ChangeBindMode), Direction = AMPopTipDirection.Up, CloseTime = 2 }.Show(btnDel);
}
@@ -664,8 +718,8 @@
var sidelipFrameLayout = new FrameLayout()
{
- Height = Application.GetRealHeight(628),
- Width = Application.GetRealWidth(415),
+ Height = Application.GetMinReal(628),
+ Width = Application.GetMinReal(415),
Y = Application.GetRealHeight(115 + 45),
X = Application.GetRealWidth(605),
BackgroundImagePath = "DoorLock/SideslipPic.png",
@@ -704,8 +758,10 @@
}
}
+ int count = 0;
foreach (var value in typeModeList)
{
+ count++;
#region rowView
var rowView = new FrameLayout()
{
@@ -1062,7 +1118,10 @@
}
}
- //鑾峰彇鎸夐敭鏀寔鐨勫ぇ绫�
+ /// <summary>
+ /// 鑾峰彇鎸夐敭鏀寔鐨勫ぇ绫�
+ /// </summary>
+ /// <returns></returns>
private async System.Threading.Tasks.Task<List<int>> GetTypeMode()
{
if (typeModeList != null)
@@ -1240,18 +1299,6 @@
localDeviceList.Clear();
scList.Clear();
base.RemoveFromParent();
- }
-
- public void DeviceInfoChange(CommonDevice common, string typeTag)
- {
- }
-
- public void ChangedILogicStatus(ZigBee.Device.Logic logic)
- {
- }
-
- public void ChangedISceneStatus(Scene scene)
- {
}
}
}
--
Gitblit v1.8.0